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 進程的用戶。

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

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

小夜