name: ctx-kb-ask description: "Q&A grounded in the existing kb. Read-only on prose; refuses to web-jump; if the kb cannot answer, opens a Q-### row in outstanding-questions.md and reports the gap. Writes an ask closeout for the audit trail."
Answer a question using only what .context/kb/ already contains.
Cite by EV-###. Do not web-jump, do not invent prose, do not
modify topic pages. If the kb cannot answer, open a Q-### row
in .context/kb/outstanding-questions.md and report the gap.
This is the read side of the editorial pipeline. The write side
is /ctx-kb-ingest. Authority for prose synthesis lives there;
this skill is read-only on prose.
When to Use
- The user asks "does the kb say...", "according to evidence...",
"what do we know about
". - The user wants a citation-backed answer before deciding whether to ingest more material.
When NOT to Use
- The user wants new material extracted (
/ctx-kb-ingest). - The user wants the kb structurally audited
(
/ctx-kb-site-review). - The user wants external re-grounding (
/ctx-kb-ground). - The question is about
ctxitself (answer fromKB-RULES.mddirectly).
Input
A single question, supplied as the slash argument or inline. No flags, no sources, no URLs.
Refuse-on-Empty
If no question was supplied, return exactly:
no question provided; pass a question or describe it inline.
Stop. The CLI enforces this independently.
Pre-Write Gates
.context/missing → suggestctx initand stop..context/kb/missing → suggestctx init --upgradeand stop.- Kb scope undeclared → refuse with the scope message and stop.
Process
- Verify pre-write gates.
- Survey the kb in this order, stopping early when an answer
surfaces with adequate citation coverage:
index.mdfor scope, topic-page indexes and sub-pages for matching slugs,evidence-index.md,glossary.md,contradictions.md,outstanding-questions.md. - Decide answer vs gap:
- Answerable with citations: cite every load-bearing
claim by
EV-###. Name the topic page(s). Note the confidence floor of cited rows. - Partial answer: answer the covered part; open a
Q-###row for the gap. - Not answerable: open a
Q-###row; report the gap. Do not invent. Do not web-jump.
- Answerable with citations: cite every load-bearing
claim by
- If a gap exists, append a
Q-###row tooutstanding-questions.md. Do NOT mintEV-###rows; evidence authoring is/ctx-kb-ingest's authority. - Write the ask closeout under
.context/ingest/closeouts/<TS>-ask-closeout.mdwith required frontmatter (sha,branch,mode: ask,pass-mode: read-only,life-stage,generated-at) and body sections: Question, Answer (ornone (gap)), Citations (EV-###+ topic-page paths), Gaps (Q-###opened with one-line rationale), Next pass hint.
Anti-Patterns
- Web-jumping when the kb cannot answer. The contract is read-only on prose AND web-quiet.
- Inventing citations or claims.
- Modifying a topic page to extend an answer mid-pass.
- Minting
EV-###rows from this skill. - Skipping the
Q-###row when the kb cannot answer. - Skipping the closeout once pre-write gates pass.
Output Contract
For pre-write refusals, return only the refusal text and stop.
For passes that clear pre-write gates, end with:
- Question: verbatim or faithful paraphrase.
- Answer: concise; cites every load-bearing claim by
EV-###. - Confidence floor: lowest band among cited rows.
- Gaps:
Q-### opened, ornone. - Closeout: filename.
- Next-recommended-action: explicit invocation if a gap
was opened (
/ctx-kb-groundor/ctx-kb-ingest <sources>), ornone.