Every page can now answer questions about itself.
Ask this page is live. A reader clicks a small pill at the foot of a Stacktree page, types a question, and the answer streams in the page's own type, drawn from the page only, with the passage it came from lit up in amber. What they asked comes back to you. Here is where the idea came from, and the three decisions that stop it being a chatbot.
No card · 3 pages free · about a minute
What is Ask this page?
An opt-in question box on a Stacktree page. The answer comes from the page and nothing else, cites the passages it used, and highlights them on the page so the reader can check it. If the page does not cover the question, it says so. Every question is listed for the owner, with the ones the page could not answer first. On every plan, switched on per page, and available to agents as a WebMCP tool.
The clip
On 17 September a designer called Gustavo posted eight seconds of Foglamp's documentation with a two-word caption: "infinite faq". The FAQ has five questions in an accordion. The sixth row says "Ask anything else". Click it and the row becomes a text field, in the same list, same type, same hairline underneath. Type a question and one status line appears, "Reading the docs", then the answer streams in below with links to the docs. No chat panel, no avatar, no bubbles. The whole feature costs the page one extra row.
It had 673,000 views by the time we watched it the next morning, and the reaction was the same one we had: of course. A page should be able to take the question the author did not think of.
We build pages people send to other people: proposals, reports, dashboards, the deliverable that leaves the room. The reader of one of those has exactly the question the FAQ row was made for, and usually nobody to ask. We shipped our version the same day.
What we built
Turn on Let them ask the page and a small pill appears at the foot of the page, in the page's own typeface, reading "Ask this page". It opens into a field. The reader types "what happens if we want changes after launch?" and presses Enter. A caption says "Reading the page". A card rises out of the field and the answer arrives a phrase at a time: defects within 30 days are fixed for free, new features are quoted at the day rate. On the page, the two sentences that say so light up in amber, and the first scrolls into view. An "on this page" chip steps through them. Escape puts everything back.
That is the whole interaction. One question, one answer, from this page, pointing at where on the page it came from.
Three decisions
Foglamp's row is the right shape. It also has two gaps, and a document you send to a client has a third constraint, so we made three decisions the other way from a chat widget.
The page is the whole world. The model is handed the page as its only document and told to use nothing else. Not your other pages, not the web, not a knowledge base. A proposal answers as the proposal. It cannot be talked into a discount the proposal does not offer, because it has never seen anything but the proposal.
Silence is an answer. Ask a page who the company's CEO is when the page never says, and the reply is "That isn't on this page.", followed at most by the nearest thing it does cover. We tested that sentence before we tested anything else, because a document that invents an answer is worse than one that cannot be asked.
Every answer points. The model returns a citation for each sentence it relies on. The page finds that passage in its own text and highlights it. The highlight is the reader's audit trail, and it turns the box into a faster way to read the page rather than a way to avoid reading it. This is the part Foglamp's row does not do, and the part we would keep if we had to drop everything else.
What comes back to you
Every question a reader asks lands in the page's What came back section, beside reactions and notes. The ones the page could not answer are listed first. If three readers ask what it costs after year one and the page never says, you have the brief for the next version, in the reader's own words. The answers given are kept as well, so you can check what the page told people.
This is the reason we built it as a Stacktree feature rather than as a script anyone could paste onto any page. The questions are the signal, and the signal belongs next to the other things a page sends back.
The Markdown twin
The other thing that shipped today looks unrelated and is not. Every Stacktree page is now readable as Markdown at its own address: send Accept: text/markdown to the page URL, or fetch it with /_page.md on the end, and you get the page with headings, lists, tables and links intact and the design stripped. The HTML says so in a Link header and a <link rel="alternate">. Passcodes and client-space gates apply exactly as they do to the HTML.
That conversion is what Ask this page reads. It is also what the reader's agent reads. Increasingly the person you sent a link to has an assistant reading with them, and that assistant should get a document, not markup, from the same private URL. On the page itself, a browsing agent finds a WebMCP tool, stacktree_ask_page, that returns the same grounded answer with its sources. A link you send is now a page for the person, a document for their agent, and something both of them can ask.
What we left out
A conversation. There is no thread and no memory between questions; each one starts from the page. A persona: the box has no name and no avatar, and the answer has no preamble. Branding: the pill uses the page's own font and adapts to its background, so it reads as part of the page. And any answer from anywhere but the page. We may add a way for the owner to pin an answer to a question the page keeps getting, which would be the FAQ row growing back the other way. We will not add a way for the page to know things the page does not say.
Frequent questions
What shipped? +
Where did the idea come from? +
Why not just add a chatbot? +
How do I turn it on? +
What does it cost? +
What is the Markdown twin for? +
Related guides
- Ask this page The feature page: how it works, what it refuses to do, and how to turn it on.
- See how your shared pages get read Reactions, notes, opens and the attention heatmap.
- The client feedback loop When a question is really a change request.
- Docs The /_ask stream, the Markdown negotiation, and the owner route that lists questions.
Sources and further reading
- Gustavo, "infinite faq" ↗ The eight-second clip of Foglamp's FAQ row that prompted this, 17 September 2026.
- Citations (Claude API docs) ↗ The mechanism behind the highlights: the model returns the exact passage each sentence relies on.
- Stacktree docs ↗ Accept: text/markdown, the /_page.md and /_ask routes, and GET /sites/:id/questions.
A page that can take the question you did not think of.
Off by default, one switch per page, on every plan.
Sign up free →