# Kb Query

> Answer a question from the KB with citations, optionally filing the answer as a new page. Use when the user asks a physics question, wants to query the knowledge base, or asks about topics covered in the KB (theories, concepts, people, experiments, open questions). WHEN NOT: Ingesting new sources (use kb:ingest), fetching articles (use kb:fetch), or health-checking the KB (use kb:lint).

- Skill: `thibautbaissac/kb-query` (Agent Skill)
- Install (CLI): `npx skillmds@latest add thibautbaissac/kb-query`
- Raw SKILL.md: https://api.skillmd.com/api/skills/thibautbaissac/kb-query/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: thibautbaissac (https://skillmd.com/u/thibautbaissac)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/thibautbaissac/kb-query

---


Answer a question against the knowledge base. The question is: $ARGUMENTS

Follow these steps exactly in order.

## Step 1: Navigate the KB

- Read `kb/index.md` (master hub) to identify which sections are relevant to the question.
- Read the relevant section index(es) (e.g., `kb/index-concepts.md`, `kb/index-theories.md`) to find specific pages.
- When the question targets a specific domain, use `tags` in page frontmatter to narrow your search (e.g., for a cosmology question, prioritize pages tagged `cosmology`).
- Read the relevant pages. If they reference other pages that seem relevant, read those too.
- Do NOT read raw sources unless the compiled pages are insufficient.

## Step 2: Synthesize an answer

- Answer the question using information from the compiled wiki pages.
- Cite specific pages for every claim: `[Page Title](kb/path/to/page.md)`.
- **Weight claims by evidence tier**: Prefer `primary` over `secondary` over `community`. If the only support for a claim comes from `community`-tier pages, note that explicitly (e.g., "per community discussion (unverified)...").
- If the KB doesn't have enough information to answer, say so explicitly and list what's missing.
- If pages contradict each other, flag the contradiction rather than picking a side.

## Step 3: File the answer (if substantial)

If the answer is substantial, reusable, and not already covered by an existing page:

- Create a new page in the most appropriate location (`kb/theories/`, `kb/concepts/`, `kb/people/`, `kb/experiments/`, or `kb/open-questions/`).
- Use standard page format from kb/CLAUDE.md.
- Set `type: summary` or `type: concept` as appropriate.
- Add relevant `tags` from the controlled vocabulary in `kb/CLAUDE.md`. Use 1-4 tags per page.
- Link to the pages that informed the answer in the Sources section.
- Update the relevant section index (`kb/index-theories.md`, `kb/index-concepts.md`, etc.) and the page counts in `kb/index.md`.
- Prepend to `kb/log.md`:

```
## [YYYY-MM-DD] query | <Short question summary>
Question: <the question>
Answer filed: <path to new page, or "not filed — too narrow/already covered">
Pages consulted: <list of pages read>
```

If the answer is narrow or already covered, still log it but skip creating a page.

