在 DeepSeek Harness (DSH) 的生态中,插件是扩展能力的主要方式。对于需要通过 Telegram 进行交互的场景,手动集成较为繁琐。winada82/dsh-telegram-bridge 插件提供了一个配置包,通过一个工具调用即可完成 Telegram 与 DSH 之间的桥接。
插件简介¶
这是一个由 winada82 维护的 DSH 配置包,包含了一个 Telegram ↔ DSH 的桥接工具。安装后,DSH 模型将获得 install_telegram_bridge 工具,用于注册和启动桥接。该插件遵循 MIT 许可证。
核心功能¶
插件提供以下核心能力:
- 消息路由:长轮询 Telegram Bot API,将收到的聊天消息路由至 DSH 子代理,并将代理回复发送回原始聊天。
- 交互反馈:在处理过程中提供实时状态指示,包括输入动作和可编辑的“⏳ Processing…”消息,并附带已用时间。
- 命令支持:内置多个命令,包括交互式内联键盘的
/model(切换模型)、/new(开启新对话)、/reset(清除上下文)以及/status(检查桥接健康状态)。这些命令会自动注册到 Telegram 客户端的/建议菜单中。 - 诊断支持:在主机可写工作目录中持久化保存诊断文件(
.tg-bridge-diag.json),可用于检查周期、错误和解析后的沙盒策略。
安装与启用¶
在希望使用该插件的 DSH profile 目录下执行以下命令:
dsh plugin add github:winada/dsh-telegram-bridge
安装完成后,需要重启 DSH 进程或重新加载配置,install_telegram_bridge 工具才会生效。
配置与使用¶
使用前需准备一个 Telegram Bot Token(可在 @BotFather 创建)以及至少一个允许的聊天 ID(可用 @userinfobot 查询)。
在 DSH 会话中,向模型发送如下指令:
Install the Telegram bridge. My bot token is “
: ” and my chat id is “5805491987”.
模型将调用 install_telegram_bridge { bot_token, allowed_chat_ids: [...] } 工具。工具返回新的 Plugin ID 和 Package ID 后,桥接即刻开始轮询。
若需更换 Token 或调整允许列表,再次请求模型运行 install_telegram_bridge 即可。
环境要求¶
该插件使用 pwsh Invoke-WebRequest 进行 HTTPS 通信。由于需要访问 api.telegram.org,必须确保当前会话的解析会话策略允许子进程进行 TLS 连接。默认的 workspace-write 策略会阻塞该连接,因此需要将策略设置为 danger-full-access(或等效值)。
如果未满足此要求,安装过程会成功,但轮询将因 SSL 连接失败而中断。此时可检查 /status 命令的回复以及 profile 的 cordis.patch.yml 中的 sandbox-policy 配置。
已知限制¶
- 进程模型:动态插件驻留在进程内存中。DSH 重启后插件会消失,需要重新调用
install_telegram_bridge。 - 上下文管理:每个聊天的模型覆盖仅保存在内存中,重启丢失。每个聊天的对话历史被限制在 12 轮。
- 传输性能:每次 HTTP 调用启动一个
pwsh进程。轮询周期约 3-6 秒,网络状况差时可能出现长达 30 秒的阻塞。这适合个人使用,不适合高吞吐量的消息分发。
结语¶
winada82/dsh-telegram-bridge 为 DSH 提供了便捷的 Telegram 交互入口。通过配置正确的沙盒策略,开发者可以在 Telegram 中直接使用 DeepSeek 模型。更多细节与源码可访问其 GitHub 仓库。