前言¶
在用 DeepSeek Harness(DSH)做多场景对话时,一个会话可能需要不同的身份:有的要耐心讲题,有的要直接指出代码问题,有的要扮演特定角色。传统方式是修改系统提示词,但这会全局生效,改动成本高、容易冲突。DSH 的理念是「一切皆插件」,我们可以在会话层叠加一个轻量层的身份定义:谁在说话、语气如何、写代码的习惯,以及不能跨越的边界。dsh-character-cards 就是为此设计的插件。
这是什么¶
dsh-character-cards 是一个 DSH 插件,让每个会话可以拥有独立的角色卡片(.dshcd 文件)。它定义了身份、语气、代码风格、工作流程和硬性约束,并支持通过可视化编辑器管理。维护者为 sildo466。它不改变系统提示词,而是在会话侧注入一层身份与风格,与任何预设共存,并可以在会话中随时切换。
核心功能¶
- 按会话切换身份:每个会话可以独立选择一张角色卡片,定义说话人是谁、语气如何、写代码的风格,以及必须遵守或不做的约束。
- 可视化编辑器:在设置界面中创建、编辑卡片,分组字段(身份、语气、代码、工作流程、边界),无需手写 JSON。
- 即时生效与重新应用:切换卡片后,当前会话立即应用新身份;保存修改后,可对正在使用的会话点击「重新应用」以推送最新版本。
- 默认卡片与全局默认:可以为新会话设置全局默认卡片,也可以在会话侧单独选择卡片或不使用卡片。
- 导入导出与分享:卡片是单个 .dshcd 文件,可导出、发送给他人、再导入,保持字段兼容。
- 示例卡片:插件提供 example_cards 目录,可导入示例后修改。
安装与启用¶
DeepSeek Harness 版本要求:>= 0.2.0-rc.2;Node.js 版本要求:>= 22。
安装命令:
dsh plugin --profile <profile> add dsh-character-cards
桌面客户端:打开设置 -> 插件,安装 dsh-character-cards,然后重启应用。安装后无需重启即可创建、编辑和切换卡片。
典型用法¶
- 安装插件后,在设置中找到「角色卡」入口,点击「新建卡片」。
- 在编辑器中填写角色的身份、语气、代码风格、工作流程和边界。例如:
- 身份:初级导师,负责用通俗语言解释概念。
- 语气:耐心、鼓励,使用「我们一起来看看」「这个点很重要」等短语。
- 代码:注释简明、命名清晰,优先使用标准库而非第三方库。
- 工作流程:先解释概念,再给小示例,最后让用户自己试写。
- 边界:不跳过基础知识讲解,不提供未经解释的 API 调用。 - 保存卡片后,在会话侧的卡片选择器中:
- 选择「具体卡片」:将该会话固定为该角色。
- 选择「跟随默认」:使用全局默认卡片。
- 选择「无角色卡片」:恢复到宿主默认人格。 - 随时切换卡片,会话上下文保持不变,仅身份与风格更新。对正在使用的会话,点击卡片行的「重新应用」可推送最新保存的版本。
适用场景与注意¶
适合在以下场景使用:需要区分不同角色的多会话工作流(如教学、代码审查、角色扮演);希望在不修改系统提示词的情况下为每个会话注入风格约束;需要与同事分享一套角色定义。注意:
- 该插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。
- 如果预设已经承载完整人格,再叠加角色卡片可能导致身份冲突,建议二选一。
- 当前桌面配置由应用管理,安装与更新建议在桌面客户端内进行。
- 保存卡片不会静默更新正在进行的会话,需手动点击「重新应用」。
结尾¶
dsh-character-cards 让你用轻量层的方式,为每个会话注入专属身份与风格,无需改动系统提示词。你可以为教学、代码审查、角色扮演等场景定制卡片,并在会话间随时切换。更多细节见插件目录页与 GitHub 仓库。
参考资料¶
- https://github.com/sildo466/dsh-character-cards
- https://www.skillhub.cn/plugins/sildo466/dsh-character-cards