← 返回目录
W

witness

社区
本地记忆与自我进化引擎,见证你作为开发者的成长轨迹。
GitHub 源仓库 ↗
★ 8 Stars 分类 · 开发工具 热门 源版本 6fe528d62e2b
62FMRS · C

witness 是一个本地优先的 MCP 服务器,作为 Claude Code 和 OpenCode 的成长记忆引擎。它捕获会话并提炼观察和方面,生成带来源追溯的个人资料。以其反思而非克隆的设计、多语言支持以及纯 Go 实现著称,适合希望以隐私方式追踪自己发展历程的开发者。

可靠性
10/20
安全与权限
14/20
维护活跃度
10/20
文档质量
16/20
安装易用性
12/20
查看 FMRS 评分方法 →

witness 是一个本地优先的记忆与自我改进引擎,专为 Claude Code 和 OpenCode 设计。它会捕获你的编码会话,并提炼出你的模式、习惯和知识如何随时间演变——一个以人为本、带有来源追溯的成长档案。它通过 MCP 服务器和普通文件提供访问,以单一 Go 二进制文件发布。数据全部保存在本地,支持英文和中文的多语言嵌入,默认使用现有的 Claude Code 或 OpenCode 认证进行蒸馏,无需外部服务。

工具能力

search_observations
对观察进行本地向量语义搜索。
get_facets
获取当前的结构化方面数据。
get_profile
获取叙述性个人资料(散文),可指定镜头。
record_observation
由代理直接记录一条基于决策的观察。
delete_observation
删除一条错误的观察记录。

安装接入

对于 Claude Code,运行 ./install.sh claude,它会构建二进制文件、下载约 448MB 的模型并配置 hooks 和 MCP。对于 OpenCode,运行 ./install.sh opencode 以配置本地插件和 MCP,或使用 npm 包 @witness-ai/opencode 并将插件添加到 opencode.json。Windows 用户可从发布页面下载 zip 包,然后运行 witness.exe wire claude

选型与风险

适合谁

  • 希望在 AI 编码会话之间保留学习成果的开发者。
  • 想要建立第二大脑或 AI 记忆,能让代理查询思维模式的人。
  • 重视数据隐私,要求所有数据本地存储的用户。
  • 希望随时间追踪自己作为开发者成长轨迹的人。

不适合谁

  • 需要项目级记忆或代码库历史的人(它关注的是人,不是代码)。
  • 需要云同步或多用户协作功能的人(它是本地优先的)。
  • 不熟悉命令行或不想运行本地模型下载的用户。
  • 希望在会话中主动推送建议或辅导的主动教练(它只是工具)。

所需权限

  • 读取 Claude Code hooks 捕获的用户提示和助手消息。
  • 读取 OpenCode 本地 SQLite 会话数据库。
  • 访问本地文件系统以存储数据(默认 `~/.local/share/witness/`)。
  • 调用 `claude -p` 或私有 `opencode serve` 运行器进行蒸馏。

风险与副作用

  • 数据全部本地存储,但需要定期备份;不要直接同步实时数据目录。
  • 可能需要显著的磁盘空间,因为模型约 470MB,且原始记录会累积。
  • 使用 LLM 蒸馏,可能消耗计算资源和费用(取决于运行器配置)。
  • 确保使用 `witness export` 获取一致快照进行备份,避免损坏。

常见排障

  1. 运行 `witness doctor` 检查嵌入器、模型和归档状态。
  2. 检查 `witness distill status` 确保后台蒸馏工作器正常运行。
  3. 如果 OpenCode 集成出现问题,确认插件已正确注册。
  4. 验证 `config.toml` 中的模型名称是否有效。

使用场景

跨会话保留 AI 编程中习得的经验。
跟踪你在编码时的思维模式、工作习惯和认知陷阱。
回顾你自己的笔记、文章或文本流,观察知识如何演变。
生成可重读的成长叙述,供个人回顾。

支持客户端

Claude Desktop完整支持
OpenCode完整支持