前言¶
在 DSH 里长时间对话时,常见指令要反复手打、选中的片段要复制到别处再粘回输入框、上下文快满却不好一眼看出占用。把便签、跟进、摘录和状态拆到浏览器外或多个插件页,又会打断对话节奏。Wingman 以一条 42px 贴边工具条挂在左侧栏与正文之间:不挤占正文宽度,点开再滑出面板,把速记、选中文字动作、常用指令、会话小结和对话状态收在同一侧。
这是什么¶
Wingman(包名 @bingomu/dsh-wingman)由 bingomu 维护,归类为 DSH 客户端插件。当前资料中的版本为 v1.0.5,MIT 许可证;运行要求 DSH ≥ 0.2.1-rc.5(package.json 中 engines.dsh 为 >=0.2.1-rc.5 <0.3.0-0)。
定位可以概括为:对话左侧的细长 dock——内置五颗入口(速记、选中文字、常用指令、会话小结、对话状态),另有自定义入口与设置。窗口宽度 ≤1100px 时,工具条改到输入框上方横排,约占 42px 高度。
社区目录:skillhub.cn/plugins/bingomu/dsh-wingman
源码与说明:github.com/bingomu/dsh-wingman
界面与布局¶
默认贴在左侧栏和正文之间的 42px 细条上,浅色/深色跟宿主主题走。收起后只剩一枚羽毛图标,可点击唤回或拖动换位置;拖近侧栏可吸附,位置会记住。
各入口在工具条上用颜色区分(资料中的排色):速记琥珀、选中文字浅绿、常用指令浅蓝、会话小结玫瑰、对话状态浅灰、自定义入口淡紫,设置齿轮为中性灰。
核心功能¶
速记(✎)¶
不离开当前对话,一句话记成三种形态之一:
- 便签:Enter 后请求
POST /dsh-sticky-wall/api/notes,落在便签墙(依赖便签墙插件 HTTP 接口)。 - 跟进:可选「明天 / 周五 / 3天后」等 due,走
POST /followup/add,并带上当前会话 id。 - 提醒:选时间或快捷按钮,到点由工具条弹提示;客户端每 30 秒轮询
GET /dsh-wingman/api/reminders,提醒数据写在本地reminders.json。
面板底部会显示便签与未完成跟进数量,以及最近各 3 条。
选中文字(✦)¶
在正文里选中至少 3 个字后点 ✦(输入框、文本域或本插件面板内选区不算)。面板分三块:
- 对话:引用到输入框、评论后引用。
- 留存:存便签、存常用指令、存跟进、复制。
- 交给模型:改写、提炼、解释、生成测试用例、中译英/英译中等;用当前会话模型,25 秒超时,传输错误自动重试一次。
结果可插入输入框(不自动发送)、复制或存入常用指令。
常用指令(❝)¶
308px 面板内搜索、分组;点一条插入当前输入框,光标在末尾,面板自动收回。首次启动会在本机 JSON 写入三条示例,可删。支持「+ 新建」、行内编辑删除,以及右上角钉住面板。
会话小结(≡)¶
- 这轮:让模型读最近十几条消息,输出 3 条结论 / 2 条未决 / 1 条下一步。
- 上个会话:从上一个有内容的会话接一句开场。
可重新生成或插入输入框(不发送)。
对话状态(◔)¶
只读一屏:上下文占用环(75% 黄、90% 红)、本轮 token(输入/输出/缓存读)、provider · model、正在跑的子代理数、未完成跟进条数(读 DSH_HOME/followup/tasks.json)。不打开面板不请求;缺项显示 —。
自定义入口¶
设置里可建最多 30 个:「打开路径」用系统默认方式打开文件/文件夹;「运行命令」在指定工作目录执行,20 秒超时,输出显示在面板。命令仅在本机执行,勿粘贴不明来源命令。
快捷键与手势(摘录)¶
| 操作 | 结果 |
|---|---|
| ⌘1–⌘5 / Ctrl+1–5 | 按设置顺序打开前五颗入口(工具条收起时不生效) |
| Esc | 收起面板 |
| 拖顶部握把 | 移动工具条;离侧栏右缘 56px 内松手可吸附 |
| 点磁铁 | 切换吸附;吸附后随侧栏折叠与窗口缩放 |
安装与启用¶
需要已安装 DSH,且版本满足 ≥ 0.2.1-rc.5。从 GitHub 安装指定标签:
dsh plugin add github:bingomu/dsh-wingman#v1.0.5
装完后对页面做一次硬刷新(Cmd/Ctrl+Shift+R)。本机开发也可把仓库里的 dsh-wingman 目录交给插件管理器的 install_bundle(软链接,改 client.js 可热更新);从 GitHub 安装的是实体包,需重新发版并重装。
典型用法¶
资料中的四步流程适用于「选中文字」:
- 在正文选中目标句子。
- 点工具条 ✦。
- 选引用、留存或交给模型的动作。
- 结果进入输入框、便签墙或常用指令,不会自动发送。
记一句话:点 ✎ → 选便签 / 跟进 / 提醒 → 回车。常用指令:点 ❝ → 搜索或点一条 → 内容进输入框待你编辑发送。
本机数据目录为 $DSH_HOME/wingman/(无 DSH_HOME 时为 ~/.dsh/wingman/),含 snippets.json、custom.json、reminders.json。常用指令上限 200 条;自定义入口 30 个。
适用场景与注意¶
适合谁:长期在 DSH 单页对话里工作、需要贴边速记/摘录、想复用指令模板、或想一眼看上下文与子代理状态的开发者。
权限与信任:客户端插件随当前 DSH 进程在浏览器/本机侧注入 UI;自定义「运行命令」在本机执行。安装前建议在 GitHub 阅读 client.js 与许可证,仅从可信来源安装。
依赖与边界(README 已知项摘要):
- 速记里的便签/跟进依赖对应插件的 HTTP 接口,缺失时只提示、不静默丢内容。
- 选中文字的 AI 动作用掉一次模型调用;尚无 agent 工具直接读写常用指令。
{光标}占位目前会被去掉,光标停在插入末尾。- 复制依赖剪贴板权限;跨页选区不处理。
DSH 社区插件目录为独立站点,与 DeepSeek / 幻方无官方从属关系;本文事实以仓库 README 与 package.json 为准。
结尾¶
Wingman 把速记、选区动作、指令片段、小结和状态收成一条贴边工具条,尽量少改布局和对话流。若要安装或看更新,可打开 Skillhub 目录页 与 GitHub 仓库;实现细节见仓库内 docs/01-design.md。