AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL unreviewed MIT Self-run

Indexing Code

skill-telagod-code-abyss-indexing-code · by telagod

Code relationship graph and temporal intelligence via abyss CLI. Provides caller tracing, impact analysis, hotspot detection, and file-level context gathering. Agent automatically runs abyss before modifying code to check impact. Works with any agent that has shell access.

No reviews yet
0 installs
6 views
0.0% view→install

Install

$ agentstack add skill-telagod-code-abyss-indexing-code

Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.

Security review

⚠ Flagged

1 finding(s); flagged for manual review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures
  • high Pipes remote content directly into a shell (remote code execution).

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Reliability & compatibility

Not yet reviewed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Indexing Code? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

代码关系图 · abyss

> 不是搜索工具,是代码的调用图 + 时间智能。通过 shell 调用 abyss CLI。

前置

进入项目时,检查并初始化索引:

command -v abyss >/dev/null && [ ! -f .code-abyss/index.db ] && abyss index

核心行为

改文件前:跑 abyss context

即将修改任何代码文件时,先获取该文件的完整上下文(不需要知道函数名):

abyss context  --json

返回:该文件所有函数的外部调用方、依赖的类型和函数、热点评分、耦合文件。

根据返回结果:

  • 有 production callers:检查改动是否会破坏调用方,改完逐个同步
  • hotspot score > 5000:高风险文件,跑 abyss impact --json 深入分析
  • impact risk > 7/10:跟用户确认方案后再改
  • 有 uncovered paths:提醒用户补测试
  • 有 coupled files:检查耦合文件是否需要同步修改

其他场景

| 场景 | 命令 | |------|------| | 初识项目架构 | abyss map --json | | 追查 bug 来源 | abyss history --symbol --json | | 搜索代码(比 grep 好) | abyss search "关键词" --json |

输出说明

--json 输出结构化 JSON,agent 直接解析。不加 --json 输出人类可读文本。

context 输出关键字段

{
  "symbols_with_external_callers": [
    { "symbol": "SetError",
      "external_callers": [
        { "file": "handler.go", "line": 42, "caller": "HandleRequest",
          "confidence": 0.95, "is_test": false }
      ],
      "possible_callers": []
    }
  ],
  "dependencies": [{ "name": "Account", "file": "types.go", "kind": "type_ref" }],
  "hotspot": { "score": 5200, "changes_30d": 12, "complexity": 433 },
  "coupled_files": [{ "file": "gateway.go", "co_changes": 13, "coupling": "65%" }]
}
  • external_callers:confidence ≥ 0.7 的可信调用方,按解析档位标注(1.0 同文件 / 0.95 同包 / 0.9 import 限定 / 0.8 全局唯一)
  • possible_callers:confidence [--json] # 文件完整上下文(改代码前用这个)

abyss callers [--json] # 谁调了这个函数(默认隐藏 confidence --min-confidence 0 # 连歧义匹配一起看 abyss impact [--json] # 改了会影响什么(低置信边被排除时会在 risk_factors 标注) abyss hook pre-edit # agent hook:stdin 读 tool JSON,增量刷新索引后输出警告 abyss hook post-edit # agent hook:编辑后增量刷新索引 abyss search "query" [--json] # 搜索代码 abyss map [--json] # 项目热点+耦合 abyss history [--symbol X] # 变更历史 abyss stats # 索引统计


## Hook 自动执行

Hook 注入按 host 分两条路径(hybrid 切割架构,2026-06-25 锁定):

**claude / codex / gemini** — 由 abyss CLI 的 `attach` 子命令负责(production 主入口,abyss v0.5.20+):

```sh
abyss attach claude     # → ~/.claude/settings.json
abyss attach codex      # → ~/.codex/config.toml(Codex 0.125+ 数组表)
abyss attach gemini     # → ~/.gemini/settings.json(SessionStart/BeforeTool/AfterTool)
abyss attach all        # 三平台一次完成

幂等,重跑覆盖旧 shape,不污染其它键。

二进制查找顺序:PATH → ~/.code-abyss/bin/abyss。两处都没有时 hook 静默停用,后装 abyss 即生效,无需重装。

> v4.8.x → v4.9 deprecation 期变更 > - --with-hooks 对 claude/codex/gemini 仍写入 hook,但 install.js 打印 warning 引导改用 abyss attach ;v5.0 移除该路径(openclaw/pi/hermes 的 --with-hooks 永久保留并改造为 spawn install-hooks.sh) > - --with-abyss 下载 abyss 二进制到 ~/.code-abyss/bin/ 进入 deprecation,引导用户改用 curl -fsSL https://raw.githubusercontent.com/telagod/abyss/main/install.sh | bash;v5.0 移除 > - --with-mcp 注册 abyss MCP 进入 deprecation,引导用户改用 abyss mcp 客户端自配;v5.0 移除

openclaw / pi / hermes — 由 code-abyss npm 包负责(abyss CLI 不接管这三平台,见 abyss src/attach/mod.rs 注释):

npx code-abyss --target openclaw --with-hooks   # 自动 spawn install-hooks.sh
npx code-abyss --target pi       --with-hooks
npx code-abyss --target hermes   --with-hooks

或脱离安装器直接跑脚本:

bash skills/indexing-code/hooks/common/install-hooks.sh auto   # 自动检测平台

自动检测平台并注入对应 hook 配置(幂等,JSON 合并用 node):

| 平台 | Hook 事件 | 配置位置 | |------|----------|---------| | Claude Code | PreToolUse(Edit\|Write) | .claude/settings.json | | Codex CLI | PreToolUse(Bash\|shell\|applypatch\|Edit\|Write) | ~/.codex/config.toml | | Gemini CLI | BeforeTool(writefile\|replace) | ~/.gemini/settings.json | | Pi Agent | tool_call(editfile\|writefile) | ~/.pi/agent/settings.json | | Hermes | pre_tool_call | ~/.hermes/config.yaml 或 plugin | | OpenClaw | before_tool_call | plugin api.on() |

统一入口是 abyss hook pre-edit(shell 脚本只是带存在性守卫的薄壳):自动识别各平台 stdin JSON 形状、增量刷新索引(警告反映文件当前状态而非旧索引)、输出生产调用方 / 歧义引用 / 热点警告。编辑后可挂 abyss hook post-edit 保持索引新鲜。agent 无需手动调用。

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.