2026年6月19日 1 分钟阅读

Ctx 实战:用知识图谱自动推荐最相关技能和 MCP,告别 Token 浪费

tinyash 0 条评论

你的 Agent 正在吃 90% 的无效 Token

如果你经常使用 Claude Code、Codex 或 Gemini CLI 做编码任务,一定遇到过这个问题:手头装了 30 多个技能(Skills)、配置了十几个 MCP 服务器,但每次会话 Agent 都要把它们全部加载到上下文中。结果呢?大量 Token 浪费在无关的技能定义上,回答质量反而下降——因为有效上下文被稀释了。

更糟的是,你根本不知道有哪些技能或 MCP 服务器适用于当前任务。开源社区已经有 91,000+ 个技能页面、10,000+ 个 MCP 服务器和 460+ 个 Agent,手动翻找就像大海捞针。

Ctx 就是为解决这个问题而生的——它监控你正在构建的代码,遍历一个 79,958 节点的知识图谱,然后为你当前的任务推荐最相关的一小撮技能、Agent 和 MCP 服务器。

什么是 Ctx?

Ctx(全称 claude-ctx)是一个开源的 Python CLI 工具(MIT 协议,515⭐),核心功能是基于上下文的智能推荐。它维护了一个庞大的 LLM-wiki 知识图谱,包含:

  • 68,494 个技能实体(其中 67,024 个带有可安装的 SKILL.md)
  • 467 个 Agent
  • 10,790 个 MCP 服务器
  • 207 个 Harness(运行环境模板)
  • 2.6M 条图边(语义相似度、标签、来源重叠、质量评分等)

每次你开始一个新任务,Ctx 会自动分析代码仓库的信号,从图谱中筛选出与当前工作最匹配的 10-15 个实体,而不是让你盲目加载所有已安装的技能。

快速安装与初始化

pip install claude-ctx

ctx-init

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

ctx-init 会做三件事:

  1. 安装 Claude Code hooks:在 PostToolUseStop 事件中自动扫描代码信号
  2. 下载知识图谱:预构建的 runtime 图谱(约几 MB 的压缩包),不包含完整 wiki 页面
  3. 配置模型:默认跳过模型配置,也可指定自定义模型和任务目标

如果你需要完整图谱用于本地浏览或 Obsidian 集成:

ctx-init --graph --graph-install-mode full

这会下载完整的 wiki-graph.tar.gz,包含所有 68,494 个技能页面和 207 个 harness 页面。

核心工作流

1. 扫描仓库

ctx-scan-repo --repo .

ctx-scan-repo --repo . --recommend

Ctx 会分析你的代码语言、框架依赖、项目结构,然后与知识图谱匹配。

2. 查看技能质量

ctx-skill-quality list

ctx-skill-quality explain python-patterns

Ctx 使用四信号质量评分体系,从代码质量、文档完整性、社区活跃度和项目健康度等多个维度评估每个技能——具体维度可通过 ctx-skill-quality explain 查看每个技能的详细得分。

3. 监控仪表盘

ctx-monitor serve

http://127.0.0.1:8765/ 启动本地仪表盘,可以查看:

  • 当前加载的技能/Agent/MCP 列表
  • 图谱可视化(按 slug 查看节点)
  • LLM-wiki 实体浏览器
  • 会话时间线
  • 审计日志和运行时日志

4. 管理 Harness(运行环境模板)

Harness 是 Ctx 的概念——它可以包含项目的运行环境、技能组合和配置文件,让你在不同项目之间快速切换:

ctx-harness-add --repo https://github.com/user/project --tag cad

ctx-harness-install project --dry-run

ctx-harness-install project

ctx-harness-install project --update --dry-run
ctx-harness-install project --uninstall --dry-run

实战场景

场景 1:从零开始一个 Python Web 项目

mkdir my-fastapi-app && cd my-fastapi-app

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

ctx-scan-repo --repo . --recommend

Ctx 检测到 Python + FastAPI 的信号后,会自动推荐:

  • fastapi-routes 技能(路由设计最佳实践)
  • python-patterns 技能(Python 常见模式)
  • pydantic-validation MCP(实时数据验证)
  • sqlalchemy-query 技能(数据库查询优化)

场景 2:现有项目添加代码审查

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

ctx-skill-quality explain code-review
ctx-agent-add --agent-path ./code-reviewer.md --name code-reviewer

场景 3:日常监控技能健康度

ctx-skill-health dashboard

如果某个技能长期未使用,Ctx 会标记为”技能腐化”(skill rot),建议你卸载或替换。

在 CI 中的集成

Ctx 提供了一个本地 PR 门禁脚本,在你推送前自动检查:

python scripts/ci_preflight.py --profile pr

它会运行统计检查、ruff 代码风格、mypy 类型检查、pip 依赖验证、单元覆盖率、构建验证、图谱校验等。在发布前使用 --profile full 进行全面检查。

Ctx vs 手动管理

对比维度手动管理技能Ctx 推荐
Token 开销加载所有已安装技能仅加载最相关的 10-15 个
发现新技能靠 GitHub 搜索或社区推荐自动匹配当前代码
技能腐化无感知自动标记长期未用的技能
MCP 集成手动配置每个服务器按任务推荐并自动配置
多项目切换手动卸载/重装Harness 一键切换

注意事项

  • Ctx 的预构建图谱约覆盖了 79,958 个节点,如果你需要完整的 91K+ 技能列表,使用 --graph-install-mode full 下载完整版本
  • 首次 ctx-init 需要下载图谱文件,建议在稳定网络下执行
  • Ctx 目前主要为 Claude Code 设计 hooks,但支持通过 harness 模式适配其他模型(如 GPT-5.5、本地模型)
  • 如果你有自定义技能,可以使用 ctx-skill-add 将其纳入图谱

总结

Ctx 解决了一个 AI 编码时代被普遍忽视的问题:技能发现和 Token 预算管理。在技能和 MCP 数量膨胀到数万个的生态中,手动管理已经不是可持续的方式。Ctx 的知识图谱推荐引擎让你的 Agent 始终使用最合适的工具组合,而不是在无用信息上浪费上下文预算。

对于经常使用 AI 编码工具且安装了多个技能的开发者来说,Ctx 是一个值得加入工具箱的效率工具。

发表评论

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