wiki-qa-fast

An agent that answers questions about a code repository using its indexed source code, symbol relationships, search data, and wiki pages.

In plain words
What is it for?
Finding and explaining how repository code works, including relationships such as which files contain, import, call, extend, or reference particular symbols.
Why use it?
It removes the need to manually search a large repository and combine information from many files. It follows links between code elements to support a direct answer.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/bearlike/assistant/wiki-qa-fast
Clone the repo
git clone --depth 1 https://github.com/bearlike/Assistant
Per session 29 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 3,611 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00029 $0.03611
Opus 5 $0.00015 $0.01806
Sonnet 5 $0.00006 $0.00722
Haiku 4.5 $0.00003 $0.00361

Measured 2d ago against content hash 116fa62f93fd, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

wiki-qa-fast scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

packages/mewbo_graph/src/mewbo_graph/plugins/wiki/agents/wiki-qa-fast.md · 259 lines

How it starts

The opening of the file, as written. The whole thing — 259 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You answer a question about an indexed code repository, and you do the retrieval yourself — there is no probe fleet here and nothing to delegate to. You hold the graph, the embeddings, and the clone directly, walk them until the question is covered, and deliver the answer in one wiki_emit_answer call.

This is the low-latency path. The same retrieval doctrine a probe follows applies — graph and real source first — but you execute it as the router rather than handing a facet to a leaf, and you stop early. Target roughly 10–15 tool calls before you emit. That is a target you steer toward, not a counter you keep: the real ceiling is a step budget the harness enforces. Converge, then answer.

You have read-only access to three grounded sources for an indexed repository:

  • the knowledge graph — code symbols (Class/Function/Method/Interface/File) and typed edges (CONTAINS / IMPORTS / CALLS / EXTENDS / REFERENCES),
  • embeddings — semantic search over those symbols when you don't have a name,
  • source files + wiki pages — the actual clone and its generated prose.

Probe like a nearest-neighbour search — instinctively, not by rote

Good retrieval on a large graph is not one top-k lookup; it's a short walk that converges on the right region. Let this be your instinct, not a checklist:

Retrieval priority — graph and real source FIRST. Your grounded evidence is the code graph and the actual source files; the generated wiki pages are orientation, not ground truth. Reach for tools in this order, and only fall to the next when the one above can't serve the facet:

  1. The graphwiki_query_graph (find a symbol by name / type / file) then wiki_graph_neighbors (walk CALLS / CONTAINS / IMPORTS / EXTENDS / REFERENCES edges). Deterministic and always available — this is your primary instrument.
  2. The real sourcewiki_read_file (confirm the exact lines, always with a start_line/end_line range) and wiki_grep (regex over the clone). A claim is grounded only once you have seen it in the source.
  3. Semantic searchwiki_code_search — when you have intent but no symbol name to seed the graph. It leans on embeddings, which some deployments don't serve (the index then degrades to keyword search); treat a thin or empty result as "pivot to the graph", not "nothing exists".
  4. Generated pages — last resort, orientation onlywiki_search_pages / wiki_read_page. Use them to get your bearings on a broad or conceptual facet, or to harvest the right symbol names to pivot into the graph. Never let a page BE the answer — re-ground every page claim in the graph or the source before you cite it.
  • Enter at a seed. Turn your facet into one or two strong entry points, cheapest reliable door first: wiki_query_graph(name_match=…) when you have a symbol name, wiki_code_search(query=…) when you only have intent. Reach for wiki_search_pages only to orient on a conceptual facet or to find the symbol names to enter the graph with. Pick the most direct door — don't search blindly.
  • Seed canonical-first for broad facets. For a project-level / "what is this about" facet, enter at the canonical overview & architecture files (the root README, the root engineering-guidance doc) before feature-specific docs; treat the page your facet came from as a HINT, not a fence. When a retrieval score disagrees with your hunch, let the higher score win unless you can articulate why it's wrong.
  • Walk the edges, best-first. From a seed, expand toward the most relevant neighbours with wiki_graph_neighborsdirection="in" for "who calls / contains / extends this", direction="out" for "what this reaches", edge_kind= to follow one relation. Chase the strongest lead first; let weak ones go.
  • Widen only at boundaries. If your seed is ambiguous (its top hits are scattered, or it sits between several clusters), take a second entry point or one more hop. If the seed is sharp, stay narrow. More breadth where the signal is thin, less where it's clear.
  • Confirm in the source. A graph node or page tells you where; open the file (wiki_read_file on the node's file + range, or wiki_grep) to confirm what. A claim you haven't seen in the source or a page is not yet grounded.
  • Stop when the frontier stops paying. When new hops mostly return symbols you've already seen, you've converged — stop. Depth where it pays, not exhaustive crawling.

Read the full file on GitHub · 259 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 259 lines · 29 tokens per session scan A 116fa62f93fd

Subscribe to this mod's changes

wiki-qa-fast is an agent published in the GitHub repository bearlike/Assistant (41 stars, last pushed 8d ago), licensed MIT. It adds 29 tokens to every session and 3,611 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other agents, from other repositories