dsh-talk-mode:在 DSH 里用无工具的 Talk 预设省上下文,并导入网页端对话

前言

在 DeepSeek Harness(DSH)里做工程会话时,profile 往往是多 bundle 叠加:每个 bundle 的工具 schema 会随每次请求一起发送。README 里在真实 desktop profile(约 20 个 bundle、使用自带 cordis 预设)上测过:可调用工具约 86 个,单次请求里工具 schema 载荷约 116 KB(约 3 万 token),且在第一句用户消息之前 conversation tokens 已是 0——也就是说,税额在每一轮对话都会再付一遍。额度或输出长度紧张时,回复更容易被截断,重试也更频繁。

若你只是想和模型纯聊天、或拿导入后的历史做回顾,并不需要在同一会话里挂 shell、文件系统、检索或子 agent,继续用完整 Work 预设就不划算。dsh-talk-mode 在「新建会话」里多提供一个 Talk 预设:请求侧不带工具 schema,也不带 AGENTS.md、技能目录和 runtime-context 块;同一插件里还有一条独立的 Import 流程,把 DeepSeek 网页账号里的对话导出成工作区里的 Markdown。Talk 与 Import 刻意分离:导入器只在工作会话里可见,Talk 会拒绝一切全局工具(包括导入器),因此聊天会话里两者都不会被带上。

下面按定位、能力、安装、用法和注意事项说明该插件。事实以 GitHub 仓库 README 与 package.json 为准;社区目录页见 SkillHub 条目。目录站为社区生态站点,与 DeepSeek / 幻方无官方从属关系。

这是什么

dsh-talk-mode 是维护者 zhyunran 发布的一个 DSH bundle(dsh.bundle.patch),当前包版本 0.2.1,许可证 MIT。分类上可归为工作流:一半改会话形态(Talk 预设),一半做对话归档(Import)。

它解决两类问题:

  1. 在有限额度或上下文预算下,减少每轮请求里固定的工具与指令税。
  2. 把已在 DeepSeek 网页端产生的对话,以 Markdown 形式落到当前工作区,便于后续在 Talk 里阅读或讨论。

核心功能

Talk:无工具的 agent 预设

在 DSH New Session 的英雄屏预设控件里会出现 Talk(cordis.patch.yml 注入 id: talk 的 @deepseek-ai/dsh-agent-preset 项,order: 0 使其排在选择器靠前)。

选中 Talk 后,一次请求里大致只保留:

  • 一段可编辑的短 system prompt(cordis.patch.yml 里 preset 的 prefix)
  • 没有 工具 schema
  • 没有 AGENTS.md / 工作区说明
  • 没有 技能目录
  • 没有 runtime-context(cwd、平台、环境变量等)

实现上,插件在 preset 作用域内调用 ctx.tools.restrict({ deny: <所有全局可见工具名> })。restrict() 是作用域局部的,不会改变其他预设的全局工具视图;Harness 也禁止在 context-global 上执行会遮蔽全部 agent 的限制,因此误配只会导致 Talk 缩不进去,而不会把 Work 会话的工具面弄窄。

切换回平常工程用的预设即可恢复完整工具集;README 明确 Work 会话行为不被该插件改写。

Import:网页端对话 → 工作区 Markdown

Import 是独立半部:在工作会话里通过引导或工具调用完成,不在 Talk 会话里提供。

流程分两步,且 DeepSeek token 不离开浏览器:

  1. 在已登录 DeepSeek 的浏览器打开 https://chat.deepseek.com → F12 → Console,粘贴 deepseek_import 在 action: "guide" 时返回的脚本 → 回车。控制台会打印进度,以 DONE 结束并下载 deepseek-chat-export.json。
  2. 让 agent 执行导入,或对工具调用 action: "run"。插件会找最新的导出文件,为每个会话写一个 Markdown,并在 exports/deepseek-chat/ 下生成 index.md、index.json。

原因写在 README 里:DSH 无法读取其他应用的私有存储;网页客户端用仅存在于页面内存的 bearer token 鉴权,在页面内执行脚本是 token 既可用又相对可控的做法。归档完成后,README 建议用 Talk 会话围绕这些 Markdown 聊天——这也是 Talk 设计的用途之一。

安装与启用

包体是标准 DSH 插件 bundle,安装方式与 README 一致(路径换成你本机插件目录或解压 tarball 后的路径;下文勿在受限环境外执行未审过的第三方代码):

# 在本插件目录(或解压后的 tarball 路径)
dsh plugin --profile desktop add C:/path/to/dsh-talk-mode

dsh plugin add 会把 bundle 装进 profile;若 profile 管理器未自动写入,需在对应 profile 的 package.json 里把 dsh-talk-mode 加入 dsh.profile.bundles。图形界面 Settings → Plugins 与 plugin_manager 工具通常两步都会做。

安装后 重启 DSH。

卸载:从 dsh.profile.bundles 移除 dsh-talk-mode 并重启;README 称不会额外落盘其他东西。

安装前建议自行查看仓库源码与 MIT 许可证;插件以当前 DSH 进程权限运行,Import 会在工作区写入文件,只应使用你信任的脚本与导出数据。

典型用法

纯聊天 / 省 token

  1. 重启并完成安装后,打开 DSH。
  2. New Session → 英雄屏上的 preset 控件 → 选 Talk。
  3. 正常发消息对话;需要改 shell、读仓库时再新建会话并选工程预设。

导入并回顾历史对话

  1. 按上一节在浏览器 Console 跑引导脚本,得到 deepseek-chat-export.json。
  2. 在 Work 会话中请 agent 导入,或调用 deepseek_import 的 run。
  3. 到 exports/deepseek-chat/ 查看单会话 Markdown 与索引。
  4. 新建 Talk 会话,基于这些文件做讨论(无工具负担)。

自定义 Talk 展示与 persona

安装后编辑 profile 内副本:node_modules/dsh-talk-mode/cordis.patch.yml,例如:

config:
  name: Talk            # 选择器里的标签
  description: ...      # 副标题
  order: 0              # 排序
  plugins:
    - id: persona
      config:
        prefix: |-      # 对话人设
          ...

改完后重启 DSH 以重载 bundle。

适用场景与注意

适合谁

  • 经常在 DSH 里开多 bundle 工程 profile,但另需要「只聊不卖弄工具」的会话。
  • 上下文或输出额度紧张,希望避免每轮附带大量 tool schema。
  • 想把 DeepSeek 网页端已有对话迁入本地工作区,并在轻量会话里继续用。

README 中的限制

  • Talk 挂载 之后 才注册的工具(例如后连上的 MCP)不在 deny 列表里;此类变更后应新开 Talk 会话。
  • 根级插件贡献的 system prompt 片段不会被本插件去掉;去掉的是工具目录、指令块、技能和 runtime block。Harness 仍会有 某种 system prompt,「无系统上下文」在文档里指的是无工具与工作区那几类载荷。
  • Import 依赖你在浏览器 Console 执行第三方仓库提供的片段;只在你信任的机器与账号上操作。

生态与版本

  • package.json 声明 peer:@deepseek-ai/dsh-agent-preset、@deepseek-ai/dsh-tools 均为 >=0.2.0-rc.1 <0.3.0。
  • 仓库无客户端专有代码,两半功能分别靠 cordis.patch.yml 与 lib/index.js(及 import/convert 导出)。

结尾

dsh-talk-mode 用同一安装包提供两件事:在新建会话里选一个 Talk 预设,把每轮请求里的工具与 workspace 载荷剥掉,缓解多 bundle profile 的固定 token 税;用 Import 把网页端对话落成 exports/deepseek-chat/ 下的 Markdown,再在 Talk 里轻量阅读。工程活仍用原有 Work 预设即可。

  • 社区目录:https://www.skillhub.cn/plugins/zhyunran/dsh-talk-mode
  • 源码与中文 README:https://github.com/zhyunran/dsh-talk-mode
羽毛球分组比赛记分
小程序二维码

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

小夜