前言¶
在 OpenClaw 里,助手往往不只是一次对话的模型调用,而是围绕工作区积累下来的身份、偏好、操作规则与长期记忆:SOUL.md、IDENTITY.md、USER.md、AGENTS.md、BOOTSTRAP.md、MEMORY.md 以及 memory/ 下的日记式记录,共同构成可延续的上下文。若把部分工作流迁到 DeepSeek Harness(DSH),常见做法是再建一套记忆或做一次大导入,容易与原有工作区分叉、重复维护。
dsh-openclaw-memory 的定位是迁移时的「连续性层」:让 DSH 直接读取你已有的 OpenClaw 工作区,在可配置的上下文预算与隐私边界内注入内容,并通过 DSH 原生 Sidebar 管理同一份 Markdown,而不是另起一套隐藏数据库。维护者为 GitHub 用户 zzy-fxxxexxxyxxx;npm 包版本在仓库 package.json 中为 0.1.4(以你安装时 registry 为准)。社区目录页:SkillHub 插件条目;源码与说明:GitHub 仓库。
这是什么¶
一句话:dsh-openclaw-memory 是 OpenClaw 与 DSH 之间的共享工作区桥接插件——同一套 Markdown 源文件,两个客户端可读可写(在插件允许范围内),不强制复制或导入到第二套记忆系统。
README 中的关系可以概括为:
OpenClaw workspace ──┬──> OpenClaw
└──> dsh-openclaw-memory ──> DSH
One workspace. Two clients. No duplicate memory store.
面向对象主要是:当前使用 OpenClaw、正在把部分流程迁到 DSH,且希望保留同一身份、偏好、指令与已积累记忆的用户。
核心功能¶
下面只列 README 与仓库元数据中已写明的能力。
共享工作区,无第二套记忆库¶
将插件 root 指向你已在用的 OpenClaw 工作区。没有导入向导、隐藏数据库或自动文件迁移;文件留在原处,OpenClaw 与 DSH 以同一目录为事实来源(若两者指向不同目录,则不算共享,需单独核对)。
可配置的上下文注入与预览¶
- Bootstrap 文件:可独立选择是否纳入
AGENTS.md、SOUL.md、IDENTITY.md、USER.md、BOOTSTRAP.md、MEMORY.md。 - 每日记忆:可选纳入近期
memory/YYYY-MM-DD.md,以及每天最多四个最新的memory/YYYY-MM-DD-*.md。 - 预算与截断:支持按文件与总量设置字符上限;Injection Preview 可查看组装后的快照、各文件占用、截断状态,再决定是否依赖该上下文。
contextInjection模式:always:每次模型请求都组装上下文;continuation-skip:同一 agent 在源文件或相关配置未变时复用未改动的快照;never:关闭面向模型的上下文注入与面向模型的搜索工具,profile 加载插件时仍可通过 Remote 访问文件。
Sidebar 编辑与 Remote¶
- Sidebar:浏览顶层 Markdown 与
memory/树,在源码与渲染预览间切换,编辑并保存;写入限制在允许的工作区表面,并有乐观版本校验。 - Memory search:通过
openclaw_memory_search做有边界的关键词检索。 - Remote API:经 DSH Typert Remote 提供列表、读取、搜索、预览及冲突安全写入;Settings / ConfigEditor 支持带乐观 revision 检查的 live 配置更新。
安全边界(默认)¶
插件刻意不是通用文件浏览器:默认排除类凭证文件名、JSON 产物、符号链接、绝对路径与路径穿越;共享工作区内容按数据处理,不高于 DSH 系统策略。includeCredentials: false 为默认;includeCredentials: true 需显式开启(README 截断处强调其为 opt-in)。
安装与启用¶
在 DSH profile 中安装已发布插件:
dsh plugin --profile web add dsh-openclaw-memory
本地开发时可链接 checkout(路径换成你的目录):
dsh plugin --profile web add link:/path/to/dsh-openclaw-memory
安装后,在 profile patch 中加入插件配置,或参考仓库中的 cordis.patch.yml。示例片段如下(root 须改为你自己的 OpenClaw 工作区路径):
- id: openclaw-memory
name: dsh-openclaw-memory
config:
root: /home/sunrise/.openclaw/workspace
contextInjection: continuation-skip
bootstrapFiles:
- AGENTS.md
- SOUL.md
- IDENTITY.md
- USER.md
- BOOTSTRAP.md
- MEMORY.md
bootstrapMaxChars: 20000
bootstrapTotalMaxChars: 60000
userMaxChars: 4000
dailyMemoryDays: 2
dailyFileMaxBytes: 16384
dailyFileMaxChars: 1200
dailyTotalMaxChars: 2800
includeDailyStartup: true
timeZone: Asia/Shanghai
includeCredentials: false
maxFileChars: 200000
说明:dsh.client.platform 为 web;bundle 通过 cordis.patch.yml 注入,与 --profile web 一致。
典型用法与迁移顺序¶
README 建议的谨慎迁移步骤可复现如下:
- 保持现有 OpenClaw 工作区不变;变更生产配置前按你平时的流程备份。
- 在测试或独立 DSH profile 安装插件,
root指向已含 OpenClaw 身份与记忆文件的工作区。 - 先收窄共享范围:只启用打算共享的文件,并保持
includeCredentials: false。 - 打开 Injection Preview,核对快照、预算与截断,再开启常规上下文注入。
- 逐步把流量切到 DSH,同时保留 OpenClaw,对照同一批文件验证 DSH 回复与 Sidebar 编辑行为。
日常使用流程在文档中概括为:从 DSH 首页进入插件入口 → 在 Sidebar 配置 handoff(共享根目录、bootstrap 与每日记忆)→ 用 Injection Preview 核对 DSH 实际收到的上下文 → 在 Sidebar 继续维护同一工作区 Markdown。
插件不会修改 OpenClaw 的 agent 配置;OpenClaw 与 DSH 若指向不同 workspace 目录,则不在共享同一事实来源。
适用场景与注意¶
适合:已在 OpenClaw 投入 persona / 偏好 / 规则 / memory/ 日记,并计划与 DSH 并行或逐步切换,且希望「一份 Markdown、两个客户端」、上下文注入可预览、可限量的场景。
注意:
- DSH 插件以当前 DSH 进程的权限运行;安装前请自行审阅 源码与 LICENSE,确认
root与配置项符合你的安全预期。 - 社区目录 SkillHub 是独立站点,与 DeepSeek / 幻方无官方从属关系;插件来自社区维护者,非官方应用商店内置项。
- 配置项与默认值以仓库 README 与
cordis.patch.yml为准;升级 npm 版本后建议重新对照文档。
结尾¶
dsh-openclaw-memory 把 OpenClaw 工作区当作唯一源,在 DSH 侧提供有界注入、预览、Sidebar 编辑与 Remote,减轻「迁到 DSH 就要重搭记忆」的成本。目录页:https://www.skillhub.cn/plugins/zzy-fxxxexxxyxxx/dsh-openclaw-memory;仓库:https://github.com/zzy-fxxxexxxyxxx/dsh-openclaw-memory。