DeepSeek Harness Telegram 主题桥接插件

前言

DeepSeek Harness(DSH)把每个会话都当作一个独立的智能体运行,但会话之间的交互、协作和结果展示都局限在 DSH 界面内。对于需要在 Telegram 等外部渠道持续跟进会话、与同事协作,或者把会话变成可公开讨论的论坛主题的需求,直接在 DSH 里操作往往不够方便。

nergous/dsh-tg-bridge 插件把每一个 DSH 会话变成 Telegram 论坛的一个独立主题。你可以在 DSH 里写会话,也可以在 Telegram 的主题里写,两边消息完全同步。插件负责处理会话状态、工具调用、审批请求、文件和语音消息等细节,让一个会话像论坛帖子一样自然地被阅读和讨论。

插件定位

nergous/dsh-tg-bridge 是一个 DeepSeek Harness 客户端插件,维护者为 Nergous。它不改变 DSH 的核心能力,而是通过 Telegram 论坛主题来扩展会话的可见性和交互方式。

插件的核心价值是:一个 DSH 会话对应一个 Telegram 论坛主题,双向消息同步,支持审批、文件、语音和命令,让会话变成可以随时接入和讨论的“帖子”。

核心功能

1. 一会话一主题

每个根会话都会在指定的 Telegram 超级群组中创建一个独立主题。主题名称默认为 workspace · session title,会在 DSH 修改会话标题时自动更新;会话归档时主题关闭,恢复时重新打开。

2. 双向消息同步

  • 在 DSH 中输入的消息会同步到对应主题。
  • 在主题中发送的消息(文本、图片、文件、语音)会被当作在 DSH 里的消息发送到会话中,由模型正常处理。
  • 语音消息会被转录为文本;如果未配置转录工具,则作为文件发送。

3. 智能输出展示

  • 模型回答会以单条消息的形式流式编辑呈现,直到回答完成。
  • 工具调用会折叠成可展开的块,每个工具运行结束生成一个块。
  • 主题在模型工作时显示“typing…”;一轮结束时会收到一条 ✅ Done 通知。

4. 子会话展示

子会话不会创建独立主题,而是在父主题中以单行状态展示:working, waiting for result ⏳、done ✅ 或 failed ❌ / cancelled ⏹。

5. 审批与提问

  • 审批请求和 ask_user_question 提示会以内联按钮的形式出现在主题中。
  • DSH 和 Telegram 同时接收提示,谁先回答谁生效,另一侧的提示会被撤回。

6. 主题内命令

在会话主题中可用:

  • /stop:停止当前运行中的轮次(排队消息保持排队)。
  • /status:显示工作区、状态、模型、上下文使用和输出模式。
  • /diff:显示会话目录的 git diff --stat,完整补丁以文件形式发送。
  • /compact:在会话空闲时压缩对话历史。
  • /model [name]:以按钮显示可用模型,或通过名称切换。
  • /permission [ro|write|full] 或 /access:显示访问级别(只读、工作区写、完全访问)按钮或切换。
  • /verbosity full|tools|final:为该主题单独设置输出详细度。
  • /mute / /unmute:暂停或恢复该主题的模型输出(审批和提问仍然到达)。
  • /steer <text>:与 !text 等效,接管当前轮次。
  • /help:显示命令列表。

其他 DSH 斜杠命令(如 /goal)会通过 DSH 命令注册表像在编辑器里一样运行。未知的斜杠文本会被当作普通消息发送到会话。

7. 通用主题命令

在 General 主题中可用:

  • /sessions:显示最近的 DSH 会话按钮。🧵 打开会话主题;➕ 创建(或重新打开)会话主题并发布链接,让你可以从 Telegram 继续任意会话。
  • /workspaces:显示已知的 DSH 工作区。
  • /new:通过按钮选择工作区,然后发送第一条消息(文本、图片、文件或语音),或直接开始而不带提示。
  • /new <workspace> [prompt]:直接在工作区中开始会话(按名称或路径)。不提供提示时,机器人会询问第一条消息。
  • /cancel:取消正在等待选择或消息的 /new。
  • /help:显示命令列表。

8. 状态卡片与链接

  • 每个主题的第一条消息会被固定,内容包括工作区、路径、会话 ID 和模型。
  • DSH 编辑器的“Telegram”链接会打开当前会话的主题。

安装与启用

插件没有构建步骤和外部依赖。

  1. 打开 DSH 的 Plugins → Add plugin,输入:
    - github:Nergous/dsh-tg-bridge(从 GitHub 获取最新版本),或
    - 本地克隆的绝对路径,例如 /home/me/projects/dsh-tg-bridge。
  2. 选择 Enable now,然后在 Plugins → Telegram bridge 打开插件。

修改宿主代码(index.js、lib/)后需要重启 DSH;client.js 会在打开的页面中自动重载。

配置与使用

前置要求

  • 安装了插件管理器的 DeepSeek Harness(桌面应用或 dsh web)。
  • Node.js 22 或更新版本(DSH 运行环境)。
  • 从 @BotFather 创建的 Telegram 机器人。
  • 启用了“主题”的 Telegram 超级群组。
  • 可选:ffmpeg 用于语音消息转录。

创建机器人

  1. 在 Telegram 中找到 @BotFather。
  2. 发送 /newbot 按照提示创建一个机器人。
  3. 复制机器人令牌。

配置群组

  1. 创建一个 Telegram 超级群组。
  2. 打开群组设置,启用 Topics 功能。
  3. 将机器人添加到群组,并授予它以下权限:
    - Manage topics
    - Pin messages
  4. 把你自己(或其他需要写入会话的用户)添加为群组成员。

绑定群组

  1. 在插件的设置页面点击 Get bind code。
  2. 在群组中发送 /bind <code>,10 分钟内完成。
  3. 群组会被保存,并且你被加入允许写入会话的用户列表。
  4. 如需其他人也能写入会话,可在设置页面添加他们的 Telegram 用户 ID。

测试连接

在设置页面点击 Test connection。它会检查令牌、群组、主题功能和机器人的权限。

启用会话主题

  • 默认情况下,每个根会话在第一次消息或轮次时会创建主题。旧会话在下次继续时会创建主题,或者通过 General 主题的 /sessions 立即创建。
  • 可在设置中把“Create topic”改为“As soon as a session opens”或“Never automatically”,从而控制主题创建时机。即使选择“Never automatically”,仍可通过 /sessions 和 /new 在 General 中手动创建。
  • 子会话不会创建主题。

在主题中与会话交互

  • 在会话主题中直接发送消息即可与该会话交互。消息会排在正在进行的轮次之后。
  • 以 ! 开头的消息会接管当前轮次。
  • 模型等待问题答案时,你在主题中发送的文本会直接回答问题。
  • 图片会作为图片附件(当模型接受图片时)发送,文档作为文件发送(最大下载大小由“Max download, MB”设置决定)。
  • 文件通过 present 工具呈现的,会以文档形式发送到主题;PNG、JPEG、WebP 会作为图片发送(Telegram 拒绝时以文档发送)。本地图片(![caption](path))会作为带 caption 的图片跟随回答,主题中显示 🖼 caption。

主题命令使用示例

  • /status:查看当前会话的详细状态。
  • /model:通过按钮切换模型。
  • /permission write:将访问级别改为工作区写。
  • /verbosity tools:在当前主题中展开工具调用。
  • /sessions:在 General 中快速打开最近会话的主题。
  • /new:在 General 中选择工作区并开始新会话。

适用场景与注意事项

该插件适合需要在 Telegram 中持续跟进 DSH 会话、让团队成员通过主题参与讨论、或者把会话作为可公开阅读的“帖子”来使用。

需要注意:

  • 插件以当前 DSH 进程的权限运行,安装前建议检查源码与许可证。
  • 只有一个进程可以轮询同一个机器人,否则 Telegram 会返回 409 Conflict。如果同时运行 DSH 桌面和 dsh web,请只使用其中一个,或者使用第二个机器人。
  • 主题中的消息历史不会从 DSH 同步到 Telegram,主题历史仅从首次消息开始。

小结

nergous/dsh-tg-bridge 让每个 DSH 会话都成为一个 Telegram 论坛主题,实现了双向消息同步、审批、命令、文件和语音处理。它把 DSH 会话从封闭的编辑器扩展为可随时接入和讨论的“帖子”,适合需要协作和持续跟进的开发者。

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

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

Xiaoye