The opening move on any new codebase. One call returns a structured architecture summary, the top modules, the natural entry points, and repo-wide git health.
It is compact on purpose. The outline, the onboarding walks, the
ownership map and the code communities are not in a default
response, and they are not computed unless you ask: each is gated
behind an include value. The response's more field names them, so
an agent that wants one can see what to ask for.
When to call
- First, before the agent reads any source.
- Workspace orientation: pass
repo="all"to get cross-repo topology and contract links. - Onboarding a person:
include=["tour", "outline"]for the page-by-page walk and the wiki tree behind it.
Skip it on later calls in the same session. The map does not change mid-session.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
repo | string | default repo | Repository alias, path, or ID. Omit for the default repo. Pass "all" for a workspace-level overview. |
include | string[] | — | Opt-in blocks, any combination of "content", "outline", "tour", "decisions", "graph", "ownership". Anything not named here is not computed. |
Returns by default
| Field | Description |
|---|---|
title | Repo name |
content_md | The overview essay trimmed to its summary section. content_hint accompanies it when trimmed, pointing at include=["content"] for the full walkthrough |
code_health | The repo's rolled-up health scores |
key_modules | Up to 8 module pages, each with name, path, and section. The prose lives on get_context(path); section indexes into the outline |
entry_points | Up to 15 file paths for the natural entry points (test fixtures excluded) |
git_health | files_git_attributed, hotspot_count, avg_bus_factor, files_with_bus_factor_1, churn_trend, top_churn_modules |
architecture | Layer names with file counts, plus tour_available and tour_step_count. Present when the knowledge graph has layers |
more | One sentence naming every include block and what it adds |
tool_surface | Which tools this server advertises, with composition recipes |
workspace | (workspace mode only) root, default repo hint, cross-repo topology, contract links |
Opt-in blocks
Named in include or absent. Absent means not built, not withheld.
include value | Adds |
|---|---|
"content" | The full overview essay in content_md instead of its summary section |
"outline" | outline, the stored wiki page tree two rungs deep, plus outline_hint on how to read section and descendants |
"tour" | guided_tour and reading_order, the onboarding walks, each with its own hint field |
"decisions" | key_decisions, the governing decision records. get_why is the richer route |
"graph" | community_summary, the top 10 code-community clusters by size |
"ownership" | knowledge_map, carrying top_owners |
guided_tour is the topology-driven walk derived from the import
graph: entry points first, then inward, infrastructure last. It is
persisted on the overview page at generation time, so asking for it
costs a read rather than a traversal.
Example
get_overview() # default repo, compact
get_overview(include=["content", "outline"])
get_overview(include=["tour"]) # onboarding walk
get_overview(repo="frontend") # one repo in a workspace
get_overview(repo="all") # workspace-level viewThings worth knowing
- The response budget moves when you ask for extras. A default call
is fitted to 24,000 characters; a call with a non-empty
includegets 32,000. Reductions carry their counts in_meta, and an include-gated block that you did not ask for is a projection rather than an omission. - Churn trend is computed from a 30-day vs 60-day commit-rate
ratio: above 1.5x is
"increasing", below 0.5x is"decreasing", otherwise"stable". top_ownersis capped at the top 3 contributors by files owned, and emits a display name only, never a contributor email. It answers "who do I ask", not "who owns this file"; for that useget_riskorget_context(include=["ownership"]).- Caps are recoverable. Module pages beyond 8 and entry points
beyond 15 go to the omission store with a
[repowise#<ref>]marker, not into the void. - In workspace mode,
repo="all"returns total repos, files, and symbols plus a per-repo dependency graph and contract links between services. It carries no single-repo detail.
If the agent calls get_overview and immediately follows up with
Grep or Read, your MCP server probably isn't connected. Check
.mcp.json and run repowise doctor.