dsh-im-connect

by MichengAI

1 通知与集成github收录于 08-21

把微信、企业微信、钉钉、飞书、Lark、QQ、Telegram 接到本机 DeepSeek Harness,每个 IM 聊天对应一条独立工作区频道。

Connects WeChat, WeCom, DingTalk, Feishu, Lark, QQ, and Telegram to a local DeepSeek Harness agent, with each IM chat as a separate workspace channel.

安装

dsh plugin --profile web add github:MichengAI/dsh-im-connect

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

DSH IM Connect

把飞书、钉钉、企业微信、微信、QQ、Telegram 接到本机 DeepSeek Harness

English · Apache-2.0

许可证:Apache-2.0 npm package npm 下载量 DSH Web Plugin Node.js 22 or later Channels

DSH IM Connect 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。

功能概览

  • 在「设置 → IM助理」里连接钉钉、飞书、Lark、微信、企业微信、QQ、Telegram。
  • 每个 IM 聊天对应一条独立 DSH 会话,出现在工作区「频道」,不会混进网页「任务」。
  • 手机里直接下任务、看回复、批准工具;模型和权限跟随本机 DSH。
  • 支持扫码绑定或手动填凭据;敏感字段写入 DSH ctx.credentials,不会进 channels.json。
  • 可把一句话复制到 DSH、Codex 或 WorkBuddy,让对方代装到本机 DSH。
  • 群聊不用绑定,@ 即可对话;私聊只有扫码用户自动放行,其他人要在设置页批准。
  • 扫码成功后配置弹窗自动关闭,设置页保持打开。

谁可以驱动助手

入站消息先看发送者,再处理命令、工具审批和注入。

场景 行为
群聊未 @ 忽略,不回复、不进待批准
群聊已 @ 不用绑定,任何人都可以下任务
私聊 · 扫码用户 微信 / 飞书 / Lark 扫码者自动进白名单,可直接对话
私聊 · 其他人 进入设置页待批准;不批准就不能驱动助手
私聊 · 无扫码用户的渠道 Telegram、以及只填凭据的钉钉 / 企微 / QQ,所有私聊都要先批准
私聊缺少 userId 拒绝
工具审批 仅白名单用户在私聊回复「批准 / 拒绝」有效;群聊里回不算

微信是扫码渠道且只支持私聊,所以连上后用同一个微信号即可直接用。换一个微信号私聊,会出现在设置页待批准。

📡 支持的渠道

渠道 状态 接入方式 需要
🔔 钉钉 ✅ 可用 扫码,或 Client ID / Secret 钉钉开放平台机器人;回复优先走 AI Card
🐦 飞书 ✅ 可用 仅扫码,自动创建机器人 飞书账号
🌐 Lark ✅ 可用 仅扫码 Lark 国际版账号
💬 微信 ✅ 可用* 官方 iLink 扫码 建议专用小号;仅私聊
🏢 企业微信 ✅ 可用 扫码(推荐),或 Bot ID / Secret 企业微信智能机器人
🐧 QQ ✅ 可用 扫码,或 AppID / AppSecret QQ 开放平台机器人,不是个人号
✈️ Telegram ✅ 可用 仅填 Bot Token @BotFather;同一 Bot 不要同时开 Webhook

✅ 可用 = 文字收发可用 | *微信 = 只走腾讯官方 iLink,不做逆向个人号 | 群聊都需要 @ 机器人才回复

界面预览

在「设置 → IM助理」连接渠道。未连接显示「配置」,已连接显示开关和状态:

IM 助理设置页

工作区左侧「任务 / 频道」分列。IM 会话只出现在「频道」:

工作区频道侧栏

企业微信等渠道支持扫码快捷绑定:

企业微信扫码绑定

连上后,可在各 IM 里直接驱动本机助手:

DSH 产品生态

本产品既可以独立安装,也可以随桌面端或 Web 套件一起使用。它们共享同一个 DSH 核心,但面向不同的使用方式:

产品 与本产品的关系
DeepSeek Harness 本产品的运行宿主,提供模型、会话、工具和插件系统
DSH Codex Desktop 下载安装即用的桌面产品,已内置本产品和其他 5 个功能产品
DSH Codex Suite 面向已有 DSH Web 环境的一键套件,会安装本产品和其他 5 个功能产品
6 个功能产品 Codex UI · IM Connect · Automation · Skills Manager · Archive Manager · Agency Agents

前置条件

  • 已可正常运行 DeepSeek Harness Web,且可在 PowerShell 中使用 dsh。
  • 以下示例使用 web profile;请替换为实际目标 profile。
  • 从源码安装或二次开发需要 Node.js 22+;仅从 npm 安装无需在任意目录执行 npm install。
  • 安装后必须重启 dsh web,并在浏览器硬刷新,才能看到「设置 → IM助理」。

安装

dsh plugin add 会转发到 profile 目录里的 pnpm add。不写版本、不指定官方源时,本机镜像和最短发布间隔可能让你停在旧版。

交给其他 Agent 一句话安装

本插件运行在 DeepSeek Harness Web 里。把下面其中一句复制到 DSH、Codex 或 WorkBuddy,让它代你安装到本机 web profile。

从 npm 安装:

请把 DSH 插件 @michengai/dsh-im-connect 最新版装进本机 web profile,使用官方 npm 源执行:dsh plugin --profile web add @michengai/dsh-im-connect@latest --registry=https://registry.npmjs.org/。装完执行 dsh --profile web --dump-config,确认已挂载 im-connect,并提醒我重启 DSH Web 后硬刷新浏览器,打开「设置 → IM助理」。

从源码安装:

请从 https://github.com/MichengAI/dsh-im-connect 安装 DSH 插件:克隆仓库,执行 npm install 和 npm test,再在该目录执行 dsh plugin --profile web add .。不要只复制 lib。然后执行 dsh --profile web --dump-config,确认已挂载 im-connect,并提醒我重启 DSH Web 后硬刷新浏览器,打开「设置 → IM助理」。
产品 怎么用
DSH 把上面其中一句发给当前会话。
Codex 把上面其中一句发给 Codex,让它在本机执行安装。
WorkBuddy 把上面其中一句发给 WorkBuddy;源码安装也可同时粘贴仓库地址 https://github.com/MichengAI/dsh-im-connect。

Codex 和 WorkBuddy 只负责代装;装好后仍要打开 DSH Web 使用「设置 → IM助理」。

也可以自己执行同一条 npm 命令:

dsh plugin --profile web add @michengai/dsh-im-connect@latest --registry=https://registry.npmjs.org/

未把 dsh 装进 PATH 时,把开头的 dsh 换成 npx --yes @deepseek-ai/dsh。

从官方 npm 安装最新版

在任意 PowerShell 目录执行:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
dsh plugin --profile web add @michengai/dsh-im-connect@latest --registry=https://registry.npmjs.org/
dsh --profile web --dump-config

需要钉死某一版时,把 @latest 换成具体版本,例如 @0.1.1。

配置输出中应包含 im-connect。安装后重启 DSH Web 并在浏览器硬刷新。不要手工复制客户端文件,dsh plugin add 会同时应用 cordis.patch.yml。

从源码安装

适用于调试或使用未发布改动。克隆后的本地路径就是插件安装路径:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
Set-Location D:\Repository\deepseek-harness-plugin
git clone https://github.com/MichengAI/dsh-im-connect.git
Set-Location .\dsh-im-connect
npm install
npm test
dsh plugin --profile web add .
dsh --profile web --dump-config

完成后重启 DSH Web 并硬刷新浏览器。dsh plugin ... add . 会读取当前目录的包信息和 cordis.patch.yml;不要改为直接复制 lib 目录。

使用

打开「设置 → IM助理」,先选工作区、权限和模型,再连接渠道。详细步骤见 使用说明。

目标 操作 说明
连接渠道 未连接卡片点「配置」,扫码或填写凭据 飞书 / Lark / 微信仅扫码;Telegram 仅填 Bot Token;成功后配置弹窗自动关闭
暂停接收 关闭已连接卡片上的开关 凭据保留,只是暂时不收消息
在 IM 里下任务 扫码用户私聊直接发文字;其他人需先在设置页批准。群聊只需 @ 每个聊天对应一条独立频道会话
分段输入 结尾加 .. 表示还有后续,!! 表示立即提交 默认约 5 秒合并窗口
新开会话 发送 /new 或 /clear 只影响当前 IM 聊天,不影响网页任务
查看状态 / 帮助 发送 /status 或 /help 只作用于当前频道会话
批准陌生人私聊 打开「设置 → IM助理」,在待批准列表点「批准」或「拒绝」 只影响私聊准入,不影响群聊
批准工具 在私聊回复「批准」或「拒绝」 也接受 yes / no / allow / reject;群聊无效
在网页里回看 打开工作区「频道」页签 IM 会话不会出现在「任务」里

钉钉回复优先走官方 AI Card 流式卡片;创建失败则回退普通文本。Telegram 同一 Bot 不要同时开 Webhook。

权限与安全边界

项 当前行为
用户准入 群聊不用绑定,只需 @。私聊默认拒绝:扫码用户自动放行,其他私聊用户需在设置页批准
管理接口 仅本机回环(localhost / 127.0.0.1 / [::1])
敏感字段 优先写入 DSH ctx.credentials;没有该服务时落到 %DSH_HOME%\dsh-im-connect\secrets.json
渠道状态 channels.json 只保存启用状态和凭据引用,不保存明文 Secret
浏览器回包 不返回 token、secret、App Secret 或原始用户标识
微信协议 只走腾讯官方 iLink,不使用逆向个人微信协议
工具批准 仅私聊且发送者已在白名单时生效,不能跨会话、也不能在群里批准

不要把 DSH Web 暴露到非本机地址。权限预设与 Chat 使用相同的 Host sandbox-policy;danger-full-access 不套沙箱。

二次开发

本仓库用 src 开发,构建到 lib:

  • src\index.ts:Host 入口、配置和生命周期。
  • src\manager.ts:渠道启停、本机 API、凭据落盘。
  • src\engine:会话路由、斜杠命令、审批、分片和回推。
  • src\channels:钉钉、飞书、Lark、微信、企业微信、QQ、Telegram 适配器。
  • client.js:设置页和工作区频道侧栏。
  • tests\*.test.mjs:路由、扫码、凭据、QQ、投递和侧栏测试。

修改后运行测试并以本地目录安装验证:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
npm test
dsh plugin --profile web add .

修改渠道或会话逻辑时,必须保持:引擎不写死平台名、渠道不创建 agent、网页任务与 IM 频道分列。

验证

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
npm test

prepublishOnly 会在发布前自动执行测试。

项目文档与许可证

项目状态、使用边界、技术架构和迭代记录从文档交接入口开始。详细操作说明见 使用说明。默认安全姿态见 SECURITY.md。

本项目采用 Apache License 2.0。

原始 README: https://github.com/MichengAI/dsh-im-connect/blob/main/README.md ↗

同类插件

查看全部 →
通知与集成alvinunreal

dsh

将 DeepSeek Harness 的生命周期状态、错误与审批请求,桥接到本地运行的 OpenPets 桌面伙伴。

查看详情
1081github+08-21
通知与集成tencent-connect

dsh-qqbot

让 QQ Bot 接入 DeepSeek Harness(dsh)的官方插件

查看详情
55github+08-17
通知与集成omdsh-dev

dsh-open-in-vscode

从 Web GUI 一键在 VS Code 中打开工作区目录。

查看详情
39github+08-13
通知与集成omdsh-dev

dsh-notification

回合完成桌面通知,按结果分控 + 关键词过滤。

查看详情
38github+08-13
通知与集成THEWOLFWALKER

dsh-notifier

DSH 统一通知推送与远程控制:一个 `notify()` API 打通 25+ 渠道(Telegram / 钉钉 / 飞书 / 企业微信 / QQ 机器人 / WxPusher / PushPlus / Server 酱 / Bark / Discord / Slack / ntfy / webhook 等),timeSensitive / active / passive 分级路由并重试;五通道反向审批(Telegram 按钮 / 飞书卡片 / QQ / WxPusher / 微信 iLink);QQ/钉钉/飞书官方扫码登录;本地 Web 管理台;多 agent 路由;系统桌面通知——以及**手机指挥中心**:在手机上发 `!status` / `!stop` / `!retry` 遥控 agent,通知带可操作按钮(查看结果 / 重试 / 日志,点击回调 agent)。密钥脱敏、工具限流、零运行时依赖。

查看详情
27github+08-16
通知与集成wzj998

chatccc

飞书(Lark)或微信(WeChat)聊天控制 DeepSeek Harness / Claude Code / Cursor / Codex / CCC Agent

查看详情
22github+08-23