2026年6月18日 1 分钟阅读

如何帮 AI 编码 Agent 省 Token?Ctx 智能推荐系统实战

tinyash 0 条评论

你是否遇到过这种情况:Claude Code 的上下文里塞满了十几二十个你半年都没用过的 Skill,每次对话都白花几百 Token 去加载它们的 SKILL.md?或者你想用一个特定场景的工具(比如代码审查),但根本不记得它叫什么,只能翻 GitHub 一页页找?

这些问题的根源是一样的:AI 编码 Agent 的生态已经太大了。91,000+ 个 Skill 文件、460+ 个 Agent 定义、10,000+ 个 MCP 服务器——没人能记住它们,没人能挨个加载它们。但每次把所有东西都塞进上下文,Token 浪费和回复质量下降一定是必然的。

Ctx 就是来解决这个问题的。

为什么这是一个越来越严重的问题

AI 编码 Agent 的「软件包管理」困境,和当年 npm 的 node_modules 膨胀有惊人的相似之处。区别在于:npm 包膨胀吃的是硬盘,Skill 膨胀吃的可是你的 Token 预算。

具体来说,三个核心痛点:

问题影响
发现困难91K+ 个 Skill,你根本不知道哪个适用于当前任务
上下文预算浪费把所有 Skill 塞进去,大量 Token 被无关内容吞噬
Skill 腐烂半年前装的 Skill 已经过时了,还在白白占用上下文

Ctx 的解决思路很务实:它建立了一个 102,928 节点的知识图谱,实时观察你在写什么,然后只推荐当前任务最需要的 10-15 个 Skill、Agent 和 MCP 服务器。

安装与初始化

pip install claude-ctx
ctx-init                    # 终端向导:hooks、图谱、模型

安装后的 ctx-init 有三个核心步骤:

  1. 建立图谱--graph):下载预构建的 2.9M 条边知识图谱到本地
  2. 注册 Hook--hooks):让 Ctx 能观察到 Claude Code 的 PostToolUseStop 事件
  3. 配置模型(可选):如果用本地模型而非 Claude Code,走独立的 Harness 流程

如果只想快速运行,略过向导用直通车模式:

ctx-init --graph --hooks --model-mode skip

日常使用:Ctx 的四个核心命令

1. 扫描与推荐

cd your-project
ctx-scan-repo --repo . --recommend

这条命令会分析你当前项目的文件结构、语言、依赖,然后从知识图谱中推荐最匹配的 Skill 和 Agent。输出会直接告诉你「当前项目建议安装以下 6 个 Skill」和对应的安装命令。

如果只想看扫描结果不加推荐:

ctx-scan-repo --repo .

2. 查看 Skill 质量评分

ctx-skill-quality list           # 列出所有 Skill 的四维质量评分
ctx-skill-quality explain python-patterns  # 钻取某个 Skill 的详细评分

Ctx 为每个 Skill 提供质量评分,比 GitHub Stars 更能反映一个 Skill 是否值得加载。

3. Skill 健康仪表盘

ctx-skill-health dashboard

这个命令检查所有已安装 Skill 的结构健康度和漂移检测——哪个 Skill 的 API 已经过时了?哪个 Skill 的作者已经半年没更新了?一目了然。

4. 本地监控看板

ctx-monitor serve

一个本地 Web 仪表盘,显示当前已加载的 Skill、Agent、MCP 服务器清单,以及它们各自的加载/卸载状态。支持直接通过 UI 卸载不再需要的 Skill,功能类似于 macOS 的活动监视器之于进程管理。

深入:图谱驱动的推荐机制

Ctx 的核心资产是一个包含 102,928 个节点和 2,900,000 条边的知识图谱。这些边涵盖了:

  • 语义相似度:Skill A 和 Skill B 在干什么类似的事
  • 标签重合度:两个 Skill 是否被打了相同的标签
  • Slug Token 关联:名称中的分词共现关系
  • 源重叠:是否来自同一个 Skill 仓库或集合
  • 直接链接:某个 Agent 被设计为依赖某些 Skill
  • 质量关联:高评分 Skill 通常引用同类其他高评分 Skill
  • 使用模式:哪些 Skill 常被同时安装

数据来自 89,465 个可安装的 SKILL.md 文件。Ctx 每批实体更新时会打印 benefits/risks 信息,默认不自动替换已有 Skill——需要你显式 --update-existing 确认。

每次 ctx-scan-repo --recommend 实际执行时,图谱会为你当前 repo 的特征做一次上下文感知的 Top-N 排序,只输出与任务最相关的 10-15 条。

预检与 CI 集成

Ctx 还提供了一个 PR 预检脚本,在推送前就能验证本地变更的质量:

python scripts/ci_preflight.py --profile pr

它会用 GitHub Actions 相同的变更文件分类器,运行相应的本地检查:Ruff、mypy、单元覆盖率、包构建、文档校验和图谱验证。如果改的是文档或图谱文件,它会跳过不必要的构建步骤。

完整模式:

python scripts/ci_preflight.py --profile full

适用场景与注意事项

Ctx 最适合

  • 同时使用多个 AI 编码 Agent(Claude Code + Codex + Cursor 等)
  • 安装了 10 个以上 Skill,想清理上下文
  • 希望为新项目快速发现合适的工具链

需要注意

  • 首次 ctx-init --graph 需要下载图谱文件,建议在稳定网络下执行
  • 推荐的准确度依赖图谱的更新频率——好在 Ctx 的实体更新是增量式的
  • 如果使用本地模型,需要走 Harness 流程,与 Claude Code 的 Hook 模式略有不同

总结

Ctx 不是又一个 Skill 集合——它是 Skill 集合的搜索引擎。在 AI 编码生态从「几十个工具」膨胀到「十几万个工具」的今天,「知道该用哪个」比「能用哪个」重要得多。2.9M 条边的知识图谱、实时上下文分析和四维质量评分,让它成为我近期最想推荐给重度 AI 编码用户的工具。

pip install claude-ctx && ctx-init --graph --hooks --model-mode skip

项目地址:github.com/stevesolun/ctx | 文档:stevesolun.github.io/ctx

发表评论

你的邮箱地址不会被公开,带 * 的为必填项。