
Security News
GitHub to Block pull_request_target Workflows by Default Starting December 2
GitHub is tightening GitHub Actions security with new restrictions on privileged pull request workflows. Here's what changes and how maintainers are affected.
dsh-im-union
Advanced tools
Union IM bridge for DeepSeek Harness 鈥?clean-room merge of dsh-im and dsh-im-connect capabilities, compatible across 0.1.2-rc.1 .. 0.2.1-rc.2 hosts.
DeepSeek Harness 的 IM 联合桥——净室重写,能力合集来自社区两仓(xmanrui/dsh-im 与 MichengAI/dsh-im-connect),不复制其源码。
0.1.2-rc.1 0.1.5-rc.1 0.1.5-rc.2 0.1.5-rc.3 0.1.7-rc.1 0.1.7-rc.2 0.2.0-rc.1 0.2.0-rc.2 0.2.1-alpha.2 0.2.1-alpha.3 0.2.1-rc.1 0.2.1-rc.2 0.2.1-rc.3 0.2.1-rc.4(覆盖 0.1.2 / 0.1.5 / 0.1.7 / 0.2.0 / 0.2.1 共 14 个 rc/alpha)0.4.7:15 个渠道适配器(覆盖 12 个平台,含邮件;企微/钉钉/QQ 各含机器人与自建应用或推送两档)、跨版本窄腰、会话引擎、审批/提问 IM 闭环、多账号管理面、原生「任务/频道」侧栏分离、IM 简洁预设与出站净化、SVG 图表转图、final 抄送 relay 均已交付(单测 728 项;宿主农场 0.1.2/0.1.5/0.1.7/0.2.1 四线冒烟全绿;桌面 profile 真机装机与浏览器目视实证至 0.4.6)。真机验收项逐项登记在 CHANGELOG;能力分期见开发仓计划台账。
能力总览:
im-concise 智能体预设(persona 完整模式从源头阻断 GenUI 围栏/裸 HTML 等富结构注入)+ 出站净化兜底;```svg 围栏自动转 PNG 图片发送(需宿主侧渲染依赖在位,缺位降级纯文字);模型白名单护栏(渠道外兜底集合);/relay 回合结果镜像到通知渠道(钉钉群 webhook / QQ 主动推送,可用账号 ID 或别名绑定)。dsh plugin --profile web add dsh-im-union@latest --registry=https://registry.npmjs.org/
装好后在宿主侧栏/设置页的「IM 联合桥」面板添加账号:大部分渠道走凭据绑定(Bot Token/App 凭据,secret 字段只单向入库不回显);微信/WhatsApp 走扫码绑定;企微自建应用需将本插件管理面回调 URL(/api/dsh-im-union/wecom-app/callback)配入后台接收服务器。隐私与凭据红线见 SECURITY.md;第三方依赖声明见 THIRD_PARTY_NOTICES.md(净室重实现,不复制任何上游源码)。
安装前提:
@whiskeysockets/baileys 已声明为 optionalDependencies,随包自动安装;若安装时离线被跳过,渠道启动时会明确报「未安装」并拒绝,不崩溃。ffmpeg 在 PATH 中(转码二进制不随包分发,仅启用语音档时才会调用)。装好后在宿主设置页/侧栏的「IM 联合桥」面板管理账号与偏好;日常操作全部可在聊天内完成(发 /help 看命令)。
三类绑定形态,面板按渠道元数据自动出表单:
| 形态 | 渠道 | 说明 |
|---|---|---|
| 凭据表单(9) | telegram / discord / slack / matrix / imessage / wecom-app / email / dingtalk-notify / qq-notify | 填 Bot Token 或 App 凭据;secret 字段只单向入库,任何回包零凭据 |
| 凭据或扫码(4) | feishu / wecom / dingtalk / qq | 二选一:填应用凭据,或走面板扫码建机器人 |
| 扫码(2) | weixin / whatsapp | 微信走官方 iLink 扫码;WhatsApp 走 Baileys 配对 |
账号 ID 由系统自动生成(<channel>-<ts36><rand>),无需也不应手填;「别名」才是给人看的名字,可在面板设置。
| 组 | 命令 |
|---|---|
| 会话 | /help /menu /status /new /stop /steer <文本> /sessions [all] [页] /session <序号|id片段> /fork /rename <标题> /unbind /goal <文本|-> /queue /mute |
| 模型与预设 | /models /model <id> /reasoning <档位> /presets /preset <名称> /workspaces /workspace <路径|-> |
| 投递与抄送 | /delivery [retry <序号>] /export /relay <账号|-> /speak <文本> |
命令默认只对白名单用户开放;群聊只认显式 @ 本机器人。工具审批与交互提问在原聊天回答(默认拒绝、发起者限定、5 分钟超时)。
/relay)把当前会话每回合的最终回答镜像到一个纯出站通知账号(钉钉群 webhook / QQ 主动推送):
/relay 列出本会话绑定(未绑定时回用法提示)
/relay - 解绑
/relay <账号> 绑定;<账号> 可为代理键 ID 或别名
/relay <账号>:<targetId> 绑定并指定推送目标
chatId 作 openid/group_openid,必填。[源渠道/会话短id] 前缀与同款收轮后缀;投递结果不明时绝不自动重发,失败落 plugin.log。/new 轮换后新会话不继承旧绑定(需重新 /relay);一个会话同时只指向一个通知账号。插件把宿主侧栏包成两个自持页签:任务=官方会话树(已过滤 IM 会话,不会冒出「未分组」条目)、频道=按渠道分组的 IM 会话列表(搜索、运行状态点、点击打开)。检测到侧栏已被其它插件接管时完全不插手,此时渠道列表退化为设置面板内的卡片。
设置面板「模型白名单」框一行一个 provider/model(留空=不限)。非空时 /models 只列白名单内、/model 越界被拒并回列可用项;账号级模型偏好不受约束。用途:模型异常时 IM 远端仍有可切的兜底集合。
需要图示时让助手输出一个 svg 代码围栏(完整内联 SVG、白底深色前景、宽 ≤1000),插件会渲染成 PNG 作为图片消息发出;渲染依赖不在位或渠道不支持图片时降级为纯文字,不阻断回答。
插件向宿主注册 im-concise 预设并作为 IM 会话默认:persona 完整模式(从源头阻断 GenUI 围栏、裸 HTML 等富结构注入)+ 简短纯文字纪律。账号「会话偏好 → Agent 预设」可改用其它预设;出站净化作为兜底安全网始终生效。
/api/dsh-im-union/* 复用宿主登录态(每请求过 Host/Origin/Cookie 三查),回包零凭据零内部异常细节:
| 组 | 端点 |
|---|---|
| 探针 | /ping /state |
| 账号 | /accounts /accounts/save /accounts/pause /accounts/remove /accounts/allowlist /accounts/check |
| 目录 | /session-catalog /channels |
| 扫码 | /weixin/qr/start /weixin/qr/status |
| 主动投递 | /proactive/send /proactive/targets /proactive/targets/remove /proactive/syncback |
| 抄送与白名单 | /relay-bindings /relay-bindings/bind /relay-bindings/unbind /model-whitelist |
| 其它 | /connector/jobs /connector/jobs/cancel /wecom-app/callback(第三方回调,验签即认证) |
npm install
npm run typecheck
npm test
node scripts/sync-hosts.mjs --write # 宿主版本声明单源下发
FAQs
Union IM bridge for DeepSeek Harness 鈥?clean-room merge of dsh-im and dsh-im-connect capabilities, compatible across 0.1.2-rc.1 .. 0.2.1-rc.2 hosts.
The npm package dsh-im-union receives a total of 1,212 weekly downloads. As such, dsh-im-union popularity was classified as popular.
We found that dsh-im-union demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
GitHub is tightening GitHub Actions security with new restrictions on privileged pull request workflows. Here's what changes and how maintainers are affected.

Security News
/Application Security
A practical guide to securing GitHub Actions against supply chain attacks, covering malicious pull requests, credential theft, dependency risks, and release pipelines.

Security News
Composer 2.11 adds dependency cooldowns, joining package managers that delay new releases to reduce supply chain risks while allowing urgent security updates.