congchuanling-dot/DSH-Telegram-Relay ↗★ 3
dsh-telegram-relay
一个用于集成 Telegram 转发的 DeepSeek Harness 插件包。
AI 分析
用于将 DeepSeek Harness 与 Telegram 机器人连接,实现消息转发。适合需要通过 Telegram 交互的用户,配置时需提供 Bot Token 和允许的聊天 ID。
安裝
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:congchuanling-dot/DSH-Telegram-Relay說明文件
閱讀完整 README ↗2. 配置环境变量
Token 和 allowlist 只通过环境变量传入。不要将 Token 写入代码、YAML、README 或 Git。
export TELEGRAM_BOT_TOKEN=''
export TELEGRAM_ALLOWED_CHAT_IDS=''
允许多个私聊时使用英文逗号分隔:
export TELEGRAM_ALLOWED_CHAT_IDS='123456789,987654321'
export 只对当前终端会话及其启动的子进程生效。关闭终端或新开终端后,需要重新设置。Bot Token 通常保持不变,只有通过 BotFather 重新生成后才会变化;个人私聊 chat_id 通常也不会变化。
为了避免每次启动前重复设置,可以写入 deepseek-harness 根目录的 .env:
TELEGRAM_BOT_TOKEN=
TELEGRAM_ALLOWED_CHAT_IDS=
deepseek-harness/.gitignore 已忽略 .env,但仍需确认不要将该文件或其中的 Token 提交到 Git。插件卸载后可以保留这些配置,重新安装插件时会继续使用。
配置
插件 bundle 默认配置位于 cordis.patch.yml:
- insert:
- id: telegram-relay
name: dsh-telegram-relay
config:
tokenEnv: TELEGRAM_BOT_TOKEN
allowedChatIds: !!js process.env.TELEGRAM_ALLOWED_CHAT_IDS?.split(',')
cwd: !!js process.cwd()
stateFile: !!js dshHomePath('telegram-relay/state.json')
| 字段 | 说明 | 默认值 |
|---|---|---|
tokenEnv | 保存 Bot Token 的环境变量名 | TELEGRAM_BOT_TOKEN |
allowedChatIds | 允许访问 DSH 的私聊 ID,不能为空 | 从 TELEGRAM_ALLOWED_CHAT_IDS 读取 |
cwd | 新建 Telegram Session 的工具工作目录 | 启动 DSH 时的当前目录 |
pollTimeoutSeconds | 单次长轮询等待时间 | 30 |
retryMinMilliseconds | 网络错误后的最短退避时间 | 1000 |
retryMaxMilliseconds | 网络错误后的最长退避时间 | 30000 |
stateFile | Telegram offset 状态文件 | $DSH_HOME/telegram-relay/state.json |
需要固定工具工作目录时,在 profile 的后置 patch 中将 cwd 覆盖为绝对路径。