Releases: soimy/openclaw-channel-dingtalk
Release list
v3.6.4
v3.6.4 发布说明
本次 patch 版本聚焦 AI Card 媒体上传去重修复,以及功能 Gap 提案文档整理。
最新版本入口:latest.md
🛠 修复与稳定性
- 修复 AI Card deliver 流程中 mediaUrls 重复上传
📚 文档与提案
- 整理后续功能工作用的 features gap 分析
PR #568(by @zhumin-zizhu)新增功能对标与 gap 分析文档,系统整理后续 feature 工作的优先级、证据链与实现索引,便于后续按需推进。
🤝 鸣谢
感谢本版本周期的所有贡献者:
Full Changelog: v3.6.3...v3.6.4
v3.6.3
🛠 修复与稳定性
1. 群聊 AI Card 流式展示稳定性
-
修复群聊 AI Card 流式内容重复渲染
-
修复群聊 AI Card 空白并触发 Markdown 降级
2. Markdown 消息表格兼容性
- 修复 Markdown 表格在钉钉消息中无法渲染
3. 多 Agent 命令路由
- 修复
@agent /command路由到错误 session 的问题- PR #560(by @zhumin-zizhu)修复多 Agent 模式下
@agent /new、@agent /stop、@agent /reasoning stream等命令仍被路由到默认 Agent session 的问题。 - 将两个重叠的路由解析器合并为统一的
resolveMessageTarget,返回判别式MessageTarget联合类型,@mention/ alias 解析只执行一次。 - 命令分发时
CommandBody去掉前导@agent前缀(如@work /new→/new),RawBody保留原始用户输入。 - Closes #460。
- PR #560(by @zhumin-zizhu)修复多 Agent 模式下
4. 会话场景媒体回复路由
-
修复会话媒体回复的路由与投递
-
修复会话回复 Markdown 结尾内容丢失
📚 文档
- 同步用户文档更新
🤝 鸣谢
感谢本版本周期的所有贡献者:
Full Changelog: v3.6.2...v3.6.3
v3.6.2
v3.6.2 发布说明
本次 patch 版本聚焦 npm / ClawHub 包可安装性修复,以及运行时安全扫描兼容性。
最新版本入口:latest.md
🛠 修复与稳定性
-
修复 npm / ClawHub 包缺少编译后 OpenClaw runtime 产物的问题
-
移除 runtime 包中的进程执行路径
- 同一修复移除了 SecretInput 的
exec来源与对应文档入口,只保留env/file引用,避免安装安全扫描因 runtime 内含进程执行调用而阻断插件安装。
- 同一修复移除了 SecretInput 的
-
新增 DingTalk Gateway RPC 兼容层
🧩 发布链路
- 补齐发布前包内容校验
- 新增
pnpm run build与pnpm run pack:check,CI 在 npm / ClawHub 发布前会确认dist/index.js、dist/index.d.ts与openclaw.plugin.json均进入发布包,并检查 runtime 产物不包含进程执行调用。
- 新增
📚 文档
- 补充卡片模板自定义说明
commit 48d75ac记录了DINGTALK_CARD_TEMPLATE_ID环境变量覆盖和自定义卡片模板资产的说明,便于需要自定义卡片模板的用户查阅。
🤝 鸣谢
感谢本版本周期的所有贡献者:
Full Changelog: v3.6.1...v3.6.2
v3.6.1
v3.6.1 发布说明
本次 patch 版本聚焦 SecretInput 凭据引用、AI Card 生命周期稳定性、多图入站媒体恢复,以及 v3.6.0 用户文档同步。
最新版本入口:latest.md
✨ 功能与体验改进
- 支持 DingTalk
clientSecret使用 SecretInput 引用
🛠 修复与稳定性
-
修复主动卡片完成时 block 变量收尾问题
-
修复已打开流式卡片的 finalize 生命周期
-
防止并发入站消息重复创建 AI Card
-
修复富文本多图消息只传递单个媒体路径的问题
📚 文档
🤝 鸣谢
感谢本版本周期的所有贡献者:
Full Changelog: v3.6.0...v3.6.1
v3.6.0
v3.6.0 发布说明
本次 minor 版本聚焦 DingTalk Device Flow 自动注册、AI Card v2 展示能力、通道模块拆分、旁路问答体验,以及消息/媒体稳定性修复。
最新版本入口:latest.md
✨ 功能与体验改进
1. DingTalk Device Flow 自动注册
- 新增 DingTalk 设备注册与 setup wizard 接入
2. AI Card v2 与卡片内容表现
-
实现 AI Card template v2
-
支持卡片内 Markdown 图片重定向上传
- 本周期新增卡片 Markdown 图片重定向逻辑,在需要时将图片资源转为 DingTalk 可投递的媒体形态,降低卡片内容因外链或平台限制而展示失败的概率。
3. /btw 旁路问答
- 旁路 session lock 处理临时追问
PR #508(by @BrilliantWang)让/btwside question 能绕过主会话锁,避免长任务占用会话时临时问题被阻塞,同时补齐独立投递与集成测试。
🛠 修复与稳定性
-
修复 CLI 启动时的循环 import RangeError
-
已完成卡片 session recovery 后改走 markdown fallback
-
音频文件默认按附件发送
-
完善详细
chatRecordpayload 处理
🧩 架构与测试
-
继续瘦身
src/channel.ts并拆分通道职责- 本周期将 gateway、outbound、channel actions、channel status 等职责进一步拆到独立模块,保持
channel.ts作为装配层,和docs/contributor/architecture.*.md中的模块边界一致。
- 本周期将 gateway、outbound、channel actions、channel status 等职责进一步拆到独立模块,保持
-
拆分 inbound-handler 测试并隔离状态目录
- 大型入站处理测试被拆分到 quote、media、commands、card、ack、subagent、access 等更聚焦的测试文件中,并通过
test(ci): isolate inbound-handler state dirs降低测试间状态串扰。
- 大型入站处理测试被拆分到 quote、media、commands、card、ack、subagent、access 等更聚焦的测试文件中,并通过
📚 文档与配置
-
补充
cardAtSender配置参考PR #529(by @BrilliantWang)在用户配置参考表中补齐cardAtSender,让卡片 @ 发送者行为更容易被发现和配置。
-
自动生成发布侧边栏条目
🤝 鸣谢
感谢本版本周期的所有贡献者:
Full Changelog: v3.5.3...v3.6.0
v3.5.3
v3.5.3 发布说明
这一周期的重点主要集中在四块:AI Card 流式模式与时间线稳定性、DingTalk 宿主/配置对齐、转发与引用消息修复,以及文档与发布链路整理。
最新版本入口:latest.md
✨ 功能与体验改进
1. AI Card 流式模式与展示稳定性提升
-
新增
cardStreamingMode,统一 AI Card 流式更新策略 -
发布 DingTalk card streaming 配置元数据
2. 宿主可见性与配置表面对齐
-
向宿主 WebUI 发布 DingTalk channel metadata
-
补充 DingTalk 上下文可见性配置
3. 转发与引用消息体验补强
-
支持提取转发 Markdown 消息正文
PR #491(by @BrilliantWang)修复 forwarded markdown message 的内容提取链路,避免转发消息在下游处理时丢失正文语义。
-
修复
chatRecord引用预览摘要缺失
🛠 修复与稳定性
-
对齐 DingTalk 宿主配置与媒体语义
-
补强入站 follow-up:helper warning 与引用可见性
-
恢复附件原始文件名透传与跨回合持久化
PR #505/#506(by @BrilliantWang)修复媒体保存时丢失原始文件名的问题,并将attachmentFileName写入消息上下文,避免转发/引用附件时退化成 UUID 文件名。
-
将连接状态与入站状态投影进 snapshot
📚 文档与发布链路
-
补充 README 中的安装与 API 配额说明
- 一组连续的 README / 安装文档更新补齐了安装前置条件、OpenClaw 使用要求、DingTalk API usage limit,以及 2026 年 4 月配额策略提醒,降低接入与排障成本。
-
整理文档站部署链路并迁移至 Vercel Actions
-
收口本地开发与发布产物边界
- 本次版本还统一补充了规划/设计文档、仓库 Open Graph 资源,并将
.claude/worktrees/与output/等本地产物纳入忽略规则,减少临时文件进入仓库或发布包的概率。
- 本次版本还统一补充了规划/设计文档、仓库 Open Graph 资源,并将
🤝 鸣谢
感谢本版本周期的所有贡献者:
Full Changelog: v3.5.2...v3.5.3
v3.5.2
v3.5.2 发布说明
本页作为 v3.5.2 的补充汇总发布说明,覆盖 v3.5.0 之后直到 v3.5.2 的重要变更。
这一周期的重点主要集中在四块:AI Card 模板与停止交互、Markdown/卡片回复体验、安装发布链路完善,以及钉钉通道稳定性修复。
✨ 功能与体验改进
1. AI Card 能力补齐
-
内置 AI Card 模板,降低卡片模式接入成本
PR #444(by @zhumin)将原先依赖外部cardTemplateId/cardTemplateKey的模式切换为内置模板,默认配置更简单,卡片模式开箱即可用。
-
AI Card 停止按钮支持
PR #444(by @zhumin)为 AI Card 增加 stop button,用户可直接在卡片上中断进行中的生成;同时补齐群聊 owner-only 权限控制、停止态收尾和按钮隐藏逻辑。
2. Markdown 回复更接近真实对话流
-
支持增量分段发送答案
PR #447(by @soimy)让 Markdown 模式按答案尾部增量发送,减少整段等待,更贴近流式回复体验。
-
自动上传本地 Markdown 图片
PR #468(by @ming1523)为本地图片资源补齐上传流程,避免 Markdown 图片在钉钉侧失效。
-
修复
@agent回复在卡片/Markdown 中的引用渲染PR #477(by @bin)统一使用 block quote 前缀,改善@agent响应在钉钉中的可读性。
3. AI Card reasoning 展示更稳定
-
统一 reasoning-on 与 reasoning-stream 的块级投递
PR #457(by @soimy)对齐两类 reasoning 输出通路,减少显示结果不一致的问题。
-
补强 reasoning-on 的临时 transcript 回退
PR #474(by @soimy)在上游事件不完整时提供临时回退,尽量保住最终可见内容。
-
信任显式 reasoning 信号并修复边界拼装
PR #481(by @soimy)与相关后续重构进一步修复 reasoning 块边界,降低思考区与答案区串扰的概率。
🛠 修复与稳定性
-
Slash 命令不再误走子 Agent 路由
PR #478(by @zhumin)修复/new、/stop等命令在路由阶段被错误当作@sub-agent输入的问题。
-
修复 sandbox 场景媒体发送参数对齐
PR #466(by @zhumin)对齐 SDKloadWebMedia参数签名,恢复 sandbox 模式下媒体发送能力。
-
新增插件自有 DingTalk debug 日志落盘
PR #484(by @soimy)支持按账号输出独立调试日志,便于排查流连接、消息投递与卡片更新问题。
-
拆分监控脚本环境处理,规避 OpenClaw 3.31 安全扫描误报
PR #479(by @zhumin)整理监控脚本结构,降低上游安全扫描噪声。
📦 安装与发布链路
-
新增独立 ClawHub 自动发布工作流
- 在
ci(release): add independent clawhub publish workflow这次发布链路改造中,仓库新增独立的.github/workflows/clawhub-publish.yml,使 npm 与 ClawHub 两条发布流程可由同一 tag push 独立触发,降低单一渠道失败对另一渠道的影响。
- 在
-
将
openclaw标记为 optional peer dependencyPR #485(by @wuwen)降低插件安装时的 peer dependency 冲突噪声,更适配当前宿主加载模式。
-
升级
oxlint-tsgolint以修复插件安装问题PR #473(by @bin)修复部分环境下的 OpenClaw 插件安装失败。
-
从 npm 包中排除开发脚本
- 后续发布修正补齐
.npmignore,避免开发用监控脚本误进入发布产物。
- 后续发布修正补齐
🤝 贡献者
感谢本版本周期的贡献者:
Full Changelog: v3.5.0...v3.5.2
v3.5.0
v3.5.0 发布说明 🚀
本次 v3.5.0 是一次重要的功能增强版本,重点聚焦在 单聊多 Agent 路由、AI Card 体验统一、配置表面简化以及文档站重构。
我们新增了单聊场景下的 @sub-agent 路由支持,统一了 AI Card 的单时间线展示,大幅简化了配置项并清理了历史遗留字段,同时将文档站从 MkDocs 迁移至 VitePress。
全新文档站已上线:https://soimy.github.io/openclaw-channel-dingtalk/
✨ 新功能与架构升级
1. 单聊场景多 Agent 路由
-
支持单聊
@sub-agent路由PR #412(by @Sample999)突破群聊限制,将@mention子 Agent 路由扩展至单聊(DM)场景,让多 Agent 协作覆盖全部对话类型。
-
实时停止指令响应
PR #427(by @BrilliantWang)修复了用户发送「停止」/「/stop」指令时需等待当前 generation 完成才生效的问题。现在停止指令可绕过会话锁,实现即时中断。
2. AI Card 体验与消息上下文
-
统一 AI Card 单时间线展示
PR #428(by @soimy)重构 AI Card 显示逻辑,将原先分散的 tool/verbose 输出合并为单一时间线,恢复/reasoning stream和/verbose on下的用户可感知工作链展示。
-
暴露消息上下文元数据
PR #440(by @ming1523)提取消息上下文元数据查询能力,为后续/summary命令奠定基础。
3. 配置表面简化
-
精简 DingTalk 配置项
PR #431(by @soimy)清理历史配置包袱,统一 schema、文档和运行时行为。
-
移除废弃配置字段
PR #445(by @zhumin-zizhu)删除三个零引用字段:corpId、agentId、robotCode(后者始终等于clientId,直接使用clientId即可)。
4. 文档站现代化
- VitePress 文档站重构
PR #436(by @soimy)将文档站从 MkDocs/Python 技术栈迁移至 VitePress,保留原有内容结构的同时优化了用户/贡献者/发布文档的组织方式。
🛠 修复与稳定性改进
-
修复 Sandbox 模式下媒体文件访问
PR #432(by @BrilliantWang)移除inbound body中[media_path:]绝对路径注入,解决 sandbox 环境下文件/音频/视频无法访问的问题。
-
修复引用文件/音频/视频消息下载
PR #411(by @BrilliantWang)修复 v3.4.0 引入的引用消息处理断裂点,恢复对file/audio/video类型引用消息的内容提取与附件文本注入。
-
入站媒体下载超时与日志增强
PR #443(by @soimy)为downloadMedia()第二跳请求添加显式 timeout,防止企业内网/代理环境下请求无限挂起。
-
优化 inbound-handler 测试性能
PR #439(by @soimy)将inbound-handler.test.ts运行时间从 81.5s 优化至合理范围,修复测试配置缺失导致的回退延迟。
-
强化文档站 CI 工作流
PR #438(by @soimy)显式配置 GitHub Pages setup,升级相关 actions 至较新版本。
🤝 贡献者
感谢本版本周期的贡献者:
🌟 新贡献者
- @Sample999 first contribution in
#412
Full Changelog: v3.4.2...v3.5.0
v3.4.2
v3.4.2 紧急发布说明 🚨
Important
紧急修复提醒 (Hotfix)
本次发布是一个紧急修复版本,专门解决了在上一版本中出现的钉钉插件安装失败/依赖丢失的严重问题(表现为安装本插件时会意外导致 OpenClaw 主程序依赖被剔除)。
涉及相关 Issues: #402, #404, #405。
强烈建议所有用户立即更新至此版本,以恢复正常的安装和运行环境!
除了修复致命的安装机制问题外,本次更新还优化了特定场景下引用消息的降级处理。
🛠 修复与改进 (Fixes & Improvements)
- 修复插件安装时的依赖丢失问题 (高危):
- 引用回复空文本降级处理:
PR #401(by @BrilliantWang)优化了引用消息的处理逻辑,当提取的回复文本为空时,将自动回退(fallback)使用被引用消息的previewText,避免产生无内容的异常展现。
🤝 贡献者 (Contributors)
感谢参与本次紧急修复与反馈的开发者:
- @soimy
- @BrilliantWang (欢迎新加入的项目合作者)
- @gps949
- 同时也感谢在 Issue 区及时反馈问题的社区用户们!
Full Changelog: v3.4.1...v3.4.2
v3.4.1
v3.4.1 发布说明 🚀
Important
🚨 核心兼容性变更提醒 (Breaking Change)
本次版本发布主要是为了跟进 OpenClaw 最新的 v3.22 版本。由于上游引入了较多的 Breaking Change,作为社区插件,我们必须跟进同步重构底层 SDK API。
请务必注意:从 v3.4.1 及后续版本开始,本插件支持的最老 OpenClaw 兼容版本变更为 v3.22,且无法提供向后兼容。在升级本插件前,请务必先将您的 OpenClaw 主程序升级至 v3.22 或以上版本。
如果你暂时不打算升级Openclaw主程序到新版本,请暂时逗留在Dingtalk插件 v3.4.0以前的版本
如果你暂时不打算升级Openclaw主程序到新版本,请暂时逗留在Dingtalk插件 v3.4.0以前的版本
如果你暂时不打算升级Openclaw主程序到新版本,请暂时逗留在Dingtalk插件 v3.4.0以前的版本
本次 v3.4.1 是一个关键的兼容性与稳定性补丁版本。除了完成对上游架构的适配外,我们还修复了状态流转和沙箱环境下的媒体发送问题。
🚀 架构重构与适配 (Architecture & Refactoring)
- 同步上游 Plugin SDK 新版 API:
PR #395(by @soimy)全面跟进 OpenClaw v3.22 的底层接口变更,完成核心通信与插件机制的重构适配。
🛠 修复与稳定性改进 (Fixes & Stability)
- 修复 FAILED 终态下的等待阻塞问题:
PR #399(by @BrilliantWang)解决了当状态机进入FAILED终态时,waitForStop无法正确 resolve 导致的逻辑挂起问题。 - 修复沙箱环境下工作区文件发送失败:
PR #398(by @zhumin-zizhu,Fixes#397)修复了沙箱(Sandbox)模式下sendMedia方法无法正确处理工作区(workspace)媒体文件的异常。
🤝 贡献者 (Contributors)
感谢参与本次兼容性升级与修复的开发者:
Full Changelog: v3.4.0...v3.4.1