用途
该技能把 Crabpot/OpenClaw 的性能产物转化为清晰的解读:发生了什么变化、哪些是真实信号、哪些是陈旧或噪声数据,以及值得采取什么行动。
适用场景
- 对比 openclaw/crabpot 的分支,例如 main、crab-beta 或 crab-development。
- 读取 reports/crabpot-dashboard-data.json、reports/crabpot-import-loop-profile.json、reports/crabpot-runtime-profile.json、README 仪表盘指标或 GitHub Actions 报告产物。
- 用户询问性能、运行时、CPU、RSS、导入循环、OpenClaw 导入/激活、仪表盘差异,或某个 Crabpot 性能变化是否有意义。
输入
- 目标仓库或本地检出,通常是 openclaw/crabpot。
- 要对比的分支、ref、PR 或产物 URL。
- 可选的 OpenClaw 标签/SHA,用于跨 openclaw@latest、beta 或 openclaw/openclaw@main 的对比。
工作流程
-
在解读数字前先确认数据新鲜度。
- 解析分支头并报告时间戳。
- 在同一分支上对比仪表盘 JSON 与原始剖析 JSON。
- 如果某个分支已陈旧,先说明,避免给出强结论。
- 当 README 片段与原始 JSON 不一致时,优先采用原始 JSON。
-
区分指标族。
- import-loop-profile:针对极小 fixture 的廉价冷捕获循环。适合检测 harness/导入漂移,不适合用于生产运行时结论。
- runtime-profile:Crabpot 分析命令的宏观命令耗时。更适合作为真实套件成本的趋势信号。
- OpenClaw 生命周期:导入加激活阶段。如果 openClawLifecycleCount 为 0,则该分支仪表盘不包含此信号。
-
保守解读 import-loop 指标。
- 使用 p50WallMs、p95WallMs、p50PluginWallDeltaMs、p95PluginWallDeltaMs、maxPluginPeakRssDeltaMb 和 maxPluginCpuDeltaMsEstimate。
- 把 3 次运行的 p95 视为“三次中最差”,而非稳定的尾部延迟估计。
- 墙钟时间小幅上升而插件 RSS/CPU 持平,通常意味着抖动或模块解析开销,而非内存/CPU 回归。
- 基线调整后的插件增量比原始墙钟/RSS/CPU 值更有用。
-
把 runtime profile 指标视为更强的趋势。
- 使用 summary.p50WallMs、summary.p95WallMs、summary.maxPeakRssMb、summary.maxCpuMsEstimate 和 summary.maxHarnessHeapDeltaMb。
- 检查各命令中位数以定位变化来源:fixture-inspection、compat-report-registry、contract-capture、synthetic-probe-plan、cold-import-readiness、workspace-plan、platform-probes 和 import-loop-profile。
- 面向目标的命令普遍均匀变慢,通常指向目标 OpenClaw 表面解析或注册表工作,而非某个插件 fixture。
- 如果 RSS 持平而 CPU 仅轻微变动,应称为墙钟/运行时开销变化,而非内存泄漏。
-
考虑表面变化。
- fixture 数量、入口点数量、OpenClaw 标签或提交 SHA 不同,会使对比部分成为苹果对橘子。
- 新增 fixture 可能提高 issue/probe 计数,而性能仍然健康。
- OpenClaw main 对比 npm latest 可能改善兼容性,同时增加适度的分析开销。
-
给用户直接解读。
- 先给结论。
- 除非用户要求表格,否则优先使用要点和简短摘要。
- 包含精确增量并分类:真实回归、适度变慢、噪声、陈旧数据或信号缺失。
- 推荐一个下一步行动:刷新仪表盘、添加专用生命周期通道、调查特定命令,或作为噪声忽略。
实用命令
- 如果 ghx 不可用,使用 gh。
- 从 GitHub 获取当前分支产物: gh api /repos/openclaw/crabpot/contents/reports/crabpot-dashboard-data.json?ref=crab-development
- 优先使用小型 Node 或 jq 提取,而非手动抓取 README。可用时拉取以下文件:
- reports/crabpot-dashboard-data.json
- reports/crabpot-import-loop-profile.json
- reports/crabpot-runtime-profile.json
- reports/crabpot-ci-summary.json
输出
- 以要点形式给出简洁性能摘要。
- 必要时给出新鲜度注意事项。
- 重要增量及其解读。
- 明确的负责人/行动建议,尤其是当仪表盘产物缺少生命周期导入+激活时。