{{include:repoix-discovery-base.md}}

| Task | Tools |
|------|-------|
| Quick orientation | `architecture(action="components")`, `architecture(action="endpoints")`, `context(action="task")` |
| Architecture | `architecture(action="dependencies")`, `quality(action="circular_deps")` |
| Find code | `search(action="symbols")`, `files(...)`, `search(action="code")` |
| Understand | `file(action="symbols")`, `file(action="imports")`, `symbol(action="detail")` |
| Trace flow | `symbol(action="callers")`, `symbol(action="references")`, `quality(action="impact")` |
| API surface | `symbol(action="hierarchy")` |
| Quality | `quality(action="dead_code")`, `git(action="hotspots")`, `symbol(action="similar")`, `quality(action="duplicates")` |
| Tests | `tests(action="for_file")`, `tests(action="code_for_test")` |
| Changes | `git(action="changes")`, `git(action="diff")` |

## First-Time Orientation

```text
# 1. Quick architecture overview
architecture(action="components")
architecture(action="endpoints", kind="class", limit=20)

# 2. Targeted context for analysis area
context(action="task", task="understand <area> architecture and patterns", token_budget=2000, prefer_kinds=["class", "function"])
```

## CLI Conversion

| MCP | CLI |
|-----|-----|
| `architecture(action="components")` | `civyk-repoix query architecture --action components` |
| `architecture(action="endpoints", limit=N)` | `civyk-repoix query architecture --action endpoints --limit N` |
| `context(action="task", task="...", token_budget=N)` | `civyk-repoix query context --action task --task "..." --token-budget N` |
| `architecture(action="dependencies")` | `civyk-repoix query architecture --action dependencies` |
| `quality(action="circular_deps", level="...")` | `civyk-repoix query quality --action circular_deps --level "..."` |
| `search(action="symbols", query="...", kind="...")` | `civyk-repoix query search --action symbols --query "..." --kind "..."` |
| `files(pattern="...", include_stats=true)` | `civyk-repoix query files --pattern "..." --include-stats true` |
| `search(action="code", query="...", source_only=true)` | `civyk-repoix query search --action code --query "..." --source-only true` |
| `file(action="symbols", path="...")` | `civyk-repoix query file --action symbols --path "..."` |
| `file(action="imports", path="...")` | `civyk-repoix query file --action imports --path "..."` |
| `symbol(action="detail", fqn="...")` | `civyk-repoix query symbol --action detail --fqn "..."` |
| `symbol(action="callers", fqn="...", depth=N)` | `civyk-repoix query symbol --action callers --fqn "..." --depth N` |
| `symbol(action="references", fqn="...")` | `civyk-repoix query symbol --action references --fqn "..."` |
| `quality(action="impact", fqn="...", depth=N, include_tests=true)` | `civyk-repoix query quality --action impact --fqn "..." --depth N --include-tests true` |
| `symbol(action="hierarchy", fqn="...", direction="...")` | `civyk-repoix query symbol --action hierarchy --fqn "..." --direction "..."` |
| `quality(action="dead_code", limit=N)` | `civyk-repoix query quality --action dead_code --limit N` |
| `git(action="hotspots", since="30d", group_by="...")` | `civyk-repoix query git --action hotspots --since 30d --group-by "..."` |
| `symbol(action="similar", fqn="...", similarity_threshold=N)` | `civyk-repoix query symbol --action similar --fqn "..." --similarity-threshold N` |
| `quality(action="duplicates", source_only=true)` | `civyk-repoix query quality --action duplicates --source-only true` |
| `tests(action="for_file", path="...", include_indirect=true)` | `civyk-repoix query tests --action for_file --path "..." --include-indirect true` |
| `tests(action="code_for_test", path="...")` | `civyk-repoix query tests --action code_for_test --path "..."` |
| `git(action="changes", since="7d", include_symbols=true)` | `civyk-repoix query git --action changes --since 7d --include-symbols true` |
| `git(action="diff", include_symbols=true)` | `civyk-repoix query git --action diff --include-symbols true` |
