dsh-telegram-control:DeepSeek Harness 的 Telegram 远程控制插件

前言

DeepSeek Harness (DSH) 是一个基于插件的架构。在本地运行 DSH 进程时,通过手机进行远程控制是一个常见需求。dsh-telegram-control 插件在 DSH 进程内部运行一个 Telegram Bot,通过长轮询与 Telegram Bot API 通信,允许用户通过 Telegram 发送消息控制代理、管理会话和后台任务。

插件介绍

dsh-telegram-control 是 DeepSeek Harness 的客户端插件,由 jackControls 维护。它将 Telegram Bot 集成到 Harness 进程中,通过 / 命令和内联按钮实现远程交互。该插件不依赖外部运行时,仅作为 Cordis 函数插件运行,需与 DSH 核心依赖配合。

核心功能

该插件提供以下核心能力:

  • 远程代理控制:纯文本消息作为对话的跟进发送到选定的会话,回复(包含思考块 💭)会通过 Telegram 实时回传。
  • 命令界面:通过 /status、/agents、/jobs 等命令查看状态和管理资源。
  • 手机端审批:Harnes 的权限请求(如沙盒升级)通过 Telegram 送达,提供 ✅ Allow once / ❌ Reject 内联按钮进行审批。
  • 命令菜单自动补全:Bot 通过 setMyCommands 注册命令,支持输入时自动补全。
  • 实时会话推送:通过 /watch 命令将指定会话的实时输出推送到聊天窗口。
  • 基于白名单的认证:仅允许配置列表中的聊天 ID 访问,未知聊天仅显示提示。
  • 输出安全:所有动态文本在发送前经过 HTML 转义,防止注入。

安装与启用

安装前请确保环境满足以下要求:
* Node.js 版本 >= 22
* 已安装 DSH 并运行
* 拥有一个有效的 Telegram Bot Token(可通过 @BotFather 获取)

执行以下命令安装插件:

dsh plugin --profile web add github:jackControls/dsh-telegram-control

安装后,需在运行 DSH 的进程中配置环境变量:

export DSH_TELEGRAM_TOKEN='123456:ABC-DEF...'
export DSH_TELEGRAM_ALLOWED_CHATS='123456789,987654321'

重启 DSH 进程,与 Bot 私聊并发送 /help 即可开始使用。

命令使用

插件提供以下命令用于交互:

  • /help 或 /start:显示命令列表。
  • /status:查看运行状态、会话数和后台任务数。
  • /agents:列出所有会话(包含运行中和已暂停的会话),显示状态、模型和当前选择标记。
  • /agent <number>:根据编号选择会话。
  • /agent <name>:根据会话标题或 ID 的子串选择会话。
  • /agent <session id>:根据精确会话 ID 选择。
  • /jobs:列出后台任务。
  • /kill <job id>:停止指定的后台任务。
  • /cancel:取消当前选中的会话的当前回合。
  • /watch / /unwatch:开启或关闭实时输出推送。
  • /chatid:获取当前聊天的 ID(用于配置白名单)。

配置项

除了环境变量,插件支持以下配置项(可在代码中配置或通过环境变量回退):

配置项 环境变量回退 默认值 说明
token DSH_TELEGRAM_TOKEN 必填 Telegram Bot Token。
allowedChatIds DSH_TELEGRAM_ALLOWED_CHATS [] 允许的聊天 ID 列表,空列表将拒绝所有人。
apiBase — https://api.telegram.org Bot API 基础地址。
defaultAgentId — 无 当会话未选择时,消息默认发送的目标会话 ID。
pollTimeoutSec — 50 长轮询超时时间(秒)。
replyTimeoutMs — 600000 等待代理回复的最大超时时间(毫秒)。
showToolCalls — false 是否在回复等待期间显示工具调用通知。
maxMessageChars — 4000 单条消息最大字符数,超长会自动拆分。

注意事项

  1. 安全策略:插件采用白名单机制,allowedChatIds 为空时将拒绝所有请求。请务必在配置中添加受信任的聊天 ID。
  2. 输出处理:所有动态文本在发送前均经过 HTML 转义,确保安全性。
  3. 会话管理:已暂停的会话在首次发送消息时会自动恢复,并保留原有的会话预设和历史记录。
  4. 依赖要求:需要 Node.js >= 22 版本,且 DSH 进程需要拥有访问 Telegram API 的网络环境。

总结

dsh-telegram-control 解决了在移动端远程控制 DeepSeek Harness 会话和任务的需求。通过简单的命令和内联按钮交互,开发者可以在手机上管理复杂的 Agent 流程和后台任务。该插件代码开源,可直接通过 dsh plugin 安装,适合需要在移动场景下维护 DSH 进程的用户。

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

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

小夜