WeCom (Enterprise WeChat) Smart Robot bridge: two-way chat over the aibot WebSocket gateway, no public endpoint needed.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:michaelcode-wang/dsh-wecom
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
This plugin publishes its README in Chinese only.
企业微信(WeCom)智能机器人桥接插件:通过 aibot WebSocket 网关,让 DeepSeek Harness 的智能体变成能在企业微信里双向对话的助手。无需公网地址、无需自建应用回调,只需智能机器人的 bot_id + secret。
协议移植自 Hermes Agent 的 plugins/platforms/wecom/adapter.py(aibot_subscribe 认证 → aibot_msg_callback 收消息 → aibot_respond_msg / aibot_send_msg 回复)。
特性
- 企业微信智能机器人 WebSocket 长连接(
wss://openws.work.weixin.qq.com),断线自动退避重连 - 每个聊天一个独立 agent 会话,多轮上下文保留,空闲自动回收
- 白名单访问控制(
allowedUserIds) - markdown 回复 + 超长消息自动分片(默认 4000 字符)
- 聊天命令:
/help、/reset、/status
安装
# 从 npm(推荐)
dsh plugin --profile im add dsh-wecom
# 或从 GitHub
dsh plugin --profile im add github:michaelcode-wang/dsh-wecom
前置条件
- 企业微信智能机器人:在企业微信后台创建一个「智能机器人」,拿到
bot_id和secret。 - im profile 需要 preset roster:独立
improfile(dsh-base+ 本插件)没有 web 层,而 preset roster(agent-presets)默认由dsh-web-app提供。若要让 agent 挂载某个 preset,需在 im profile 的cordis.patch.yml里手动插入 roster(见下方完整示例)。
配置
在 $DSH_HOME/profiles/im/cordis.patch.yml 中:
# 1) 插入 preset roster(im profile 无 web 层,需手动补)
- insert:
- id: agent-presets
name: '@deepseek-ai/dsh-agent-presets'
config:
default: taibai # 默认 preset;可按需改成你自己的 preset
# 2) 启用本插件
- id: dsh-wecom
disabled: false
config:
botId: '你的机器人ID'
secret: '你的机器人密钥'
allowedUserIds: ['你的企业微信userid']
agent:
preset: taibai # 每个企业微信聊天对应的 agent preset
启动:
dsh --profile im(建议配 launchd / systemd 常驻)。
配置项
| 键 | 默认 | 说明 |
|---|---|---|
enabled |
true |
总开关 |
botId |
'' |
企业微信智能机器人 ID |
secret |
'' |
企业微信智能机器人密钥(只写) |
websocketUrl |
wss://openws.work.weixin.qq.com |
WebSocket 网关地址 |
allowedUserIds |
[] |
允许对话的 userid 白名单;留空=所有人 |
agent.preset |
taibai |
挂载的 agent preset |
agent.cwd |
'' |
agent 工作目录(默认进程 cwd) |
agent.provider / agent.model |
'' |
模型覆盖;留空=部署默认 |
agent.maxMessageLength |
4000 |
单条外发消息最大字符数 |
agent.idleTimeoutMs |
1800000 |
聊天空闲多久后释放 agent(0=永不) |
安全
- 务必配置
allowedUserIds白名单——留空意味着任何人都能驱动你的智能体执行主机工具。 secret标记为role('secret'),不会回显到浏览器。
Links
More in this category
xmanrui/dsh-im★ 3574
Connect IM bots to DeepSeek Harness via QR codes or bot credentials (9 channels: Feishu, WeChat, DingTalk, WeCom, QQ, Slack, Telegram, Discord, and WhatsApp).
shaobeichen/dsh-pocket★ 2955
Remote phone access to the DSH Web UI: scan a QR code for LAN or public (cloudflared tunnel) access with real-time sync, a mobile-adaptive layout, and a settings tab.
OpenPetsHQ/openpets#dsh★ 1400
Bridges DeepSeek Harness lifecycle status, errors, and approval requests to a locally running OpenPets desktop companion.
c1overzz/dsh-bili-scroll★ 1393
Let your DSH agent browse Bilibili on its own, read subtitles, write a daily digest, and @ you when it finds something worth your attention.
inclusionAI/Avernet#deepseek-harness-channel-bcn★ 602
Connects DeepSeek Harness to Avernet's Bot Collaboration Network over WebSocket V2, with automatic onboarding, isolated agent sessions, tool-call events, and multi-bot routing tools.
zaofan-make/dsh-qqbot★ 251
QQ official bot channel (enhanced fork of tencent-connect/dsh-qqbot): full agent chat in groups and DMs, rich media, an auto-tagged sticker library with AI image replies, join approval, mute and broadcast, scheduled wakeups, remote approvals over QQ, interactive cards, multi-account instances, extensions, member profiles, and token-saving value-scored wakeups.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.