DeepSeek Harness 插件

baaai123/dsh-memory-protocol

Star 数 ★ 2 分类 记忆 收录于 2026-08-15

记忆强制协议插件:桥接 opencode-memory MCP 服务器,工具调用前强制 memory_weave、每轮自动存档、自动注入记忆上下文。

安装

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:baaai123/dsh-memory-protocol

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

English | 中文

为 DeepSeek Harness 打造的长期记忆插件 — 桥接 opencode-memory MCP 服务器,并附加强制记忆协议。

哼,杂鱼又忘事了吧? 工具调用前先给我 weave 记忆、每轮对话自动存档——省得你三秒重置、重复学习。才、才不是特地为你准备的,只是看不得你每次从零开始犯蠢。

作用

这个 bundle 装两样东西:

  1. memory-mcp — 通过官方 @deepseek-ai/dsh-mcp-client 桥接 opencode-memory 的 Python MCP 服务器(15 个 memory_* 工具:weave/search/ingest/classify/teach_skill 等)
  2. memory-protocol — 强制协议插件,三个 hook:
    • tools/pre-execute — 未 weave 就调其他工具 → 硬拒绝
    • agent/pre-step — 每轮自动 weave 并注入记忆上下文
    • agent/turn-stopping — 每轮自动 ingest 对话

安装

前置依赖:Python MCP server(memory-skill)+ 嵌入模型(bge-large-en-v1.5)。插件启动时会自动引导安装(npm run bootstrap 或插件 autoBootstrap);也可手动安装(下面的命令)。可用 MEMORY_SKIP_BOOTSTRAP=1 关闭自动引导。

# 1. 先装 opencode-memory 的 Python server(提供 memory_skill.mcp_server)
pip install "memory-skill[onnx]" optimum[onnxruntime] huggingface_hub

# 2. 下载嵌入模型(约 1.3GB,自动转 ONNX;国内网络可加 HF_ENDPOINT=https://hf-mirror.com)

# 3. 安装本插件
dsh plugin --profile web add dsh-memory-protocol

默认用 python3 -m memory_skill.mcp_server 启动 MCP server。路径可通过环境变量覆盖:

环境变量 默认 说明
MEMORY_SKILL_PYTHON python3 解释器路径
MEMORY_SKILL_DIR process.cwd() memory-skill 项目目录
MEMORY_SKILL_DB_PATH ~/.memory-skill/memory.db 记忆库路径(server 已内置此绝对默认值;如需共享 opencode 的库,显式指向该库文件)
IMPORTANCE_API_KEY (未设) LLM 重要性评分 key(可选)

自动引导

插件检测到 memory MCP 工具未注册时,会自动触发 scripts/bootstrap-memory.mjs(也可手动 npm run bootstrap):

  1. pip install --user "memory-skill[onnx]" optimum[onnxruntime] huggingface_hub(已安装则跳过)
  2. 下载 BAAI/bge-large-en-v1.5 并转 ONNX(默认 models/bge-large-en-v1.5/;直连失败自动重试 HF_ENDPOINT=https://hf-mirror.com)
环境变量 默认 说明
MEMORY_SKIP_BOOTSTRAP (未设) =1 关闭自动引导
MEMORY_SKIP_INSTALL (未设) =1 跳过 pip install
MEMORY_SKIP_MODEL (未设) =1 跳过模型下载
MEMORY_MODEL_PATH $MEMORY_SKILL_DIR/models/bge-large-en-v1.5 指定模型目录(已有 model.onnx 则跳过下载)

没有 Python 侧时,插件以 fail-open 模式运行(不强制执行协议、agent 不被阻塞),并显示一次性引导提示。 引导完成并重启 dsh 后,memory 工具注册、严格协议自动恢复。

配置

memory-protocol 的配置项(cordis.patch.yml 中可调):

config:
  enforceWeave: true    # 工具调用前强制 weave(未 weave 拒绝)
  injectWeave: true     # 自动注入记忆上下文
  autoIngest: true      # 每轮自动存档
  allowlist: []         # 豁免工具名(除 memory_* 外)

工作原理

dsh (Web / headless)
  ├─ memory-mcp      @deepseek-ai/dsh-mcp-client ──> python3 -m memory_skill.mcp_server
  │                                                    └─ 15 个 mcp__opencode_memory__* 工具
  └─ memory-protocol 强制协议
       ├─ tools/pre-execute     未 weave → deny
       ├─ agent/pre-step        weave + 注入
       └─ agent/turn-stopping   自动 ingest

License

MIT

截图

cover

架构 强制执行演示 配置项
architecture demo config

演示为真实运行输出:未 weave 调工具 → ⛔ DENY;pre-step 自动 weave 并注入记忆上下文;turn-stopping 自动 ingest。

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。