前言¶
在 DSH 裏做聯網能力時,Telegram 常見做法是掛 Bot:對方看到的是 xxx_bot,對話邊界和身份感都和「本人賬號」不一樣。若你希望聯繫人仍是在和「你」私聊或羣聊裏說話,又要讓 Harness 代爲生成與發送回覆,就需要走用戶態 MTProto,並處理登錄態、連接抖動、人設與 token 成本等問題。下面介紹社區插件 dsh-telegram-bridge(維護者 zxz-feng),它把真實 Telegram 賬號接到 DSH,用分層人設、防抖、輪詢兜底和零 token 自檢自愈,儘量做到「像人回、少運維」。
這是什麼¶
dsh-telegram-bridge 是 DeepSeek Harness 的聯網類插件:接管一個真實 Telegram 賬號(用戶態 MTProto,不是機器人號),替你回覆聯繫人消息。當前版本 0.2.2,許可證 MIT,要求 DSH >= 0.2.0、Node >= 22。插件目錄頁:skillhub.cn/plugins/zxz-feng/dsh-telegram-bridge;源碼:github.com/zxz-feng/dsh-telegram-bridge。
DSH 生態是「一切皆插件」;社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
核心功能¶
資料中強調的三條線如下。
用戶賬號,不是 Bot。 使用 apiId / apiHash 與手機號登錄,session 落在插件家目錄;對方看到的是你的身份,而不是 Bot 用戶名。
回覆行爲偏「像人」。 約 3~10 秒隨機防抖;多條內容可用 ||| 分條發送;可偶爾配貼紙;人設分層以減少每輪 token(完整人設與精簡人設交替)。
運維側儘量自洽。 橋跑在獨立子進程,崩潰可拉起、斷線可重連;約每 5 分鐘自檢(selfHeal.everyMin,設爲 0 可關),檢查進程、端口、HTTP、登錄態等,不消耗 LLM token;也可手動 tg_verify 或 node scripts/verify.mjs。
其他能力包括:白名單與按會話暫停、draft 模式只生成不寫回、tg_send 主動發消息、SOCKS5 代理、設置頁「Telegram 小鯨魚」與 tg_* 工具共用同一套 lib/api.mjs 實現。
安裝與啓用¶
安裝前請自行審閱倉庫源碼與 MIT 許可證;插件以當前 dsh 進程權限運行,會持有 Telegram 會話與配置,僅應在可信環境使用。
本地路徑安裝(開發或自用):
dsh plugin --profile web add link:/絕對/路徑/dsh-telegram-bridge
從 GitHub 安裝(機器上需有 git):
dsh plugin --profile web add github:<你的用戶名>/dsh-telegram-bridge
裝完需重啓一次 dsh(bundle 層重啓後纔會組裝)。
若安裝報 ERR_PNPM_IGNORED_BUILDS(pnpm 12 將跳過的構建腳本視爲錯誤),可選原生依賴 bufferutil / utf-8-validate / es5-ext 會觸發;不編譯也可正常使用,可加:
dsh plugin --profile web add <本倉庫地址> --config.strict-dep-builds=false
裝成功後 dsh plugin --profile web list 應能看到本包。
重要: 沒有 session.txt 時插件不會連接,避免與官方客戶端搶 update state。同一賬號同一時間只能有一個客戶端收消息;與桌面版等同開可能導致「突然不說話」且無明顯報錯。
配置與登錄¶
工具三步(也可在設置頁完成)¶
- 配置 API 憑證:
tg_config { "account": { "apiId": 123456, "apiHash": "abcdef..." } }
apiId / apiHash 在 my.telegram.org → API development tools 申請。
- 發起登錄:
tg_login_start { "phone": "+8613800138000" }
返回 loginId,Telegram 會發驗證碼。
- 提交驗證碼(兩步驗證賬號還需
tg_login_password):
tg_login_code { "loginId": "login1", "code": "12345" }
- 自檢:
tg_verify → 應看到 6/6 通過
連不上 Telegram 的環境(例如需代理的服務器)可設:
tg_config { "socksUrl": "socks5://127.0.0.1:7890" }
本機可直連時不要填,留空即直連。
設置頁¶
安裝後在 DSH「設置」中會出現 Telegram 小鯨魚(與「刷B站」「QQ 小鯨魚」等並列),可總開關啓停橋、查看狀態、配代理與模型鏈、完成手機號登錄、管理白名單與運維項(自檢、日誌、重啓)。打碼字段原樣保存表示未修改;配置保存後即時生效,無需重啓橋。
典型用法¶
常用工具一覽:
| 工具 | 作用 |
|---|---|
tg_status |
進程、連接、登錄人、白名單、在途、人設指紋、貼紙條數 |
tg_verify |
零 token 自檢,輸出 n/6 通過 |
tg_config |
讀/改配置 |
tg_chats |
白名單會話及上下文輪數 |
tg_send |
經 bridge 連接發消息 |
tg_pause |
暫停/恢復某會話自動回覆 |
tg_context_clear |
清空某會話上下文 |
tg_restart |
優雅重啓 |
tg_log |
最近日誌 |
常見配置片段:
// 只回這幾個人
{ "direct": { "users": ["111111111", "222222222"], "labels": { "111111111": "老朋友" } } }
// 暫停某個人(照記錄不回)
{ "direct": { "paused": ["111111111"] } }
// 只看不回(生成寫入 drafts.jsonl)
{ "mode": "draft" }
// 換模型
{ "llm": { "models": ["deepseek-v4.1-flash", "hy3"], "effortFull": "max", "effortShort": "low" } }
人設文件位於 <DSH_HOME>/persona/(renshe.txt、guard.txt、extra-tg.txt、extra-tg-short.txt 等);改文件後指紋變化,下一句會自動補發完整人設。貼紙需在本機導入:
node scripts/import-stickers.mjs
node scripts/import-stickers.mjs --no-desc
離線自檢:
node scripts/verify.mjs
node scripts/verify.mjs --fix
橋也可脫離宿主單獨運行:
BRIDGE_HOME=/path/to/home node bridge/main.mjs
適用場景與注意¶
更適合: 已在 DSH web profile 下運行 Harness、願意用個人 Telegram 賬號(非 Bot)做白名單私聊自動回覆或 draft 審閱後再發、且能接受單獨佔一個 MTProto 客戶端 slot 的開發者。
務必注意:
- 同一賬號勿與官方 App / 桌面版同時收消息。
- 羣聊默認關閉(
groups.mode: "off"),啓用需自行配置白名單,風險高於私聊。 - 貼紙
fileReference會過期,發不出時重跑import-stickers.mjs。 - 子進程架構是爲隔離 GramJS update loop 未捕獲異常,避免拖垮整個 DSH。
結尾¶
dsh-telegram-bridge 把「真實 Telegram 賬號 + LLM 回覆」收進 DSH 插件:MTProto 登錄、分層人設、防抖與輪詢、零 token 自檢,並配有設置頁與 tg_* 工具同一數據面。安裝與行爲以倉庫 README 爲準。
- 目錄頁:https://www.skillhub.cn/plugins/zxz-feng/dsh-telegram-bridge
- GitHub:https://github.com/zxz-feng/dsh-telegram-bridge