deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
Claude Code 风格长期记忆插件(dsh 版):跨会话持久记忆,会话启动自动注入。
MEMORY.md 索引 + YAML frontmatter,与 Claude Code 格式 1:1 兼容(可直接读取/导入 ~/.claude 下的既有记忆)。MEMORY.md 前 200 行 / 25KB + 最新 200 个记忆文件,与 Claude Code 计量一致)。memory(add / update / delete / list / read / import-claude)。~/.dsh/memory/ # 用户级记忆
├── MEMORY.md # 索引(一行一条:- [标题](文件.md) — 描述)
└── <name>.md # 记忆文件(frontmatter + 正文)
~/.dsh/memory/projects/<key>/ # 工作区级记忆
├── MEMORY.md
└── <name>.md
<key> 由工作区路径变换得到(: \ _ → -),与 Claude Code 的 ~/.claude/projects/<key>/memory/ 一一对应,例如 C:\work\my-project → C--work-my-project。---
name: <记忆名>
description: <一行描述——用于将来判断相关性>
type: <feedback | reference | project>
modified: <ISO 时间戳,自动维护>
---
<事实;feedback/project 型按「事实 + **Why:** + **How to apply:**」结构>
memory 行的 config)| 键 | 默认 | 说明 |
|---|---|---|
memoryRoot |
~/.dsh/memory |
记忆根目录 |
scope |
auto |
auto(有工作区用 workspace,否则 user)/ user / workspace |
maxIndexLines |
200 |
注入的 MEMORY.md 行数上限 |
maxIndexBytes |
25000 |
注入的 MEMORY.md 字节上限 |
maxList |
200 |
注入/列出的记忆文件数上限 |
includeInPrompt |
true |
是否注入系统提示词 |
importClaudeMemory |
true |
list/注入时若 dsh 侧为空,回退只读 Claude Code 同 key 目录 |
projectAliases |
{} |
路径 key → 统一 key 的映射(见下) |
Claude Code 按工作区路径切分记忆,同一项目(不同分支/多个 checkout)的记忆会散落在多个目录。projectAliases 把这些路径 key 映射到一个统一 key,使记忆属于项目而非路径——在任何 checkout 里工作,读写同一份记忆:
projectAliases:
C--work-my-project-a: my-project
C--work-my-project-b: my-project
新增 checkout 时,把它的路径 key 加一行映射即可。别名配置应写在 profile 的 cordis.patch.yml 覆盖层(该行 config 为整行替换,需同时重述其他字段)。
# 前置:安装 pnpm(dsh plugin 依赖)
npm install -g pnpm
# 安装(在本插件目录执行;dsh.bundle 声明会自动加入 profile bundles 层)
dsh plugin --profile web add .
# 升级(重新修改代码后)
dsh plugin --profile web update deepseek-harness-memory
# 回滚(记忆文件保留不删)
dsh plugin --profile web remove deepseek-harness-memory
重启 dsh web 后生效。无 pnpm 的兜底:把 deepseek-harness-memory 目录复制到 ~/.dsh/profiles/node_modules/deepseek-harness-memory/,并在 ~/.dsh/profiles/web/cordis.patch.yml 追加:
- insert:
- id: memory
name: 'deepseek-harness-memory'
两个途径:
importClaudeMemory: true(默认)时,若 dsh 侧无记忆,注入会回退读取 ~/.claude/projects/<同key>/memory/ 与 ~/.claude/memory/(只读,不改原文件)。memory action=import-claude——把 Claude Code 既有记忆复制到 ~/.dsh/memory/(原文件不动)。插件本体为纯 ESM JS(零运行时依赖,仅 node:fs/path/crypto),lib/index.js 依赖 @deepseek-ai/dsh-tools 与 @deepseek-ai/schemastery(从 profile 的 node_modules 解析)。
/memory、/toggle-memory 命令(dsh 无对等命令体系)。CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。