Skills feishu-probe-optimize

飞书 Probe 优化

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/bobbycats/feishu-probe-optimize" ~/.claude/skills/clawdbot-skills-feishu-probe-optimize && rm -rf "$T"
manifest: skills/bobbycats/feishu-probe-optimize/SKILL.md
source content

飞书 Probe 优化

检测并优化飞书扩展的 probe 缓存配置,减少 API 调用次数。

问题背景

OpenClaw 的飞书扩展在每次健康检查时会调用飞书 Bot API

/open-apis/bot/v3/info
来验证连接状态。健康检查每分钟执行一次。

飞书免费额度:每月 50,000 次(2026年3月)

默认配置

状态缓存时间
成功10 分钟
失败1 分钟

默认情况下的 API 调用量

假设配置了 N 个飞书账号:

  • 每天调用:N × 24 × 60 = N × 1,440 次
  • 每月调用:N × 43,200 次

如果配置 3 个飞书账号,每月调用 129,600 次,很容易超过飞书免费配额。

优化方案

将缓存时间调整为更长间隔:

状态默认时间优化后时间
成功10 分钟24 小时
失败1 分钟1 小时

优化后的 API 调用量

  • 每天调用:N × 1 次 = N 次
  • 每月调用:N × 30 次

3 个账号:每月仅 90 次,节省 99.93%

新增飞书账号

每增加一个飞书账号,每 24 小时会增加 1 次 API 调用(成功情况下)。配置本身无需修改,缓存机制自动适配所有账号。

账号数每天调用每月调用
1130
3390
55150
1010300

更新 OpenClaw 后

OpenClaw 大版本更新时,

extensions/feishu/src/probe.ts
文件会被覆盖,缓存时间会恢复到默认值(10分钟/1分钟)。

更新后需要:

  1. 重新修改
    probe.ts
    中的缓存配置
  2. 执行全量编译:
    pnpm build
  3. 重启服务:
    systemctl --user restart openclaw-gateway

详见下文「使用步骤」。

使用步骤

步骤 1:定位文件

find ~/.openclaw/workspace/openclaw/extensions/feishu/src -name "probe.ts"

步骤 2:修改配置

打开 probe.ts,找到这两行:

const PROBE_SUCCESS_TTL_MS = 10 * 60 * 1000; // 10 minutes
const PROBE_ERROR_TTL_MS = 60 * 1000; // 1 minute

修改为:

const PROBE_SUCCESS_TTL_MS = 24 * 60 * 60 * 1000; // 24 hours
const PROBE_ERROR_TTL_MS = 60 * 60 * 1000; // 1 hour

步骤 3:全量编译

重要:必须执行全量编译,禁止单扩展编译。

cd ~/.openclaw/workspace/openclaw
pnpm build

步骤 4:验证编译产物

检查

dist/extensions/
目录是否包含全部扩展(feishu、telegram 等)。如果只剩 feishu,说明编译方式错误。

步骤 5:重启服务

systemctl --user restart openclaw-gateway

步骤 6:验证服务状态

systemctl --user status openclaw-gateway

确认服务正常运行(active (running))。

为什么必须全量编译?

单扩展编译(如

pnpm --filter feishu build
)会清空并覆盖
dist/extensions/
目录,导致其他扩展的编译产物被删除。

重启后服务会因配置校验失败而崩溃,并进入循环重启。

故障排查

服务重启后崩溃

journalctl --user -u openclaw-gateway -n 50
  • 报错
    plugin not found
    :dist 目录不完整,需要重新执行全量编译
  • 报错
    Config invalid
    :检查 openclaw.json 中的扩展配置

缓存未生效

确认修改的是

extensions/feishu/src/probe.ts
(源码),不是
dist/extensions/feishu/probe.js
(编译产物)。

前后对比

指标优化前(3账号)优化后(3账号)节省
每天调用4,320 次3 次99.93%
每月调用129,600 次90 次99.93%
每年调用1,555,200 次1,095 次99.93%

更多信息