Document dsh/Node/Telegram requirements (no Python) and the dsh-plugin topic listing path. Co-authored-by: Cursor <cursoragent@cursor.com>
dsh-telegram-channel
Telegram 手机遥控器 for DeepSeek Harness:附着本机正在跑的 Web 会话,与电脑 同轨迹、双向可见(Codex-style)。
发现: dsh-plugin topic · 安装:dsh plugin --profile web add github:hi-wenw/dsh-telegram-channel
Keywords: Telegram · Bot · Mobile · Remote · DSH · Cordis · dsh-plugin · sessions · bind
中文
使用前需要什么
| 需要 | 说明 |
|---|---|
DeepSeek Harness(dsh) |
本机已能跑通 dsh web |
| Node.js | 跟 Harness 走,建议 ≥22 |
| Telegram Bot Token | @BotFather → /newbot |
| 数字 User ID | @userinfobot |
| 代理(可选) | 若直连不上 api.telegram.org,需本机 HTTP(S)_PROXY |
不需要 Python。
30 秒理解
- 电脑
dsh web开着,并打开一个对话 - 手机 Bot 发
/sessions,点选该对话 - 之后手机 ↔ Web 走同一条轨迹
一键管理菜单(推荐)
先准备两样东西:
| 准备 | 怎么拿 |
|---|---|
| Bot Token | Telegram 搜 @BotFather → /newbot → 复制 token |
| 数字 User ID | 搜 @userinfobot → Start → 复制纯数字 |
Token 不要发到公开群;泄露了去 BotFather
/revoke。
Windows
请在 PowerShell 执行。若当前是 CMD,用下面「CMD 一键」那行。
irm https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.ps1 | iex
脚本已兼容
irm | iex(菜单逻辑包在 scriptblock 里)。CMD 请用下面整行。
CMD 一键:
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.ps1 | iex"
备用(先下载再执行):
powershell -NoProfile -ExecutionPolicy Bypass -Command "iwr -UseBasicParsing https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.ps1 -OutFile $env:TEMP\dsh-tg.ps1; & $env:TEMP\dsh-tg.ps1"
启动后用数字选择:
1) 安装 / 重装插件(写入 Token + 白名单)
2) 启动 dsh web(新窗口)
3) 停止 dsh web
4) 查看状态
5) 打开浏览器
0) 退出
也可直接指定动作(不进菜单):
.\scripts\install.ps1 -Action install -Token '...' -UserId '123456789'
.\scripts\install.ps1 -Action start
.\scripts\install.ps1 -Action stop
.\scripts\install.ps1 -Action status
安装时脚本会:写环境变量、补 allowBuilds、执行 dsh plugin add(不会再 insert 同名 id)。
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.sh | bash
# 同样出现数字菜单;或:
# ./scripts/install.sh install --token '...' --user-id '...'
# ./scripts/install.sh start|stop|status
手机怎么用
- 菜单选 2 启动
dsh web(或自己运行dsh web) - 浏览器打开一个对话并保持运行
- 手机对 Bot:
/start→/sessions→ 点选 → 聊天
输入框旁的 / 菜单应有:start sessions status unbind help。
| 命令 | 作用 |
|---|---|
/sessions |
列出并附着本机 live 会话 |
/status |
当前绑定 |
/unbind |
只断开手机,不关电脑会话 |
/help |
帮助 |
手工安装(可选)
若不想跑脚本:
# 用户环境变量(或当前会话 $env:...)
# DSH_TELEGRAM_TOKEN = BotFather token
# DSH_TELEGRAM_ALLOWED_USER_IDS = 数字ID
dsh plugin --profile web add github:hi-wenw/dsh-telegram-channel
dsh web
本地目录安装:
dsh plugin --profile web add D:\path\to\dsh-telegram-channel
需要改 YAML 白名单时,只能按 id 覆盖,不要再 insert 同名 id:
- id: dsh-telegram-channel
config:
token: ""
allowedUserIds: [123456789]
示例:examples/telegram-agent/cordis.patch.example.yml。
配置
| 键 / 环境变量 | 含义 |
|---|---|
token / DSH_TELEGRAM_TOKEN |
Bot token |
allowedUserIds / DSH_TELEGRAM_ALLOWED_USER_IDS |
白名单;都空 = 谁都不能用 |
allowAllUsers |
true 仅调试 |
maxMessageLength |
默认 4096 |
pollingTimeoutSec |
默认 30 |
若本机用了 HTTP(S)_PROXY 访问 Telegram,插件会自动走代理(无需再设 NODE_USE_ENV_PROXY)。
故障排查
| 现象 | 处理 |
|---|---|
allowBuilds / ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED |
再跑一遍安装脚本,或手工在 ~\.dsh\profiles\web\pnpm-workspace.yaml 加 allowBuilds.dsh-telegram-channel: true |
duplicate loader entry id: dsh-telegram-channel |
用户 patch 不要 insert 同名 id;用上面的 - id: 覆盖,或只用环境变量白名单 |
| 手机完全没回复 / ConnectTimeout | 打开本地代理(如 7890),重启 dsh web |
missing bot token |
检查环境变量;新开终端再 dsh web |
| 「无权限」 | User ID 必须是 @userinfobot 的数字 |
/sessions 无会话 |
先在 Web 打开对话 |
| Telegram 401 | Token 错了或被 revoke |
开发
git clone https://github.com/hi-wenw/dsh-telegram-channel.git
cd dsh-telegram-channel
npm install --legacy-peer-deps
npm test
npm run build
发布与发现(社区插件)
社区发现入口主要是 GitHub topic,不是封闭应用商店审核:
- 仓库 公开,
package.json声明dsh.bundle.patch(本仓库已有) - About → Topics 加上
dsh-plugin(已加;可浏览 topic 列表) - 用户安装:
dsh plugin --profile web add github:hi-wenw/dsh-telegram-channel
- 可选:收录到 awesome-deepseek-harness 等精选列表;可选再发 npm
官方也建议插件作者使用 dsh-plugin topic 方便检索。
许可证
English
Prerequisites
- Working DeepSeek Harness (
dsh web) - Node.js (typically ≥22 with Harness)
- Telegram bot token + numeric user id
- Optional HTTP(S)_PROXY if Telegram API is blocked
- No Python required
What this is
Telegram mobile remote for live DeepSeek Harness Web agents. Desktop/Web is the source of truth; the phone attaches (no parallel hidden agent).
One-click manager (Windows)
Run in PowerShell (not CMD). Opens a number menu: install / start / stop / status / open browser.
irm https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.ps1 | iex
CMD:
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.ps1 | iex"
Direct actions:
.\scripts\install.ps1 -Action start
.\scripts\install.ps1 -Action stop
.\scripts\install.ps1 -Action install -Token '...' -UserId '123456789'
The script sets user env vars, ensures allowBuilds, and runs dsh plugin add. After start, open a Web chat → phone: /sessions → bind.
Unix
export DSH_TELEGRAM_TOKEN='...'
export DSH_TELEGRAM_ALLOWED_USER_IDS='123456789'
curl -fsSL https://raw.githubusercontent.com/hi-wenw/dsh-telegram-channel/master/scripts/install.sh | bash
Manual
dsh plugin --profile web add github:hi-wenw/dsh-telegram-channel
Allowlist via DSH_TELEGRAM_ALLOWED_USER_IDS (preferred) or id-targeted YAML override — never re-insert the same plugin id.
Discoverability
Listed under the public GitHub topic dsh-plugin. Install:
dsh plugin --profile web add github:hi-wenw/dsh-telegram-channel
License
MIT