ix-investigate
Deep dive into a symbol, feature, or bug. Graph-first, minimal code reads, early stopping when sufficient evidence found.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Deep dive into a symbol, feature, or bug. Graph-first, minimal code reads, early stopping when sufficient evidence found.
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.
Generate a risk-ordered implementation plan for a set of targets. Assesses blast radius per target, finds data flows between them, and produces a safe change sequence.
| name | ix-investigate |
| description | Deep dive into a symbol, feature, or bug. Graph-first, minimal code reads, early stopping when sufficient evidence found. |
Answer: what is this, how does it connect, and what's the execution path? Stop as soon as those three questions can be answered accurately.
If the Ix runtime is unavailable, ix_status will report this; fall back to file reads as needed.
For most cases, call ix_query once:
ix_query({ mode: "investigate", targets: [$ARGUMENTS] })
Use the returned preview_markdown as the primary answer. Supplement with specific tools below if needed.
Call: ix_locate({ symbol: $ARGUMENTS })
If no match: try ix_text({ pattern: $ARGUMENTS, limit: 10 })
Do not proceed until the entity is unambiguous.
Call: ix_explain({ symbol: <resolved-symbol> })
Extract: role, importance, caller count, callee count, confidence score. Stop if: explain gave clear role, purpose, and connection summary → skip to Output.
ix_callers({ symbol: <symbol> })ix_callees({ symbol: <symbol> })Stop if: you now know who uses it and what it depends on.
Call: ix_trace({ symbol: <symbol> })
One trace only. Pick the most representative direction.
Only if the above steps leave a specific implementation question unanswered: read the source file at the line range from ix_locate.
Hard limit: One source read maximum.
## [Symbol] — Investigation
**What it is:** [kind, file, subsystem — from graph]
**Role:** [orchestrator / boundary / helper / utility / etc.]
**Execution flow:**
[downstream: what it calls -> what those call, 2 levels max]
[upstream: who calls it, top 5]
**Key connections:**
- Depends on: [top 3 callees]
- Used by: [top 3 callers with their subsystem]
**Evidence quality:** [strong / partial / uncertain] — [one-line reason]
**Next step:**
- [most useful follow-up based on findings]