ix

GitHub

Ix通过持久化代码图回答代码库结构问题,如符号定义、调用关系、变更影响及热点分析。替代grep,支持多语言解析,提供上下文理解、流程追踪和依赖分析能力。

skills/ix/SKILL.md ix-infrastructure/Ix

Trigger Scenarios

询问代码符号含义或定义 分析函数调用链或依赖关系 评估代码变更的影响范围 查找代码热点或异味

Install

npx skills add ix-infrastructure/Ix --skill ix -g -y
More Options

Use without installing

npx skills use ix-infrastructure/Ix@ix

指定 Agent (Claude Code)

npx skills add ix-infrastructure/Ix --skill ix -a claude-code -g -y

安装 repo 全部 skill

npx skills add ix-infrastructure/Ix --all -g -y

预览 repo 内 skill

npx skills add ix-infrastructure/Ix --list

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

  1. Start with ix context <file-or-symbol> — one bounded call that names the files and symbols that matter, with line ranges.
  2. Read the ranges, not the files. ix read <symbol>, or path: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.
  3. 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.
  4. 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.
  5. Format: llm is the one to read, and IX_FORMAT=llm (or ix config set format llm) makes it the default so it need not be typed per call; json is for chaining or extracting a field. On ix context the same answer runs about 7.6 : 0.8 : 1 for json : llm : text.

Rules

  1. Answer codebase questions from targeted ix commands, not from training data.
  2. Never guess a codebase fact that Ix holds.
  3. On contradictory information, run ix conflicts and present the results.
  4. Refresh with ix map --silent when 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.
  5. 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|text rules, what does not implement llm, 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

Metadata

Files
0
Version
5872bb9
Hash
ffaec744
Indexed
2026-08-12 09:08

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-09-23 05:04
浙ICP备14020137号-1