感谢你对 TencentDB Agent Memory 项目的关注!我们欢迎来自社区的各种贡献——无论是报告问题、改进文档还是提交代码。
- 报告 Bug:在 GitHub Issues 中描述问题并提供复现步骤。
- 请求功能:在 Issues 中描述使用场景和你期望的解决方案。
- 改进文档:修复错别字、完善说明或补充示例。
- 提交代码:修复 Bug、实现新功能或优化性能。
- Node.js >= 22.16.0
- npm 或 pnpm
- OpenClaw >= 2026.3.13
本项目无需编译。Node.js 22.16+ 原生支持 TypeScript 类型剥离,OpenClaw 直接加载 .ts 源码运行。
# 克隆仓库
git clone https://github.com/Tencent/TencentDB-Agent-Memory.git
cd TencentDB-Agent-Memory
# 安装依赖
npm install
# 将当前目录作为本地插件注册到 OpenClaw
openclaw plugins install --link .install --link 会将当前目录作为本地插件注册到 OpenClaw,修改源码后重启 Gateway 即可生效。
├── index.ts # 插件入口
├── openclaw.plugin.json # OpenClaw 插件清单
├── src/
│ ├── config.ts # 配置管理
│ ├── conversation/ # L0 对话层 — 原始对话捕获
│ ├── record/ # L1 记录层 — 结构化信息提取
│ ├── scene/ # L2 场景层 — 场景归纳与聚合
│ ├── persona/ # L3 画像层 — 用户画像构建
│ ├── store/ # 存储层 — SQLite/向量数据库
│ ├── hooks/ # OpenClaw 钩子集成
│ ├── prompts/ # LLM 提示词模板
│ ├── tools/ # 工具函数
│ ├── utils/ # 通用工具
│ └── report/ # 健康检测与报告
├── hermes-plugin/ # Hermes 智能体插件适配
├── scripts/ # 辅助脚本(Gateway 控制等)
├── CHANGELOG.md # 变更日志
└── README.md # 项目说明
- Fork 本仓库并基于
main分支创建你的特性分支。 - 进行修改 — 保持每个提交专注且原子化。
- 测试 — 确保现有功能不受影响。
- 更新文档 — 如果更改涉及用户可见行为,请同步更新 README 或相关文档。
- 提交 PR — 描述修改动机、变更内容,并关联相关 Issue。
| 分支 | 用途 |
|---|---|
main |
默认分支,PR 提交目标 |
使用以下格式编写 commit message:
<类型>(<范围>): <简要描述>
<详细说明(可选)>
Closes #123
Signed-off-by: Your Name <your-email@example.com>
与 PR 模板中的 Change Type 对应:
| 类型 | 说明 | 对应 PR Change Type |
|---|---|---|
fix |
Bug 修复 | Bug fix |
feat |
新功能 | New feature |
docs |
文档更新 | Documentation update |
perf |
代码优化 | Code optimization |
refactor |
代码重构(不影响功能) | Code optimization |
test |
测试相关 | — |
chore |
构建/工具/依赖变更 | — |
store、hooks、persona、scene、record、conversation、gateway、hermes
- TypeScript:使用项目已有的代码风格,保持一致性。
- 命名:使用有意义的变量名和函数名,优先使用英文。
- 注释:关键逻辑处添加注释,说明"为什么"而非"做了什么"。
- 导入顺序:Node.js 内置模块 → 第三方依赖 → 项目内部模块。
所有提交必须包含 Signed-off-by 行,表示你同意 开发者来源证书:
git commit -s -m "feat(store): add batch insert support"没有有效 Signed-off-by 的提交将不会被合并。
如果你发现安全漏洞,请通过邮箱 agentmemory@tencent.com 报告,我们会尽快处理。
提交贡献即表示你同意你的代码将在 MIT License 下许可。
再次感谢你的贡献!如有任何问题,欢迎在 Issues 中讨论。