快速了解
它能做什么
为 DeepSeek Harness 提供人设卡、按会话/工作区切换以及持久智能体记忆。
本站提供的是中文说明,不代表该项目或 Plugin 自身提供中文界面;语言支持请以上游文档为准。
deepseek-harness Profile
DSH >=0.1.0-rc.7; peer ranges include rc.7, rc.8, rc.1.1, rc.1.2, and rc.1.5 releases
证据已验证
核对日期 2026/9/10 UTC 14:04
选择前先看
在 DeepSeek Harness 设置中创建具名 Markdown 人设卡,按工作区或会话选择默认人设,并由插件管理关联记忆文件。插件按会话、工作区、默认卡的优先级解析人设,并可将受长度限制的记忆注入提示词。
适合谁
希望跨聊天复用人设、保留长期上下文,同时不想手动维护人设和记忆文件的 DeepSeek Harness 用户。
常见任务
- 设置默认人设卡,并为单个会话临时切换人设。
- 为不同工作区分配不同的人设。
- 让智能体在多个会话之间保留与任务相关的记忆。
- 首次运行时导入文档所述的 v0.5 之前基于文件的人设卡和记忆数据。
权限与数据
使用 DSH 设置命名空间及插件管理的本地记忆文件。
权限- 注册五个面向智能体的工具:memory_append、memory_read、memory_rewrite、soul_read 和 soul_update。
- 添加网页设置界面和会话标题中的人设选择器。
- 在 soul-md 设置命名空间中保存人设卡、当前选择、会话选择和工作区选择。
- 按需在 `$DSH_HOME/soul-md/memory/` 下创建全局及按人设卡划分的记忆文件。
- 首次运行时可导入文档所述的旧版人设卡和记忆数据。
局限
- 需要 DSH 0.1.0-rc.7 或更高版本;rc.6 用户须使用文档指定的 0.5.6 版本。
- 人设卡中未知的 `{{...}}` 提示词变量没有转义方式,可能导致渲染失败。
- 注入提示词的记忆长度受配置限制;文档默认从文件开头最多读取 8,000 个字符。
DSHub 已核对
- 0.6.2 版本具有已验证的包清单、Cordis bundle patch 和不可变 Git 源提交。
- 仓库声明已针对 DSH 0.1.0-rc.7、0.1.0-rc.8 和 0.1.1-rc.1 测试。
DSHub 未核对
- 本次整理未实际执行安装或运行时行为验证。
- npm 包内容未经过审计,但已验证注册表身份。
固定版本安装
安装 dsh-soul-md
这个Plugin Bundle没有 DSH Plugin 安装操作,请根据源码文档使用真实交付方式。
维护者原文
项目 README
dsh-soul-md
GitHub: Scorp1o117/dsh-soul-md · npm: dsh-soul-md
Part of the DeepSeek Harness Enhancement Suite — Vision · Soul/Persona · Long-term Memory · Plugin Marketplace.
Persona + long-term memory for DeepSeek Harness — zero file management:
In Settings → 人设卡, type a card name and its content, hit save. The plugin manages everything else.
What you get
- Persona cards — the card content is rendered into the system prompt as
the
soul:personasection. Multiple cards are supported; pick a default, and switch per chat from the conversation header (a "人设" select). - Long-term memory — the agent gets five tools:
memory_append/memory_read/memory_rewrite— a persistent memory file (Agent.md / memory.md style). The active persona card has its own memory; otherwise the global memory is used.soul_read/soul_update— the AI reads and evolves its own persona card: when it notices a stable trait, preference, or value of its own, it folds it into the card. It "grows" across sessions instead of resetting every time.- The memory is also injected as a
soul:memoryprompt section (capped) so the agent always sees its memories.
- Resolution per prompt assembly:
session choice (chat switcher) > workspace mapping > default card > none. Switching applies from the next turn — no restart. - Workspace personas (v0.5.2): Settings → 人设卡 lists every workspace with a card dropdown — sessions of that workspace use the assigned card by default (session-level switching still wins). Workspaces come from dsh's durable workspace registry, so no paths to type.
Install
The plugin is a plain Cordis row. Mount it in a profile patch
($DSH_HOME/profiles/<name>/cordis.patch.yml):
- insert:
- id: soul-md
name: 'dsh-soul-md' # after: pnpm add dsh-soul-md in the profile
Then restart dsh web and open Settings → 人设卡: type a name + content, save.
Where things live (you don't need to care, but for reference)
- Persona cards: stored in the
soul-mdsettings namespace (settings.yaml), ascards: { name -> markdown }+active+ per-sessionsessions. - Memory files: plugin-managed under
$DSH_HOME/soul-md/memory/(global.md+ one file per card), created on demand. - Upgrading from ≤ v0.4 (file-based)? The plugin auto-imports the old
pathcard (as "默认") and the old memory file on first run.
Config
| Field | Default | Meaning |
|---|---|---|
cards |
{} |
Persona cards: name → markdown content (managed from the UI). |
active |
'' |
Default card name; empty disables the persona by default. |
sessions |
{} |
Per-session choice (sessionId → card name / none / ''); written by the chat switcher. |
workspaces |
{} |
Per-workspace choice (workspace path → card name / none / ''); written from the settings page. |
workspaceList |
[] |
Read-only workspace list (path + title), maintained by the host from dsh's workspace registry. |
memory.maxBytes |
1048576 |
memory_append / memory_rewrite refuse to exceed this size. |
memory.inject |
true |
Render the memory as the soul:memory prompt section. |
memory.injectMaxChars |
8000 |
Cap for the injected section (from the file head). |
memory.order |
0.5 |
Prompt section order for the injected memory section. |
| legacy fields | — | path, fallback, order, complete, watch, debounceMs, soulMaxBytes, personas, roster, memory.path… kept so old composition entries and settings still validate; only used for the one-time import. |
Notes
- Never write
{{/}}in a card body — they are prompt-variable syntax; unknown variables fail rendering (no escape syntax yet). - Persona/memory sections resolve per assembly, so steady cards stay byte-identical (KV-cache friendly) and edits hot-apply.
- DSH exposes the registered
soul-mdsettings namespace directly; the plugin does not modify files in the host installation. - Suggest putting work-quality rules in the card (e.g. "task quality first") so roleplay never degrades real work.
- Version 0.5.8 and newer require DSH
0.1.0-rc.7or newer and are tested against0.1.0-rc.7,0.1.0-rc.8, and0.1.1-rc.1. - DSH
0.1.0-rc.6users must pindsh-soul-md@0.5.6, the last release carrying the legacy settings-allowlist compatibility patch.
License
MIT
有意识地管理
安装与管理
前置条件与目标 Profile
目标: deepseek-harness Profile
交付方式: Git Bundle — Scorp1o117/dsh-soul-md#84e1cea06a717d402daa233d72d8752ffc29b168。
验证、更新与移除
显示生命周期命令
dsh plugin --profile deepseek-harness list兼容性与访问范围
Requires DSH 0.1.0-rc.7+; tested through 0.1.1-rc.1: DSH >=0.1.0-rc.7; peer ranges include rc.7, rc.8, rc.1.1, rc.1.2, and rc.1.5 releases。
风险事实
证据与编辑审查Manifest、Bundle patch、分发与新鲜度
不可变证据
审查状态与源码活动
请审阅人设卡内容:它会被渲染到系统提示词中,而且智能体可通过插件工具修改人设和持久记忆。
AI 审查于 2026/9/10 UTC 14:05。GitHub 事实核对日期: 2026/9/10 UTC 14:05。
自当前证据基线以来,没有记录到重要源码变化。