ix
GitHubIx通过持久化代码图回答代码库结构问题,如符号定义、调用关系、变更影响及热点分析。替代grep,支持多语言解析,提供上下文理解、流程追踪和依赖分析能力。
Trigger Scenarios
Install
npx skills add ix-infrastructure/Ix --skill ix -g -y
SKILL.md
Frontmatter
{
"name": "ix",
"license": "Apache-2.0",
"metadata": {
"source": "https:\/\/github.com\/ix-infrastructure\/Ix",
"version": "1.0.0"
},
"description": "Answer structural questions about a codebase — what a symbol is, what calls it, what a change breaks, where the hotspots are — from a persistent code graph via the ix CLI, instead of grepping."
}
Ix — Persistent Codebase Map
Ix parses a repository with tree-sitter (26 languages) into a graph of symbols, calls and imports, kept in a local backend (ArangoDB via Docker) and persisted between sessions. Query it for structural answers — what a symbol is, what calls it, how a flow moves, what a change breaks, which files carry the most weight, where the smells are — instead of reading files to find out. It does not answer prose or history questions.
First run
bash scripts/bootstrap.sh [repo-root] [--no-map] # macOS / Linux / Git Bash
powershell -ExecutionPolicy Bypass -File scripts/bootstrap.ps1 [repo-root] [-NoMap] # Windows
Checks Node >= 22, git, Docker and ripgrep, installs the CLI if missing, starts the backend, and maps the repo. Re-run it per repo.
Core workflow
| Step | Command | Example |
|---|---|---|
| Bounded context to start from | ix context |
ix context IngestionService |
| Understand a component | ix explain |
ix explain IngestionService |
| Trace a flow | ix trace |
ix trace user_login_flow |
| Blast radius of a change | ix impact |
ix impact verify_token |
| Build / refresh the graph | ix map |
ix map . |
How to spend calls
- Start with
ix context <file-or-symbol>— one bounded call that names the files and symbols that matter, with line ranges. - Read the ranges, not the files.
ix read <symbol>, orpath:120-180, is one to three thousand tokens; the file around it is commonly thirty to sixty thousand — and every one of those is re-sent on every later step of the turn. - Drill down with primitives, reusing the exact entity IDs from earlier output:
ix search,ix callers,ix callees,ix contains,ix imports,ix imported-by,ix depends. - Do not poll
ix status. A command that needs the backend says so itself, with a hint; a health check in front of every call is a wasted round trip. - Format:
llmis the one to read, andIX_FORMAT=llm(orix config set format llm) makes it the default so it need not be typed per call;jsonis for chaining or extracting a field. Onix contextthe same answer runs about 7.6 : 0.8 : 1 for json : llm : text.
Rules
- Answer codebase questions from targeted
ixcommands, not from training data. - Never guess a codebase fact that Ix holds.
- On contradictory information, run
ix conflictsand present the results. - Refresh with
ix map --silentwhen the graph has gone stale — after a branch switch, a pull, or a batch of edits. Editor plugins re-ingest edited files on a debounce; this is not a per-edit step. - When Ix reports low confidence, say so, suggest re-running
ix map, and never present it as established fact.
References — load on demand
- references/commands.md — command routing tables, decomposition recipes, best practices, the do-not-use list. Before any command beyond the table above.
- references/flags.md — every flag the CLI registers, per command, with values and defaults. Before guessing whether a flag exists.
- references/output-formats.md — the
llm|json|textrules, what does not implementllm, and which commands are Pro-gated. - references/troubleshooting.md — prerequisites,
ix doctor, backend health, environment flags. When a command fails. - scripts/bootstrap.sh / scripts/bootstrap.ps1 — first-run setup (bash; and native PowerShell for Windows).
Version History
-
5872bb9
Current 2026-09-22 01:26
精简技能文档,移除安装说明,优化为优先使用行范围查询以节省Token,调整格式配置建议,并修正部分命令输出格式说明。
-
d3d95cb
2026-09-08 19:46
更新技能安装脚本以支持多Agent平台自动发现与部署;修复API文档与客户端调用的漂移问题并增加校验门禁。
-
043bc68
2026-08-16 15:58
新增 ix context 命令,用于生成确定性的有界上下文包,包含版本化输出模式及可恢复的调查状态管理。
- fa6ad7b 2026-08-12 09:08


