| get_answerA | Answer a how, where, or why question in one evidence-grounded call. High confidence may be used directly; medium and low lead with the
evidence to verify. ``candidate_files`` ranks files worth opening that
the citations do not name.
Args:
question: One question about one subject. Split "where is X and
when does Y run" into two calls; do not paste a whole
multi-part task.
scope: repository-relative path prefix.
repo: usually omitted.
include: ``["evidence"]`` expanded evidence; ``["diagnostics"]``
adds ``retrieval_quality``.
|
| get_change_riskA | Review a commit, base..head range, or uncommitted work. Leads with ``directive`` (verdict in ``status``) and ``health_delta``
(what this change newly made worse). ``risk_percentile`` and
``diff_shape`` measure diff size, not danger. ``impacted_tests`` names
the tests to run.
Args:
revspec: commit or ``base..head``. Omit for uncommitted work, or
``HEAD`` when the tree is clean.
per_commit: with a range, one compact row per commit (up to 30).
include: ``"findings"``, ``"diagnostics"``, ``"scales"``,
``"evidence"``, ``"tests"`` (why each runs).
finding_id: expand one ``health_delta`` finding.
extensions: file suffixes to count, e.g. ``[".py"]``.
exclude_patterns, include_paths: gitignore-style paths to omit, keep
(include_paths also takes one comma-separated string).
baseline: commits sampled for the percentile; 0 disables it.
repo: usually omitted.
|
| get_contextA | Triage card for files / modules / symbols — relationships, not source bytes. Returns summary, signatures with lines, hotspot, fix_history and
decision titles; either risk cue means get_risk. Batch targets in one
call. Whole file, body-elided and line-verified: include=["skeleton"]
in ONE call, or Read it; do not call get_symbol per signature. Rename:
include=["references"] is the whole edit set when ``complete``. Which
files in a directory lack tests: include=["files"] on it.
Args:
targets: paths, "path::Symbol", "component:<name>",
"change:<id>" (pr-123 or a sha), "package:<name>".
include: callers | callees | references | skeleton | skeleton+
| files | symbols (all, not top 15) | decisions | full_doc
| ownership | last_change | metrics | community | health
| doc_drift | changes | provenance | suspects.
compact: False adds structure, imports, docstrings.
symptom: issue text or stack trace to rank ``suspects`` on.
repo: usually omitted.
|
| get_dead_codeA | Unused exports, unreachable files, zombie packages — tiered by confidence. For a cleanup sweep, not a targeted fix.
Args:
kind: unreachable_file | unused_export | unused_internal | zombie_package.
min_confidence: default 0.4 (0.7 = cleanup-ready), or a tier name.
tier: "high" | "medium" | "low".
safe_only: deletion-ready findings only.
limit: max findings per tier (up to 25).
directory, owner: path-prefix or primary-owner filter.
group_by: "directory" | "owner".
include_internals: also scan private symbols.
include_zombie_packages, no_unreachable, no_unused_exports,
include_unverified: switch finding kinds on or off.
finding_id: one finding by its ``id``.
repo: usually omitted.
|
| get_healthA | Code-health scores and findings from stored analysis. No ``targets``: a dashboard led by ``fix_first``. Never recomputes:
commit, then run ``repowise update``. Every block and accepted value:
docs/agent/MCP_TOOLS.md.
Args:
targets: file paths or ``module:<name>``.
include: ``biomarkers``|``refactoring``|``trend``|``coverage``|
``accuracy``|``signals``|``churn_complexity``|``doc_drift``|
``semantics``|``recipe``|``what_if``, or a dimension.
only: keys to keep. ``biomarkers``/``accuracy``/``refactoring``
alias their block; ``performance``/``defect``/``maintainability``
do not.
limit: rows per ranked list (default 20, 0 for none); cursor: offset.
fix_id/finding_id/plan_id/opportunity_id: expand one item by ``id``.
refactoring_*/performance_*: queue filters.
scope: ``production`` drops non-production code.
counts: ``code_shape`` drops the git-derived half of the score.
repo: usually omitted.
|
| get_overviewA | Orientation for an unfamiliar repo: packages, entry points, riskiest files, top actions. Once per session; then use ``get_context`` or ``get_answer``. Compact by
default; other blocks ship on request, named in ``more``.
Args:
repo: alias, path or ID; ``"all"`` for cross-repo links.
include: ``content`` (full essay), ``outline``, ``tour``,
``decisions``, ``graph``, ``ownership``, ``components``,
``changes``, ``tools``, ``actions``, ``scope``.
|
| get_riskA | What history says about touching these files — bug fixes, churn, owners. Fuses git signals (``hotspot_score``/``owner_pct`` 0-1, trend, bus
factor) with graph reach. ``dependents`` and ``co_change_partners`` are
a floor and correlation, not proof of runtime breakage. Pass
``changed_files`` for PR mode: the response leads with ``directive``
(may_break, missing_cochanges, missing_tests, tests_to_run); read it
first. ``directive.reach`` is never a breakage probability. For a
commit or range use ``get_change_risk``.
Args:
targets: file paths; defaults to changed_files.
changed_files: PR-changed files for PR mode.
include: "graph", "churn", "owners", "scales" (units, calibration),
"changes"; with changed_files only: "tests" (typed test rows), "blast".
repo: usually omitted.
|
| get_symbolA | Follow-up read of one symbol whose id another response already gave you. **Not an entry point.** ``get_answer`` ships ``symbol_bodies``; for a
whole file ``get_context(include=["skeleton"])`` or a Read is one call.
Never walk a file symbol by symbol. Returns verified, line-numbered
source; a truncated result carries the ``continuation`` to pass back.
Args:
symbol_id: "path/to/file.py::Name", "path/to/file.py:140-180" for a
live range, or an omission ref. A bare file path is not an id.
depth: 1 (default) is this symbol alone; 2-3 also returns the bodies
it calls, transitively, in ``callee_bodies``.
context_lines: extra lines before/after (0-50).
query: regex/substring filter on an omission ref's lines.
id, reference: aliases for ``symbol_id``.
repo: usually omitted.
|
| get_whyA | Why this code is shaped this way — decision records + evidence commits. Call before a refactor or pattern divergence. Query: a question, a file
path, a question with ``targets``, or nothing (decision dashboard).
Falls back to git archaeology, never empty. ``authority: accepted``
means somebody signed the decision; ``answer_basis`` names the strongest
evidence lane, and only ``decision`` is a ruling.
Args:
query: question, file/module path, or omit for the dashboard.
targets: file paths to anchor the search.
id: decision or ``ev_...`` evidence id from any tool.
reference: structured evidence reference.
repo: usually omitted.
|
| search_codebaseA | Find code by concept, symbol, or path — hybrid codebase search. For a how/where/why question call get_answer. Use this to enumerate
matches, resolve an identifier to a symbol_id, or find files for
get_context. Identifier or literal queries return `lines` (path, line,
kind, text; definitions first) read from live files; when `complete` is
true they are every match, so no grep is needed. `candidates` lists
distinct files to Read, best first.
Args:
query: identifier, path, or natural language.
limit: max results (default 5).
mode: auto (by query shape) | symbol | path | concept | hybrid.
kind: implementation | test | config | doc.
symbol_kind: function | class | method | ...
page_type: file_page | module_page.
repo: alias, or "all" for workspace-wide.
pattern: alias for query.
|