Community编程与开发github.com

核实发布(verify-release)

验证常规版或扩展稳定版 OpenClaw 发布是否符合该发布轨道的精确发布面、工作流标识、包来源、烟雾测试和实时网关行为。

核实发布(verify-release) 是什么?

该技能用于验证 OpenClaw 发布是否已完成整个发布流程(发布、推广、烟雾测试及实时验证)。它不作为发布技能,仅用于检查状态。支持常规测试版/稳定版以及扩展稳定版两种发布轨道。常规轨道需验证 GitHub Release 的完整性(包括资产校验和)、npm 包的正确版本与签名、ClawHub 注册表状态及工作流执行结论。扩展稳定版则需验证 Git 标签、GitHub Release、工作流程、npm 注册表、来源证明及 Docker 镜像状态,且不会发布原生或 ClawHub 制品。该技能强调基于实时数据验证,拒绝依赖本地检出状态或过时记忆;需运行网关实时烟雾测试以确认核心功能(如 healthz 端点与网关代理调用)正常工作。最终输出简洁的“是/否”结论、证据要点及注意事项。

兼容平台~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/clawdbot/clawdbot/tree/main/.agents/skills/verify-release

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

核实发布

当被询问某个 OpenClaw 发布是否已完全发布、公布、推广、进行过烟雾测试或实时验证时使用此技能。这是一个 核实技能,而非发布技能;在更改发布状态前,请使用 $release-openclaw-maintainer。

规则

  • 将类似 .27 的简短后缀根据当前日期/上下文解析为具体的 CalVer 版本,然后说出已解析的版本。
  • 首先确定发布轨道。两条轨道均使用共享的 GitHub Release 证据账本。常规测试版/稳定版还使用平台图谱;扩展稳定版则使用其规范分支、npm 选择器和网关表面。不要要求一条轨道提供另一条的原生或 ClawHub 制品。
  • 验证实时状态。不要相信本地检出状态、发布说明或旧有记忆作为当前真相。
  • 如果检出目录不干净或存在差异,仅将其用作脚本/参考。对于版本元数据,请从 GitHub release/tag 获取,或在 /tmp 下解压标签 tarball。
  • 切勿打印密钥。仅将继承的实时密钥用于限定的烟雾命令。
  • 保持最终输出简洁:是/否 、证据要点、注意事项、清理。

常规测试版/稳定版检查

以下检查仅适用于常规编排发布轨道。

  1. GitHub Release:
    • gh release view v<VERSION> --repo openclaw/openclaw --json tagName,name,publishedAt,isDraft,isPrerelease,targetCommitish,url,body,assets
    • 确认稳定版发布不是草稿或预发布。
    • 确认发布主体中在预期位置包含 npm、CI、插件 npm、ClawHub、mac/appcast 的证据链接。
    • 确认稳定版 Mac 发布所预期的资产已上传:zip、dmg、dSYM、依赖证据、不可变全量验证清单、发布后证据以及稳定版主线关闭清单。
    • 下载每个不可变证据资产及其 .sha256 配套文件,然后在信任发布记录之前验证校验和。
  2. 根 npm:
    • npm view openclaw@<VERSION> version dist-tags.latest dist.tarball dist.integrity time.<VERSION> --json
    • 对于稳定版,latest 必须等于 <VERSION>。
    • 记录 tarball、完整性签名、发布时间。
    • 确认发布后证据记录中包含 npmRegistrySignaturesVerified: true 和 npmProvenanceAttestationMatched: true。
  3. 插件发布集:
    • 从 GitHub 获取确切的标签元数据,而不是从脏的本地检出中获取:将 https://api.github.com/repos/openclaw/openclaw/tarball/v<VERSION> 下载到 /tmp/openclaw-v<VERSION>-src。
    • 使用记录的发布 Tooling SHA 中的规范发布规划器/收集器,结合确切标签的包元数据,推导出该发布轨道所期望的完整 npm 和 ClawHub 包集合。不要计数原始发布标志:即使设置了发布标志,openclaw.build.bundledDist === true 也会明确延迟外部发布。单独记录延迟的包名及原因。
    • 使用不可变的发布计划、注册表回读和工作流作业,协调预期的包标识、版本和数量,包括原始发布、先前发布的版本以及选定的恢复运行。选定的恢复子集不得缩小完整的预期发布集:gh api repos/openclaw/openclaw/actions/runs/<RUN>/jobs --paginate。
    • 每个预期的 npm 插件必须具有版本 <VERSION> 并且 dist-tags.latest === <VERSION>。
  4. ClawHub:
    • 检查插件 ClawHub Release 工作流的结论和发布作业数量。
    • 使用 OpenClaw 本身进行实时注册表证明:openclaw plugins search <known-plugin> --json。
    • 在隔离的 HOME 环境中,从 ClawHub 安装一个恰好为所需发布版本的官方插件:openclaw plugins install clawhub:@openclaw/matrix@<VERSION>。首选 matrix,除非该插件不在预期集合中。ClawHub 版本属于规范;--pin 仅受 npm 安装支持。
  5. 发布工作流:
    • 验证发布说明证据链接的结论:完整发布验证、OpenClaw 发布检查、OpenClaw NPM 发布、插件 NPM 发布、插件 ClawHub 发布,以及当预期有稳定版 Mac 资产时的 mac 预检/验证/发布。
    • 对于稳定版,验证 OpenClaw Stable Main Closeout 是否成功,并且其清单记录匹配的发布标签、当前回滚演练、稳定版浸泡和阻塞性性能证据。
    • 仅总结相关成功/失败的作业;忽略常规跳过的可选通道,除非发布主体承诺了它们。

扩展稳定版检查

扩展稳定版拥有一个带有共享发布证据的 GitHub Release,但没有原生或 ClawHub 制品。将其与实时标签、工作流、注册表、来源和镜像状态一起验证。

  1. 身份: 要求最终版本为 v<VERSION>,补丁版本 33+,无后缀,包含在 extended-stable/YYYY.M.33 中。只有活跃的候选版本必须等于最新提交。根包和每个可发布的官方插件必须声明 <VERSION>。要求 Git 标签和一个公开的、非预发布的 GitHub Release,其标题和规范主体必须与标签匹配。要求 isLatest=false,以及依赖证据、不可变的完整发布验证清单、发布后证据及其校验和。要求没有原生或 ClawHub 资产。
  2. 工作流链: 找到成功的父级发布运行及其预检、完整验证、插件 npm 和核心发布子运行。要求一个受保护的 release-publish/* 父级运行和一个规范的 release-ci/* 验证生产者,并带有已验证的工作流 SHA 来源。验证必须使用 rerun_group=all、release_profile=stable、阻塞性浸泡/性能以及保存的重试尝试。核心发布必须引用所有三个运行 ID,并将其清单、工作流引用和 tarball 摘要绑定到发布 SHA。
  3. 注册表: 要求确切版本和 extended-stable 选择器对于根包、每个预检 corePackageTarballs 条目以及从标签派生的每个 publishToNpm === true 的官方插件都返回 <VERSION>。比较插件计划、作业和完整回读;绝不从差异推断清单。
  4. 来源: 从受信任的当前工具运行 node --import tsx scripts/openclaw-npm-postpublish-verify.ts <VERSION>。要求签名、规范分支来源以及发布/预检摘要绑定到发布 SHA。保留输出和工作流 URL。
  5. Docker: 验证两个注册表中的确切默认、精简、浏览器和架构镜像及证明。仅允许三个 extended-stable* 别名解析到这些摘要。要求成功的 OpenClaw Release Publish 父级运行及其完成的 Docker 验证。正常路由在此之后完成;显式请求的快速路径可能先激活 GitHub。通过当前主线的 Docker Channel Promotion 为确切的标签修复别名,无需重建。
  6. 恢复: 绝不重新发布。对于根选择器(未加后缀的最终补丁 33+),在 openclaw/releases dist-tag 工作流中使用 promote_extended_stable,并使用经过批准的、凭据隔离的工具处理其他选择器,然后重复完整回读。不要要求 ClawHub、原生/移动应用、网站、私有 dist-tag 或常规 latest。要求共享发布证据,但不要要求常规的原生或 ClawHub 资产。

共享实时烟雾测试

在完成特定轨道的发布检查后:

  1. 已发布包烟雾测试:
    • 在 /tmp 隔离 HOME 中:npm exec --yes --package openclaw@<VERSION> -- openclaw --version。
    • 运行至少一个无害命令,触及已发布的 CLI 表面,例如 plugins --help 或 gateway --help。
  2. Dev 网关实时模型烟雾测试:
    • 使用临时 HOME/工作区,而非用户的正常状态:HOME=/tmp/openclaw-release-smoke/home OPENCLAW_WORKSPACE=/tmp/openclaw-release-smoke/work pnpm openclaw --dev gateway run --auth none --force --verbose。
    • 从启动输出或日志中解析已启动网关的绑定端口。
    • 对于 --auth none,要求未认证的 GET http://127.0.0.1:<PORT>/healthz 返回 HTTP 200 以及确切的 JSON 对象 {"ok":true,"status":"live"}。
    • 保留 gateway health --json 用于有意使用凭据或设备配对的烟雾测试,传递该网关所需的明确凭据。
    • 使用继承的 OPENAI_API_KEY、简短提示、显式会话密钥、JSON 输出和已知可用的模型,进行一次网关支持的代理调用。
    • 如果配置的默认模型因不可用而失败,则记录该注意事项,并重试使用最新的已知良好的 OpenAI 模型,而非声明发布失败。
    • 停止网关并验证端口不再监听。

需报告的注意事项

  • dist-tag 注意事项:稳定版的 latest 是发布真相;如果可选的 beta 镜像仍然指向某个测试版,报告为注意事项,而非稳定版发布阻塞项,除非用户要求验证测试版推广。
  • 轨道注意事项:命名轨道并指出有意图缺失的表面。不要将缺失常规发布制品报告为扩展稳定版失败。
  • 出差异的检出注意事项:当本地源代码 SHA 与发布标签或远程仓库不同时,说明差异点并说明使用了哪些实时源代码。
  • 烟雾测试注意事项:区分网关支持的代理成功与本地嵌入式回退。有效的 auth-none 实时烟雾测试包含确切的 /healthz 结果、一次成功的网关支持代理调用以及该调用的网关日志/运行 ID。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

acp-router

Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either OpenClaw ACP runtime sessions or direct acpx-driven sessions ("telephone game" flow). For coding-agent thread requests, read this skill first, then use only `sessions_spawn` for thread creation. Codex chat binding defaults to the native Codex app-server plugin unless ACP is explicit or background spawn needs ACP.

add-model-provider

Add and live-prove a model provider with non-interactive config one-liners, without exposing credentials.

agent-transcript

Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely.

apple-notes

Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.

apple-reminders

List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.

auto-qa

Run OpenClaw-wide autonomous QA and live/stress campaigns across independent subsystem lanes, with verified fixes and a resumable evidence report.

autoreview

Structured code review through the shared OpenClaw agent-skills installation.

bear-notes

Create, search, and manage Bear notes via grizzly CLI.

blacksmith-testbox

Run Blacksmith Testbox for CI-parity checks, secrets, hosted services, migrations, or builds local cannot reproduce.

block-kit

Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.

blogwatcher

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

blucli

BluOS CLI (blu) for discovery, playback, grouping, and volume.

bluebubbles

Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups.

browser-automation

Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows, login checks, tab management, or recovery from stale refs/timeouts.

camsnap

Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.

canvas

Present HTML on connected OpenClaw node canvases, navigate/eval/snapshot, and debug canvas host URLs.

channel-message-flows

Use when running QA Lab channel message flow evidence.

clawdtributor

Clawtributor PRs here, last week or another window: discover conversation refs, recheck GitHub, rank by impact.

clawhub

Search ClawHub for plugins by default, or skills when explicitly requested; install, verify, update, uninstall, publish, or sync skills.

相关技能