Live demo · an assistant on your own data

Paste a website.
Get an assistant that answers from it, with receipts.

Docent reads the site, builds a search index, and answers visitors' questions with the exact passage each answer came from. Every sentence is checked against the source. When the answer isn't on the site, it says so instead of guessing.

  • Cites the exact passage
  • Checks every sentence
  • Says when it doesn't know
  • Embeds with one line

Public sites only · up to 20 pages · robots.txt respected · deleted after 7 days

Or start with a site Docent has already read

How it worksfour steps · usually under a minute

From a web address to an assistant that can show its work.

  1. 01

    Read

    Docent fetches up to 20 pages of the site, same host only, after reading robots.txt. Each page becomes clean text; menus, footers and scripts are dropped.

  2. 02

    Index

    The text is cut into passages of about a paragraph, each carrying its page title and heading. Every passage is embedded with a multilingual model into a vector index, and indexed for keyword search as well.

  3. 03

    Retrieve

    A question runs both searches. Vectors find paraphrases; keywords find exact names, prices and codes. A cross-encoder reranks the union and keeps the five passages that actually answer the question.

  4. 04

    Answer and check

    The model writes two to five sentences from those passages only, citing each fact. A second pass then checks every sentence against the sources. Weak evidence means an honest “not on this site” instead of a guess.

Trustwhat stops it from making things up

Guardrails you can see, not a promise in the prompt.

  • Cites the passage, not the page

    Each fact links to the exact text it came from. A visitor can verify an answer in one click, and so can you.

  • Every sentence is checked

    A second model pass marks any sentence the sources do not support. Answers with an unsupported sentence are shown with the warning and are never cached.

  • Says when it doesn't know

    If the best passage scores below a threshold, Docent abstains and points to the closest page instead of inventing an answer.

  • Reads politely

    robots.txt honoured, one host only, 20 pages, 700 KB per page, ten-second timeouts, private networks refused.

  • Budgeted

    Per-visitor and daily limits keep this demo inside a free tier. Repeated questions are served from a cache without calling the model.

  • Temporary

    Sites read here are deleted after seven days, vectors included. Nothing is used for training anything.

Builtthe shape of the system

Small, boring pieces, wired carefully.

Website≤ 20 pages ReaderHTML → passages Vector indexbge-m3 · Vectorize Keyword indexFTS5 · D1 Rerankercross-encoder Answercited · checked

Stack

Cloudflare Workers · Workers AI (bge-m3 embeddings, bge-reranker, gpt-oss-20b) · Vectorize · D1 with FTS5 · Pages · hand-written JS, no frameworks

Measured

per answer
about 22 neurons of Workers AI, roughly two cents per hundred answers at list price
first word
around three seconds, six with the grounding check
a small site
read and indexed in ten to twenty seconds

For a client, I would add

  • PDFs, Notion, helpdesk articles and Google Drive as sources, re-read on a schedule
  • An evaluation set of real customer questions, scored on every change
  • A report of questions the content could not answer: the content gap list
  • Hand-off to a human, and the same assistant in Slack, WhatsApp or email
  • Private sources behind sign-in, with per-user access rules
FAQthe honest version
Can it read my site?

Public HTML sites, yes. Sites that render everything with JavaScript, or that block automated readers, may come back empty; in that case paste the text instead. Docent reads one host, up to 20 pages, and follows robots.txt.

Does it hallucinate?

It is constrained to the passages it retrieved, cites each fact, and a second pass flags any sentence the sources do not support. When the evidence is weak it abstains. It is not perfect: the checker is itself a model. The point is that every claim is traceable and wrong ones are visible.

What about PDFs, docs, or a helpdesk?

The demo takes websites and pasted text. In a client build, PDFs, Notion pages, helpdesk articles, Google Drive and databases are sources too, re-read on a schedule so answers stay current.

What does it cost to run?

This demo runs on Cloudflare's free tier. Measured cost is about 22 neurons per answer, roughly two cents per hundred answers at list price, plus a few cents to read a site. A production build is dominated by engineering time, not model cost.

Can I put it on my site?

Yes: one script tag gives your visitors the same assistant as a chat bubble. Indexes built in this demo expire after seven days; a client build keeps them current.

Want this on your site, your docs, or your helpdesk?

I build assistants like this one, and the integrations around them, for companies that need them to work on Monday morning. A short scoping call first; I would rather tell you it is simpler than you thought.