ix-understand
Build a mental model of a system, subsystem, or the whole repo. Graph-first, no code reads unless necessary.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Build a mental model of a system, subsystem, or the whole repo. Graph-first, no code reads unless necessary.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Route to the right Ix skill or command for your task
Analyze system design — structure, coupling, code smells, and high-risk hotspots. Purely graph-based, no code reads.
Root cause analysis — trace execution path to a failure, narrow candidates, read minimal source only at suspected failure points.
Generate narrative-first, importance-weighted documentation for a repo, system, or subsystem with a selective reference layer. Use --full for deeper module/class/method coverage.
Change risk analysis — blast radius, affected systems, and what to test. Depth scales with risk level; low-risk targets stop early.
Deep dive into a symbol, feature, or bug. Graph-first, minimal code reads, early stopping when sufficient evidence found.
| name | ix-understand |
| description | Build a mental model of a system, subsystem, or the whole repo. Graph-first, no code reads unless necessary. |
Build an accurate mental model of the target's structure, purpose, and key components. Stop as soon as you can answer: what does this do, what are its key parts, and where should someone explore next?
If the Ix runtime is unavailable, ix_status will report this; proceed with best-effort analysis.
For most cases, call ix_query once and use the preview_markdown result as the primary answer:
ix_query({ mode: "understand", targets: [$ARGUMENTS], depth: "medium" })
Supplement with specific tools below if the response needs more detail.
Call in parallel:
ix_subsystems() — architectural regions, file counts, cohesionix_rank({ by: "dependents", kind: "class", top: 10 }) — most central classesix_rank({ by: "callers", kind: "function", top: 10 }) — most called functionsIf $ARGUMENTS is non-empty, also call:
ix_locate({ symbol: $ARGUMENTS }) — resolve the target in the graphExtract: region names, file counts, cohesion scores; top 3-5 structurally central components.
Stop here if: $ARGUMENTS is empty and rank + subsystems give a clear picture.
Pick the 2-4 most central or unclear components from Phase 1. Call in parallel:
ix_overview({ target: <component> }) for eachDo NOT call ix_explain yet — ix_overview is cheaper and sufficient for most components.
Stop here if: you can describe what each component does and how they relate.
For at most 2 components still unclear after Phase 2:
ix_explain({ symbol: <component> })Hard limits: No source code reads. No ix_map. No ix_trace. This skill never reads source code.
# [Target] — System Overview
## What it does
[One paragraph. Purpose, primary job, who uses it.]
## Key Components
- **X** (<kind>) — [role in one line, evidence: rank position / cohesion score]
- **Y** (<kind>) — [role in one line]
[3-5 max. Omit if fully explained by parent.]
## Structure
[Subsystem breakdown: name -> file count -> cohesion score -> what it owns]
## Where to explore next
- `ix-investigate <X>` — understand the most central component
- `ix-architecture` — analyze coupling and design health
- `ix-debug <X>` — if investigating a suspected bug
Evidence labels: Mark every claim as [graph] (direct tool data) or [inferred] (structural reasoning). Never state facts without one of these labels.