三个 AI 编程助手,一份公共记事本——告别"每次都要重新解释项目配置"的痛苦。

一、痛点:三个 Agent,三份失忆

如果你同时使用多个 AI 编程助手,大概率遇到过这种场景:

你:“帮我修一下 UATU 项目的登录 bug”
Claude Code:“好的,API 地址是什么?”
你:“http://xxx/api”
Claude Code 修完了。

第二天,你换 Codex:
你:“继续优化 UATU 的列表页”
Codex:“API 地址是什么?”
你:“……我刚告诉过 Claude Code 啊!”
Codex:“我不知道 Claude Code 说了什么。”

每个 Agent 各自维护记忆,信息完全隔离。你在 Hermes 这里记住的东西,Claude Code 不知道;Claude Code 学到的坑,Codex 也看不到。 这不是 Agent 的错——它们天生就是独立的进程,没有共享内存。

本文介绍一套轻量方案:SQLite 共享知识库,让 Hermes、Claude Code、Codex 三个 Agent 读写同一份数据库,实现"一次写入,三端共享"。


二、三个 Agent 分别是什么?

Agent 开发商 底层模型 定位 交互方式
Hermes Nous Research DeepSeek / 可配 全能助手(技术+生活+财务) 微信 / 终端对话
Claude Code Anthropic Claude 系列 纯代码 Agent(重构、PR 审查) CLI:claude -p "任务"
Codex OpenAI GPT 系列 纯代码 Agent(功能开发、批量修 bug) CLI:codex exec "任务"

核心区别:Hermes 是你的"日常全能管家",Claude Code 和 Codex 是你派出去干代码重活的"外包工人"。它们各有所长,但本质上互不相识。


三、共享知识库架构

               ┌──────────────────────────┐
               │     knowledge.db          │
               │   SQLite + FTS5 全文索引   │
               │   D:/tools/shared-knowledge/│
               └──────────┬───────────────┘
                          │
          ┌───────────────┼───────────────┐
          │               │               │
   ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐
   │   Hermes    │ │ Claude Code │ │    Codex    │
   │  直接调用API │ │ CLI 调 kb.py│ │ CLI 调 kb.py│
   └─────────────┘ └─────────────┘ └─────────────┘

技术选型

维度 选择 理由
存储引擎 SQLite + FTS5 零依赖、单文件、跨平台
API 设计 兼容 Cognee 后续可无缝升级为知识图谱
去重策略 MD5 内容哈希 避免重复写入
中文搜索 LIKE 回退 FTS5 不支持中文分词,小数据量够用

核心 API

操作 CLI 命令 说明
存储 py kb.py remember "内容" 自动 MD5 去重
搜索 py kb.py recall "关键词" 中英文 LIKE 模糊搜索
列表 py kb.py list 列出全部知识
删除 py kb.py forget <id> 按 ID 或关键词删除
统计 py kb.py stats 查看知识总量

四、有 vs 没有:直观对比

没有共享知识库

场景:你在 Hermes 配置好了 GitHub Token 路径

Hermes:    ✅ 知道 Token 在 D:/.hermes/.env
Claude Code:❌ 不知道,每次要重新告诉它
Codex:     ❌ 不知道,每次要重新告诉它

场景:Claude Code 发现 antd6 的 Table 组件 rowKey 必传

Claude Code:✅ 知道了,但只存在它自己的会话里
Hermes:    ❌ 不知道这个坑,下次你可能踩
Codex:     ❌ 不知道这个坑,下次你可能踩

有共享知识库

场景:你在 Hermes 说"记住:GitHub Token 在 D:/.hermes/.env"

Hermes:    存入 knowledge.db(1 条写入)
Claude Code:py kb.py recall "GitHub" → 直接拿到路径 ✅
Codex:     py kb.py recall "Token" → 直接拿到路径 ✅

场景:Claude Code 修 bug 发现 antd6 Table 的坑

Claude Code:py kb.py remember "antd6 Table rowKey 必传,否则控制台报错"
Hermes:    下次你问 antd 问题,我自动查知识库提醒你 ✅
Codex:     接到 UATU 任务时查知识库,不会重蹈覆辙 ✅

一句话:信息一次写入,三个 Agent 同时受益。


五、各端调用方法

5.1 Hermes 端(最简单)

直接跟我说就行,我自动操作底层 API:

"记住:Vue3 项目用了 Pinia 不是 Vuex"
"查一下知识库:API 地址"
"知识库里有什么"
"忘了第 3 条"

内部我会调用 Python API:

import sys
sys.path.insert(0, "D:/tools/shared-knowledge")
import engine

engine.remember("内容")     # 存储
engine.recall("关键词")     # 搜索
engine.list_all()           # 列出全部
engine.forget(fact_id="x")  # 删除

5.2 Claude Code 端

在 Claude Code 对话中直接执行命令:

# 存储知识
py D:/tools/shared-knowledge/kb.py remember "UATU 项目 API 地址: http://xxx/api"

# 搜索知识
py D:/tools/shared-knowledge/kb.py recall "UATU"

# 查看全部
py D:/tools/shared-knowledge/kb.py list

# 查看统计
py D:/tools/shared-knowledge/kb.py stats

首次使用需要配置权限,在项目 .claude/settings.local.json 或全局 ~/.claude/settings.json 中添加:

{
  "permissions": {
    "allow": [
      "Bash(py D:/tools/shared-knowledge/kb.py *)"
    ]
  }
}

⚠️ 必须用 py 启动器而非 python——Windows 上 python 可能指向 Store 占位符导致 exit 49。

5.3 Codex 端

用法和 Claude Code 完全一致:

py D:/tools/shared-knowledge/kb.py remember "项目用了 Python 3.11,不能用 3.12 的语法"
py D:/tools/shared-knowledge/kb.py recall "Python 版本"

六、实战工作流演示

假设你要修 UATU 项目的一个 bug,涉及 API 地址变更:

步骤 1:在 Hermes(微信/终端)告知配置变更
─────────────────────────────────────────────
你:"UATU 的 API 地址从 http://old/api 改成 http://new/api 了,记住"
我:"已存入知识库 ✅"

步骤 2:派 Claude Code 修 bug
─────────────────────────────────────────────
你:claude -p "修复 UATU 登录页面的 401 错误"

Claude Code 内部执行:
  > py kb.py recall "UATU API"
  > 返回:http://new/api
  > 直接用新地址,不需要你重复解释

修完后发现一个坑:
  > py kb.py remember "UATU 登录接口返回 401 时,要同时清除 localStorage 的 token"
  > (存入共享知识库)

步骤 3:第二天派 Codex 优化列表页
─────────────────────────────────────────────
你:codex exec "优化 UATU 列表页性能"

Codex 内部执行:
  > py kb.py recall "UATU"
  > 返回:API 地址 = http://new/api、token 清除逻辑、antd6 注意事项
  > 一次性拿到所有上下文,直接开工

三个 Agent 像接力一样传递知识,你只需要说一次。


七、部署步骤

7.1 环境要求

  • Windows 10/11
  • Python 3.x(用 py 启动器)
  • 零额外依赖(纯标准库)

7.2 文件结构

D:/tools/shared-knowledge/
├── knowledge.db      ← SQLite 数据库(单文件,备份即复制这个)
├── engine.py         ← Python 知识引擎
├── kb.py             ← CLI 接口
└── raw/              ← 原始文档存放(可选)

7.3 初始化

# 创建目录
mkdir -p D:/tools/shared-knowledge/raw

# 验证
py D:/tools/shared-knowledge/kb.py stats
# 输出:{"total_facts": 0, "db_path": "D:\\tools\\shared-knowledge\\knowledge.db"}

7.4 验证清单

  • py kb.py stats 正常返回
  • Hermes 端存入一条,Claude Code 端能查到
  • Claude Code 端存入一条,Hermes 端能查到
  • 中文关键词搜索正常(LIKE 回退模式)

八、进阶:升级到 Cognee 知识图谱

当前方案是轻量版,后续网络条件允许时可以升级为完整版 Cognee:

pip install cognee

API 名完全一致(remember / recall / forget),零代码迁移。Cognee 额外提供:

  • 知识图谱可视化
  • 向量语义搜索(真正的"意思相近"匹配)
  • 多格式文档导入(PDF、Markdown、代码文件)
  • 关系推理(“A 依赖 B,B 依赖 C → A 依赖 C”)

九、总结

要点 说明
是什么 SQLite 单文件数据库,三个 Agent 共用
解决什么 多个 AI Agent 之间的信息孤岛问题
怎么用 Hermes 直接说,Claude Code/Codex 调 py kb.py
核心价值 一次写入,三端共享;不再重复解释项目配置
升级路径 API 兼容 Cognee,可无缝迁移到知识图谱

回到最初的那个场景——你再也不用对每个 Agent 重复"API 地址是 xxx"。告诉 Hermes 一次,Claude Code 和 Codex 自动就知道了。


Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐