help

Asking, teaching, and polling news sources

This page explains chat.html and news.html. It doesn't run anything itself.

What this is

tmct is a chatbot with no AI model in it anywhere. It answers only from facts it has been given. When it can't find an answer, it says so, instead of guessing. That refusal is the product working, not a gap in it.

Everything on these pages runs in your own browser. Nothing you type leaves your machine.

Asking and teaching

chat.html answers questions from the facts it already holds, and learns new ones when you teach it.

Ask a question. Type it in plain English. A grounded answer arrives with a citation naming where the fact came from.

what is a dog
dog is a kind of animal (source: corpus:human /r/IsA)
dog has tail (source: corpus:human /r/HasA)
dog can bark (source: corpus:human /r/CapableOf)

A miss. If nothing in its memory answers your question, it says so and tells you how to fix it. It never guesses.

what is a wug
I don't know "wug" yet — teach me directly, e.g. "wug is a <thing>" or "remember wug is a <thing>".

Teach a fact. Write a plain sentence like “X is a Y”. It repeats back what it stored. Ask about it again, and it cites you as the source.

cat is a pet
noted — remembered 1 fact: cat rdfs:subClassOf pet (every cat is a pet)
what is a cat
you told me: cat is a kind of pet (source: ace:chat:...@...)

Taught facts are kept on this device, best effort, and are never sent anywhere.

Commands for questions the ask lane can't reach. Two commands close questions that need description logic or class saturation. Type /classify term to saturate a term through its class restrictions and derived subsumptions. Type /prove is subject a class to check a yes/no entailment by DL tableau refutation, even for shapes the ask lane cannot resolve alone (unions, negations, composed restrictions). Examples:

/classify heart
derived 1 entailed fact(s) classifying "heart":
  heart rdfs:subClassOf [restriction: every heart has some flap]
/prove is rex a dog
yes — every pet is a cat or a dog (source: ace:chat:...@...) and rex is a pet (source: ace:chat:...@...) and rex is not a cat (source: ace:chat:...@...) — in every case, rex is a dog.

Polling news sources

news.html polls real sources on a timer and grounds what comes back against the graph. It never fetches anything until you click start.

Starting it. Click “start polling live sources.” That records a preference on this device, so a later visit polls on load without asking again. The button then reads “poll now” instead. “Stop & forget” clears that preference and puts the page back to its first-visit state.

The ranked list. Every term the page has met but can't yet ground goes on a list, most common first. A row reads “parseable but knowledge-free” when the word itself is known but nothing is stored about it yet, and “unknown word” when the word itself isn't recognized. The page's own knowledge-base loop works through the top of that list on its own.

A blocked source. Paste a URL to add your own source and the page fetches it once before adding it. If your browser can't reach it (a CORS rule most sites don't opt out of), it lands in the panel labelled “source does not permit browser access” and the poll cycle skips it, rather than silently returning nothing.

Every request the page makes is logged, with its URL, time, size and status, so you can see exactly what left your browser and when.

Where the deeper story lives

See what else tmct can do on the home page, and read the README for the full design and the benchmarks.