Releases: zxz9988/dsh-wechat-bridge
Releases · zxz9988/dsh-wechat-bridge
Release list
v0.5.0 · 文件交付 / 用量尾注 / 排版优化 / 入站文件 / 看门狗
[0.5.0] - 2026-08-15
新增
- 文件/图片上传修复(关键):iLink 服务端已把
getUploadUrl响应从旧字段upload_param切换到新字段upload_full_url,而wechat-ilink-client@0.1.0(npm 无新版)只认旧字段,导致 outbox 文件回传全线失败("getUploadUrl returned no upload_param")。现自实现上传段:兼容新旧两种响应、AES-128-ECB 加密、POST 到预签名地址、下载参数取 CDN 响应头x-encrypted-param(官方 openclaw-weixin@2.4.6 同款流程);图片与文件统一走此路径。另加连续失败上限(5 次后移入failed/停止重试,避免每 2 秒重试刷屏)。 - 用量尾注:每轮 AI 回复末尾自动附
⚙ 模型 · out 输出 · in 输入 · ctx 上下文(tokenMeter 服务重放会话计算,provider 用量锚点缺失时仅显示 ctx;异常不影响回复)。配置usageFooter(默认开)。 - 专属文件交付工具:注册
wechat_send_file(直接写内容交付文件)与wechat_send_local_file(发送工作目录内已有文件)两个全局工具——不依赖 Agent 预设组合,微信侧智能体必然可见。实测发现模型在生成 HTML 报告时只把代码贴到聊天里,并声称"手上只有网页抓取一个工具";现将文件交付变成确定性能力:工具写入联系人的 outbox 目录后由扫描器自动发送,并把工具用法注入 Agent 作用域提示。wechat_send_local_file有工作目录安全边界(拒绝外发工作区外文件)。修复:工具定义补充output声明(注册曾被 ToolRuntime 以 "must declare output" 拒绝)。 - 微信排版优化:新增流式安全的 markdown-lite 渲染器(
createWeChatMarkdownRenderer,纯函数):**加粗**/行内码/删除线/[链接](url)转纯文本、| 表格 |两列转「a:b」多列对齐、> 引用/# 标题去标记、- 列表转•、```代码块原样透传;逐行处理、跨片状态保留(与流式消毒器同构)。配置wechatMarkdown(默认开)。非流式长回复自动加 `(1/n)` 分段编号。 - 入站文件接收:微信发 PDF/Word/文本等文件自动下载到
wechat-attachments/(文件名清洗防路径穿越),路径交给 AI 读取分析;发送前回执「📎 收到 N 个文件」。入站视频仍不支持。 - 群聊支持(代码就绪,平台未开放):开启
groups(默认)后处理群消息:按群维护独立会话、白名单按发送成员校验、groupRequireMention(默认开)仅当消息 @机器人 时响应(匹配账号 ID/本地名/"@"开头,附群消息字段诊断日志)、控制命令按发送者鉴权、回传目标为群 ID。群聊无"正在输入"能力,自动跳过。⚠️ 实测确认:当前微信 ClawBot 机器人无法被拉入群聊(平台未开放),功能暂不可用;平台开放后开箱即用。 - 长轮询假死看门狗:
pollWatchdogSecs(默认 90 秒)内无任何 poll 事件判定假死,自动重启监听(monitorLoop 冷却后重建)。实测曾出现iLink 客户端错误:fetch failed后长轮询静默挂起的情况。