dsh-cc-haha-memory
by yihefeikong-rgb
DeepSeek Harness 持久记忆插件:记忆读写/检索工具、回合自动记录、项目作用域召回注入、管理界面,可非破坏导入 Claude Code 记忆。
Persistent memory for DeepSeek Harness: memory read/write/retrieve tools, per-turn auto-recording, project-scoped recall injection and a management UI, with non-destructive Claude Code memory import.
安装
dsh plugin --profile web add github:yihefeikong-rgb/dsh-cc-haha-memoryGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
一个面向 DeepSeek Harness(DSH) 的第三方持久记忆插件,参考并复刻 CC-HAHA 的项目记忆使用体验。
[!IMPORTANT] 本项目不是 CC-HAHA 官方组件,也不隶属于 CC-HAHA 或 DeepSeek。记忆理念与交互流程参考 CC-HAHA,插件代码使用 DSH 原生事件、工具、LLM 和 Web UI 接口独立实现。
能做什么
- 真实记住:用户明确说“记住”时,DSH 会先读取记忆索引,再显示
memory_remember工具调用;只有返回saved: true后才确认已记住。 - 独立文件:每条记忆保存为单独的 Markdown 文件,并由
MEMORY.md维护简洁索引。 - 项目隔离:每次只注入“通用 + 当前项目”,不会把所有项目记忆一次性塞进上下文。
- 新会话召回:按当前问题选择最多 5 条相关记忆正文,无需每次手动搜索。
- 自动记录:按回合评审值得长期保存的信息,失败时保留缓冲,不把模型错误伪装成“没有记忆”。
- 安全更新:同主题通过明确记忆 ID 更新;禁止模糊标题猜测覆盖,更新和删除前保存历史版本。
- 管理界面:会话页上方提供“记忆”标签、项目文件夹、搜索、新建、编辑和删除。
- Claude 记忆导入:可非破坏地导入现有 Claude Code 记忆;重复启动只跳过,不覆盖 DSH 中已更新的内容。
DSH 插件标识
仓库根目录的 package.json 包含 DSH 原生插件声明:
{
"dsh": {
"bundle": { "patch": "./cordis.patch.yml" },
"client": {
"platform": "web",
"inject": ["@deepseek-ai/dsh-client-runtime"]
}
}
}
cordis.patch.yml 负责挂载 host 插件,lib/client.js 负责加载会话页记忆 UI。
安装
要求:已经安装并能正常启动 DSH。
dsh plugin --profile web add github:yihefeikong-rgb/dsh-cc-haha-memory
安装后重启 DSH Web:
dsh web
进入任意会话后,顶部应出现“记忆”标签。首次验证可以发送:
请记住:这个项目使用 Rust 和 Tauri。
正常轨迹应包含:
Read MEMORY.md → memory_remember → saved: true
记忆文件默认位于:
~/.dsh/memory/
├── MEMORY.md
├── 通用/
└── <当前项目>/
└── <主题>.md
配置
默认配置位于 cordis.patch.yml:
- insert:
- id: dsh-memory
name: dsh-memory
config:
reviewEnabled: true
reviewInterval: 5
主要选项:
| 选项 | 默认值 | 说明 |
|---|---|---|
reviewEnabled |
true |
是否启用回合后自动评审 |
reviewInterval |
5 |
每多少回合评审一次 |
reviewTimeoutMs |
120000 |
后台评审总超时 |
recallMaxBytes |
25000 |
注入索引最大字节数 |
recallRelevantMaxBytes |
16000 |
相关正文最大字节数 |
记忆工具
插件注册 8 个工具:
memory_remember:显式“记住”的单次可见入口。memory_write:新建记忆。memory_read:读取完整记忆。memory_update:按 ID 更新并保存历史版本。memory_delete:删除并保存历史版本。memory_search:当前作用域全文搜索。memory_list:列出当前作用域索引。memory_suggest_tags:推荐已有标签。
隐私与安全边界
- 仓库和安装包不包含任何用户记忆、会话、日志、API Key 或本机 profile。
- 项目写入无法确认当前工作区时会失败,不会静默写进“通用”。
- Web API 运行在 DSH 本地同源信任边界内,不应把 DSH Web 端口暴露到不可信网络。
- 当前实现是单 DSH 进程内串行写入;不建议多个 DSH 实例同时共享同一个记忆目录。
本地开发
pnpm install --frozen-lockfile
pnpm test
pnpm run build
构建输出:
lib/index.js:DSH host 插件。lib/client.js:DSH Web UI 插件。
与 CC-HAHA 的关系
本项目重点参考了 CC-HAHA 的以下记忆设计:
- 每条记忆使用独立文件,
MEMORY.md只保存短索引。 - 用户明确要求记住时必须真实访问记忆系统。
- 写入前检查已有记忆,优先更新而不是制造重复项。
- 记忆只保存跨会话仍有价值的信息,计划和一次性任务不应写入长期记忆。
- 用户要求忽略记忆时,本轮按空记忆处理。
参考基线:NanmiCoder/cc-haha,本地审查提交 d52bbec707246f807416c2bc6b1cd67445cfe622,相关设计位于其 src/memdir/。
感谢 CC-HAHA 作者与贡献者提供优秀的记忆交互设计。完整署名与许可证见 THIRD_PARTY_NOTICES.md。
验证状态
- 自动化测试:50 项。
- 已验证:显式写入、真实文件路径、重复更新、新会话召回、跨项目隔离、后台评审终态、非破坏导入与连续重启幂等。
- 已验证平台:Windows + DSH Web。
License
English summary
An unofficial persistent-memory plugin for DeepSeek Harness, inspired by the project-memory workflow of CC-HAHA. It stores memories as project-scoped Markdown files, exposes visible memory tool calls, injects only global plus current-project context, and includes a Web UI memory tab.
原始 README: https://github.com/yihefeikong-rgb/dsh-cc-haha-memory/blob/main/README.md ↗
同类插件
查看全部 →
mnemon
LLM监督持久内存插件 — 基于图的召回,跨会话知识,单二进制。与DeepSeek Harness、Claude Code、OpenClaw及任何代理运行时兼容。

memtrace-public
面向 AI 编码 agent 的结构化记忆:双时态图谱、MCP 原生、零 LLM 调用;支持 Cursor · Claude Code · Codex · DeepSeek Harness · Hermes · VS Code · Windsurf

dsh-flowix-memory
将本地 flowix-cli 注册为 MCP 服务,让 agent 可以搜索、读取、创建和编辑 Flowix 备忘与思维导图产物。

flowix
笔记助你,记忆助你的代理。

engramory
AI代理的便携式内存协议 — 以静态规则加载;整理学科 + 参考规范 + 可选的钩子API

dsh-memory-evolve
为 DeepSeek Harness 提供纯插件实现的跨会话长期记忆与后台自我进化能力:五轨记忆、Git 分支感知、回合内自我审查、技能自我进化与技能管理器、四轨待办、COI 调度、会话广播、会话搜索、提示词管理器和临时信息便签;零核心修改、零运行时依赖,安装即用,卸载即净。