dsh-user-style:让 AI 记住你的工作风格

DSH 每次开启新对话,AI 都会重置状态,不再记得你习惯的交互方式。如果需要 AI 在每个新会话中都遵循特定的指令(例如:优先确认目标、先讲原理再给代码、或是要求每完成一步就自动备份),就需要手动调整系统提示词。这种方式重复且容易遗漏。

dsh-user-style 是一个用于管理用户工作风格档案的插件。它将你的偏好转化为可编辑的配置,并在每次提示词组装前注入系统提示词。通过悬浮面板和三层作用域机制,你可以让 AI 在所有对话中保持一致的行为模式。

核心功能

  • 悬浮面板:右下角提供一枚可拖动的小药丸,点击即可快速切换档案和作用范围,无需进入深层设置。
  • 三层作用域:支持全局默认、按工作区绑定(针对特定目录)、以及仅当前会话临时覆盖。上层配置会覆盖下层配置。
  • 四套内置预设:提供「严谨审慎」、「快速直接」、「节点备份」、「教学讲解」四种预设,可根据实际场景选择。
  • AI 协议修改:通过 user_style 工具,AI 可以主动提议修改风格,但必须经你确认后才会写入。
  • 默认不启用:插件安装后不会自动生效,需要手动开启。
  • 零外部依赖:不依赖宿主侧的第三方库,确保在任意环境下都能加载。

安装与启用

安装此插件后,必须完全退出并重启 DeepSeek Harness 才能生效。宿主侧不支持热更新。

方式一:使用 DSH CLI(推荐)

在侧边栏点击「插件」→「安装」,输入仓库地址:

github:himoew/dsh-user-style

方式二:使用一键脚本

克隆仓库并运行安装脚本:

git clone https://github.com/himoew/dsh-user-style.git
cd dsh-user-style
install.bat

脚本会自动处理依赖安装、创建 Junction(目录联接)以及备份 package.json。

方式三:手动安装

在 <DSH_HOME>\profiles\desktop\ 目录下:

# 1. 创建指向仓库的目录联接
New-Item -ItemType Junction -Path ".\node_modules\dsh-user-style" -Target "<本仓库绝对路径>"

# 2. 编辑 package.json
# 在 dependencies 中添加 "dsh-user-style": "link:<本仓库路径>"
# 并将 "dsh-user-style" 追加至 dsh.profile.bundles 数组

安装完成后,在插件列表中找到 dsh-user-style 并将其状态切换为「运行」。

使用方法

悬浮面板操作

右下角的悬浮面板显示当前状态:
- 蓝点:已启用;灰点:未启用
- 显示当前生效的档案名和作用范围
- 可拖动:位置会自动保存;拖到屏幕边缘会自动隐藏,拖回恢复

点击面板后,你可以:
1. 选择预设档案。
2. 选择作用范围(全局 / 仅本会话 / 应用到此工作区)。
3. 选择后立即生效,下一条消息将携带新的系统提示词。

三层作用域逻辑

生效优先级从高到低:
1. 仅本会话:临时覆盖当前对话。
2. 工作区绑定:针对特定项目目录生效。
3. 全局默认:默认基础风格。

工作区匹配采用「最长前缀 + 路径边界」规则。例如,将 D:\proj 绑定为 A 档,那么 D:\proj\inner 也会使用 A 档,而 D:\proj-other 则不会被误匹配。

内置预设说明

内置预设通过逐条原样注入系统提示词来定义行为:

预设名称 核心行为
严谨审慎 目标不清晰时不动手;不确定/歧义时不假设;改代码/文件前先确认。
快速直接 有成熟方案直接用;不自检;可用就实测;结束时总结原因与步骤。
节点备份 每跑通一个功能就主动备份;按节点分点汇报;半成品不算节点。
教学讲解 先讲原理后结论;先给最小可运行示例;解释「为什么」。

让 AI 修改风格

插件注册了 user_style 工具。你可以直接告诉 AI 你希望的风格,例如「以后回答都先给结论」。
AI 会复述确认,只有在你确认后,它才会通过工具写入新的档案。这避免了 AI 误改配置。

数据位置与维护

所有配置与记录存储在以下位置:

<DSH_HOME>\dsh-user-style\store.json       # 档案与各级绑定关系
<DSH_HOME>\dsh-user-style\trace.jsonl      # 最近 40 次提示词组装留痕
<DSH_HOME>\dsh-user-style\last-render.txt  # 最近一次注入的文本内容

升级插件不会修改 store.json。升级只会刷新未编辑过的内置预设,你自定义的档案和绑定关系会保留。

卸载

运行卸载脚本:

uninstall.bat

脚本会清理链接和配置清单中的记录,但不会删除 store.json。若要彻底删除,需手动删除整个 <DSH_HOME>\dsh-user-style\ 目录。

技术约束与注意事项

  • 脚本编码:scripts/*.ps1 必须保存为 UTF-8 with BOM。Windows PowerShell 5.1 若读取无 BOM 的文件,中文内容会变成乱码。
  • 工具参数:注册工具时参数必须是标准 JSON Schema。属性级的 required: true(defineTool 的写法)会导致服务商报错,必须使用数组格式 required: ['action']。
  • 宿主依赖:插件刻意不依赖 @deepseek-ai/* 等外部包,以确保通过 Junction 方式安装时能正常加载。
  • DSH 版本:插件要求 dsh.engines.dsh: ">=0.2.0-rc.1 <0.2.1-0"。

结语

dsh-user-style 通过结构化的系统提示词注入,解决了多会话场景下 AI 风格不一致的问题。默认禁用的设计保证了它不会影响现有对话,仅在需要时生效。配合悬浮面板和作用域管理,它是一个轻量且高效的协作工具。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜