吴恩达老师开源「Context Hub」,专为 AI Coding Agent 设计的、可自我进化的 API 文档分发系统。
Context Hub 解决什么问题?
Coding Agents(Claude Code、Codex、Cursor ...)有一个结构性缺陷:训练数据有截止日期,但 API 一直在更新,具体表现为:
· 调用旧版接口
· 捏造不存在的参数
· 每次会话重新踩同样的坑,无法积累经验
Context Hub 把这个问题拆成两层来解:知识获取(拿到当前正确的文档)+ 知识积累(记住用过的经验)。
核心架构
项目分三个主要部分:
· content/:所有文档的 Markdown 原始内容,结构为 作者/docs/条目名/DOC.md,社区直接 PR
· cli/:Node.js 命令行工具 chub,Agent 调用它获取文档
· docs/:项目自身文档(CLI 参考、内容规范、反馈机制说明)
内容层(Content)
────────────────
Markdown + YAML
作者/docs/条目名/DOC.md
社区 PR 贡献
│
▼ chub build → registry.json
│
CLI 工具(chub)
────────────────
CDN 分发 + 本地缓存
search / get / annotate / feedback
│
▼ chub get → 读文档写代码
│
Agent
─────
读文档写代码
标注经验(跨会话持久)
│
↺ feedback 回流给作者
工作流:Agent 如何使用它
通过 SKILL.md 将如下五步注入 Agent 的行为规范:
Step 1 — 搜索
chub search "openai" # 模糊搜索
chub search openai/chat # 精确 ID 查询
Step 2 — 获取文档
chub get openai/chat --lang py # 按语言拉取
chub get stripe/api --full # 含所有参考文件
Step 3 — 用文档写代码(不依赖训练记忆)
Step 4 — 标注本次发现的坑
chub annotate stripe/api "webhook 验证前不能 parse JSON,需要原始 body"
标注保存在本机 ~/.chub/annotations/,下次 chub get 自动附带显示,跨会话持久。
Step 5 — 给文档打分
chub feedback openai/chat down --label outdated --label wrong-examples
两个进化机制:Annotations 和 Feedback
· Annotations - 解决"知识遗忘"问题
作用范围:本机,仅当前用户的 Agent;跨会话保留;目标是不重复踩坑。
· Feedback - 解决"内容老化"问题
作用范围:全局,反馈给文档作者;进入文档迭代;目标是让文档对所有人变更好。
Context Hub 解决什么问题?
Coding Agents(Claude Code、Codex、Cursor ...)有一个结构性缺陷:训练数据有截止日期,但 API 一直在更新,具体表现为:
· 调用旧版接口
· 捏造不存在的参数
· 每次会话重新踩同样的坑,无法积累经验
Context Hub 把这个问题拆成两层来解:知识获取(拿到当前正确的文档)+ 知识积累(记住用过的经验)。
核心架构
项目分三个主要部分:
· content/:所有文档的 Markdown 原始内容,结构为 作者/docs/条目名/DOC.md,社区直接 PR
· cli/:Node.js 命令行工具 chub,Agent 调用它获取文档
· docs/:项目自身文档(CLI 参考、内容规范、反馈机制说明)
内容层(Content)
────────────────
Markdown + YAML
作者/docs/条目名/DOC.md
社区 PR 贡献
│
▼ chub build → registry.json
│
CLI 工具(chub)
────────────────
CDN 分发 + 本地缓存
search / get / annotate / feedback
│
▼ chub get → 读文档写代码
│
Agent
─────
读文档写代码
标注经验(跨会话持久)
│
↺ feedback 回流给作者
工作流:Agent 如何使用它
通过 SKILL.md 将如下五步注入 Agent 的行为规范:
Step 1 — 搜索
chub search "openai" # 模糊搜索
chub search openai/chat # 精确 ID 查询
Step 2 — 获取文档
chub get openai/chat --lang py # 按语言拉取
chub get stripe/api --full # 含所有参考文件
Step 3 — 用文档写代码(不依赖训练记忆)
Step 4 — 标注本次发现的坑
chub annotate stripe/api "webhook 验证前不能 parse JSON,需要原始 body"
标注保存在本机 ~/.chub/annotations/,下次 chub get 自动附带显示,跨会话持久。
Step 5 — 给文档打分
chub feedback openai/chat down --label outdated --label wrong-examples
两个进化机制:Annotations 和 Feedback
· Annotations - 解决"知识遗忘"问题
作用范围:本机,仅当前用户的 Agent;跨会话保留;目标是不重复踩坑。
· Feedback - 解决"内容老化"问题
作用范围:全局,反馈给文档作者;进入文档迭代;目标是让文档对所有人变更好。