关于 hindsight-self-hosted
为 AI Agent 提供连接自托管 Hindsight 服务器的持久记忆操作指引,记忆库可供团队共享。技能说明如何配置 CLI,以及如何存储、检索和综合项目经验。
主要功能
- 01配置 Hindsight CLI 与记忆库 ID
- 02存储带上下文的团队记忆
- 03按主题检索相关记忆
- 04综合记忆以辅助任务判断
- 05区分团队约定与个人偏好
适用场景
- 01开始编码任务前检索项目背景
- 02记录已验证的解决步骤与问题原因
- 03共享团队约定和架构决策
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ vectorize-io/ hindsight --skill hindsight-self-hosted安装后在 Claude Code 中输入/hindsight-self-hosted确认已加载。
详细介绍
Hindsight 记忆技能(可自托管)
你可以通过一个可自托管的 Hindsight 服务获得持久记忆。这个记忆库可以与团队共享,因此存储在这里的知识会让所有参与该代码库工作的人都受益。
主动存储团队知识并回忆上下文,以提供更好的协助。
设置检查(仅首次)
在使用记忆命令之前,请确认 Hindsight CLI 已配置:
cat ~/.hindsight/config
如果该文件不存在或缺少凭据,请帮助用户完成设置:
-
安装 CLI(如果找不到
hindsight命令):curl -fsSL https://hindsight.vectorize.io/get-cli | bash -
创建配置文件 - 向用户询问:
- API URL:他们可自托管的 Hindsight 服务 URL(例如
https://hindsight.mycompany.com) - API Key:他们的身份验证密钥
mkdir -p ~/.hindsight cat > ~/.hindsight/config << 'EOF' api_url = "<user's server URL>" api_key = "<user's API key>" EOF chmod 600 ~/.hindsight/config - API URL:他们可自托管的 Hindsight 服务 URL(例如
-
获取 bank ID - 向用户询问他们的 bank ID(例如
team-myproject)
设置完成后,请在以下所有命令中使用该 bank ID。
Hindsight 的工作原理
当你调用 retain 时,Hindsight 不会原样存储该字符串。服务会运行一条内部流水线,它会:
- 使用大模型从内容中提取结构化事实
- 识别实体(人物、工具、概念)并关联相关事实
- 构建事实之间的时间与因果关系
- 生成用于语义搜索的嵌入
这意味着你应该传入丰富、完整上下文的内容——服务比预先总结的字符串更擅长提取重要信息。你的工作是决定何时存储,而不是提取什么。
命令
将 <bank-id> 替换为用户实际的 bank ID(例如 team-frontend)。
存储记忆
使用 memory retain 存储你学到的内容。传入完整上下文——原始观察、会话笔记或详细描述:
hindsight memory retain <bank-id> "The project uses ESLint configured with the Airbnb rule set and Prettier for formatting. Auto-fix on save is enabled in the editor config."
hindsight memory retain <bank-id> "Ran the test suite with NODE_ENV=test. Tests pass. Without NODE_ENV=test, the suite fails with a missing config error." --context procedures
hindsight memory retain <bank-id> "Build failed on Node 18 with error 'ERR_UNSUPPORTED_ESM_URL_SCHEME'. Switched to Node 20 and build succeeded." --context learnings
hindsight memory retain <bank-id> "Alice reviewed the PR and asked for verbose commit messages that explain the motivation, not just what changed." --context preferences
你也可以传入带时间戳的原始对话记录:
hindsight memory retain <bank-id> "[2026-03-16T10:12:03] User: The auth tests keep failing on CI but pass locally. Any idea?
[2026-03-16T10:12:45] Assistant: Let me check the CI logs. Looks like the tests are running without the TEST_DATABASE_URL env var set — they fall back to the production DB URL and hit a connection timeout.
[2026-03-16T10:13:20] User: Ah right, I never added that to the CI secrets. Adding it now.
[2026-03-16T10:15:02] User: That fixed it. All green now." --context learnings
回忆记忆
在开始任务之前使用 memory recall 获取相关上下文:
hindsight memory recall <bank-id> "project conventions and coding standards"
hindsight memory recall <bank-id> "Alice preferences for this project"
hindsight memory recall <bank-id> "what issues have we encountered before"
hindsight memory recall <bank-id> "how does the auth module work"
反思记忆
使用 memory reflect 综合上下文:
hindsight memory reflect <bank-id> "How should I approach this task based on past experience?"
重要:何时存储记忆
这是一个共享的团队记忆库。存储对团队有益的知识。对于个人偏好,请包含该人员的姓名。
项目/团队约定(共享)
- 编码标准(“项目使用 2 空格缩进”)
- 必需的工具和版本(“项目要求 Node 20+、PostgreSQL 15+”)
- Lint 和格式化规则(“ESLint 使用 Airbnb 配置”)
- 测试约定(“集成测试要求 Docker 正在运行”)
- 分支命名和 PR 约定
个人偏好(归属于具体人员)
- 个人编码风格(“Alice 偏好显式类型注解”)
- 沟通偏好(“Bob 偏好详细的 PR 描述”)
- 工具偏好(“Carol 使用 vim 键位绑定”)
流程结果
- 成功完成任务所采取的步骤
- 有效(或失败)的命令及其原因
- 发现的变通方法
- 解决问题的配置
任务中的经验教训
- 遇到的 Bug 及其解决方案
- 有效的性能优化
- 架构决策及其理由
- 依赖项或版本要求
团队知识
- 面向新团队成员的入门信息
- 常见陷阱及如何避免
- 架构决策及其理由
- 与外部系统的集成点
- 领域知识和业务逻辑说明
重要:何时回忆记忆
始终在以下情况之前回忆:
- 开始任何非平凡任务
- 做出关于实现的决策
- 建议工具、库或方法
- 在项目的新领域编写代码
- 回答关于代码库的问题
- 当团队成员询问某件事如何工作时
最佳实践
- 立即存储:当你发现某些内容时,立即将其存储起来
- 传递丰富的上下文:包含完整的观察结果,而不是预先总结的字符串——服务会自动提取事实
- 包含结果:存储发生了什么以及为什么,包括失败和解决方法
- 先回忆:在开始工作之前,始终检查相关上下文
- 以团队为先:存储能帮助其他团队成员的知识
- 归属个人偏好:存储“Alice 审查了 PR 并要求 X”,而不仅仅是“用户偏好 X”
- 区分项目与个人:项目约定适用于所有人;个人偏好因人而异
- 使用
--context表示元数据:--context标志用于标记记忆的类型(例如procedures、learnings、preferences),而不是替代完整内容