auto: sync OpenClaw config 2026-09-17 22:13

This commit is contained in:
2026-09-17 22:13:37 +08:00
parent a48974bf4a
commit e21152e1a9
9 changed files with 368 additions and 23 deletions
@@ -7,7 +7,7 @@ description: "消息发不出去/跨频道发送:Cross-context messaging denie
用于「这条消息发不出去」「改投钉钉/飞书」「飞书私聊推不动」这类场景:把消息实际送到**当前会话未绑定**的频道,并拿到可核实的送达证据。与定时提醒无关(提醒的路由写在 cron `delivery` 上,见 `scheduled-reminders`)。
## 事实基础(本机 2026-09-16 实测,OpenClaw 2026.8.1
## 事实基础(本机实测:2026-09-16 OpenClaw 2026.8.1;文件/附件权限 2026-09-17 OpenClaw 2026.9.4
- `message(action=send)` **受会话绑定频道限制**:主会话绑 feishu 时,指定 `channel="dingtalk-connector"` 直接被拒:
`Cross-context messaging denied: action=send target provider "dingtalk-connector" while bound to "feishu"`
@@ -18,6 +18,12 @@ description: "消息发不出去/跨频道发送:Cross-context messaging denie
# → ✅ Sent via DingTalk. Message ID: card_...
```
- 飞书「机器人主动向用户发私聊」当前不可用,报 `Feishu send failed: Sending messages to users is temporarily unavailable.`**群 / chat_id 可达、open_id 私聊不可达**,可复现;此时按第 3 步改投钉钉。
- 飞书**发文本**与**发文件/附件**是两条不同权限:
- 带 `--media <路径>`.md/.docx/.pdf 等)时,若应用缺 `im:resource` 权限,上传阶段即失败:
`Feishu file upload failed: ... feishu_code:99991672 ... Access denied. One of the following scopes is required: [im:resource:upload, im:resource]`
- 这是**应用权限缺失,不是投递内容问题**:换格式、换路径、重试都无效,必须由杨轩在开放平台给应用开通 `im:resource`。
- 诊断用 `feishu_app_scopes` 看 `im:resource` 是否在 granted;开通后再发即成功(2026-09-17 实测 .md/.docx/.pdf 均以 `kind=media` 送达)。
- 缺该权限时文本仍可发:先发文本并告知用户去开通权限,不要反复重试文件。
- 该飞书故障**换 CLI 也一样报错**(`openclaw message send --channel feishu ...` 同样失败)→ 属飞书侧限制,不是 CLI 或工具层问题。
## 步骤
@@ -25,11 +31,13 @@ description: "消息发不出去/跨频道发送:Cross-context messaging denie
1. 先用 `message(action=send)` 发当前频道。读错误分类:
- `Cross-context messaging denied` → 走第 2 步(跨频道)。
- `Sending messages to users is temporarily unavailable` → 走第 3 步(换通道)。
- `im:resource` / `99991672`(带 `--media` 时)→ 权限缺失,走第 6 步(开通权限,不要重试文件)。
2. 跨频道补发:`openclaw message send --channel <频道> --target <目标id> --message "..."`。
目标 id 用该频道已知可达的会话:钉钉 `0464031658857345`;飞书 DM chat_id 见 `scheduled-reminders` 的「投递通道」。发送后回读输出确认 `✅ Sent via ...` + Message ID。
3. 原频道本身不可达时(如飞书主动私聊),把结果改投用户实际能收到的通道(钉钉),并在正文里说明「原频道故障 + 已改投」,让用户知道换通道的原因。
4. 核对送达:只有 CLI 输出 `✅ Sent via ...` 或 `message` 工具返回成功才算发出;任何 `Feishu send failed` / `denied` 都不算,不要在回复里声称已送达。
5. 原频道恢复或用户要求切回时,改回原频道,并撤掉临时的替代通道推送,避免同一条内容双通道重复打扰。
6. **发文件被权限拦住时**`feishu_app_scopes` 确认缺的权限,把开放平台的申请链接给杨轩开通(链接可从报错原文里取,形如 `https://open.feishu.cn/app/<appId>/auth?q=im:resource:upload,im:resource`);开通后直接重发即可,无需改投其他通道。
## 注意