dsh-desktop-context:在桌面端 system-prompt 组装中纠正 Web 环境说明

前言

DeepSeek Harness(DSH)桌面版与 Web 端共用一部分应用基础设施。组装 system-prompt 时,会继承 app:web-surface、harness:source 等段落:窗口可能被描述成「Web GUI」,ASAR 虚拟路径可能被写成「磁盘上的检出目录」。模型若按 Web 浏览器或本地源码树去理解环境,容易在诊断、刷新界面、更新路径等问题上做出不符合 Electron 桌面实际行为的判断。

dsh-desktop-context 是社区维护的 host-only 插件(维护者 lc69282940,MIT 许可证)。它通过 DSH 支持的 system-prompt/assemble 瀑布流,在真实的桌面 system-prompt 组装过程里替换已知的固定模板,而不是仅在对话里追加一句提醒。当前发布版本 0.1.0,在 Windows Desktop DSH 0.2.0-rc.2 上做过隔离集成验证;运行时要求 Node 24+。插件无 UI、无 HTTP 端点、不修改应用归档或替换核心服务。

这是什么

项 说明
名称 dsh-desktop-context
仓库 lc69282940/dsh-desktop-context
目录页 SkillHub 插件页
分类 客户端
定位 纠正桌面端继承的 Web 环境说明,保留工具、运行时策略、模型变量、人设及其他无关段落

激活条件:仅当真实进程入口识别为 dsh-desktop-host 时生效;仅有名为 desktop 的 profile 或单独设置 DSH_WEB_URL 不足以证明是桌面宿主。纯 Web/CLI 进程不受影响。若后续 waterfall 中存在完整的 deliberate complete prompt,仍以该完整 prompt 为准,插件不会强行注入额外说明。

核心功能

下面介绍插件在替换模板后,向模型补充的环境语义(可编辑源文见仓库内 prompts/desktop-surface.md;宿主路径与传输相关事实在运行时推导,而非复制开发者机器上的路径)。

  1. 界面与传输
    「本应用/页面/GUI」在桌面场景下通常指现有 Electron 窗口,而非 Edge/Chrome 标签页;loopback 传输 URL 不应被理解为「请打开浏览器」。

  2. ASAR 与镜像
    ASAR 内成员是虚拟路径;解压镜像不保证与当前打包一致,编辑镜像也不会改变已打包的应用代码。

  3. 刷新与任务
    刷新 renderer 可能中断 agent/job;需要持久化状态并在空闲点再重启,修复过程中不宜刷新。

  4. 更新路径区分
    Profile 调和、下发的客户端包、源码构建、宿主模块缓存是不同更新路径,不宜混为一谈。

  5. 证据优先
    优先依据真实原生窗口、配置、日志与当前契约,而非假设或理想化 DOM 测试。

  6. Trajectory 相关
    诊断缺失 Trajectory 标签前,应先查看 code-work-view 偏好,避免误判为缺插件。

插件不会替换未知未来模板或与已验证模板字面不一致的同名自定义文本;也不保证模型一定遵循所供说明——它只修正供给的内容,不控制模型行为。

安装与启用

安装前请等待当前任务结束。插件以当前 DSH 进程权限运行,安装前应自行查阅源码与 MIT 许可证。

方式一:桌面应用内

在已安装的 Desktop 应用 → Plugins → Add plugin,填写 dsh-desktop-context-0.1.0.tgz 的绝对路径(必要时也可指向解压后的包目录)。本地包文件请放在稳定路径,profile 可能以文件依赖形式保留该路径。

方式二:桌面自带的 dsh 命令

通过原生菜单的命令管理启用 Desktop 安装包自带的 dsh 后,在 PowerShell 中执行(路径替换为你的 tgz 绝对路径):

dsh plugin --profile desktop add "<absolute-path-to-dsh-desktop-context-0.1.0.tgz>"

说明:与 Electron 无关、单独 npm 安装的 dsh 可能无法管理 desktop 保留 profile,应使用捆绑命令或原生插件管理器,而不是另起 Web/Vite 服务。安装无需编译或 lifecycle 脚本;支持的安装器会同时启用 bundle 与对应 host 行。

启用后,修正会参与之后正常的 prompt 组装(含普通新会话与子会话);已发送的历史 prompt 不会重写。若宿主需要重启才能加载插件,请在空闲点操作——插件本身不会替你 reload 或 restart。

本地开发若包名相同,在空闲点备份旧文件并卸载旧副本后再装归档,不要同时挂载两份。

诊断与卸载

默认诊断目录为 $DSH_HOME/diagnostics/dsh-desktop-context/;未显式设置 DSH home 时使用用户目录下的 .dsh。已安装包可为只读。

  • events.jsonl:追加仅含元数据的激活/组装记录,对未变化的组装状态去重;无按文件总量轮转,可在空闲点自行清理旧诊断。
  • last-assembly.json:报告消毒后的模板状态与指纹元数据,不含 prompt 正文或私有路径。

可通过环境变量指定完整文件路径:

  • DSH_DESKTOP_CONTEXT_DIAGNOSTICS
  • DSH_DESKTOP_CONTEXT_EVIDENCE

组装事件只说明 hook 曾运行;agentContextPresent 仅表示提供了 agent 字段,不能证明已发起 provider 请求或已持久化 system 消息,且 complete prompt 仍可能覆盖后续结果。需要区分时请独立验证最终输出。

卸载:在 Desktop 插件管理中移除,或执行:

dsh plugin --profile desktop remove dsh-desktop-context

卸载会移除 hook,后续步骤恢复官方默认的 prompt 组装;不删除会话,也不回滚已保存的 profile 设置(插件本身也不修改这些设置)。若未来官方构建已修正同类文案,升级 DSH 后应重新评估是否仍需本插件。

适用场景与注意

适合谁

  • 在 Windows Desktop DSH 0.2.0-rc.2 上使用智能体,希望 system-prompt 中的环境描述与 Electron 桌面一致,减少「按 Web 浏览器或本地源码树理解环境」带来的误判。
  • 需要可审计的组装侧修正(含诊断 JSONL),而不是依赖对话里的口头纠正。

范围与非目标

  • 跨平台路径解析有单元测试;未对 macOS/Linux 桌面做原生验收声明。
  • peer 依赖 @deepseek-ai/cordis、@deepseek-ai/dsh-system-prompt、@deepseek-ai/dsh-web-app 在 package 中为 optional,精确 DSH 版本范围需随未来发布重新验证。
  • 0.1.0 发布说明:在隔离集成测试中针对 Windows Desktop 0.2.0-rc.2 验证,未在本轮发布中重装到 live 桌面环境。

DSH 生态强调「一切皆插件」;SkillHub 为社区目录,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-desktop-context 在桌面宿主真实的 system-prompt 组装链路上,替换继承自 Web 面的已知模板,把 Electron 窗口、ASAR 虚拟路径、刷新风险与更新路径等事实写进供给模型的环境说明。若你正在桌面 DSH 上调试 agent 行为且怀疑环境段落误导模型,可在空闲点按上文路径安装 0.1.0 包,并用诊断目录或环境变量核对 hook 是否参与组装。

  • 目录页:https://www.skillhub.cn/plugins/lc69282940/dsh-desktop-context
  • GitHub:https://github.com/lc69282940/dsh-desktop-context
羽毛球分组比赛记分
小程序二维码

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

Xiaoye