CommunityCoding & Developmentgithub.com

release-openclaw-maintainer

Prepare, publish, recover, or verify OpenClaw beta, stable, and extended-stable releases, including approved backports.

What is release-openclaw-maintainer?

release-openclaw-maintainer is a Claude Code agent skill that prepare, publish, recover, or verify OpenClaw beta, stable, and extended-stable releases, including approved backports.

Works with~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/clawdbot/clawdbot/tree/main/.agents/skills/release-openclaw-maintainer

Installed? Explore more Coding & Development skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

OpenClaw Release Maintainer

Use for a release operation, not ordinary development or advisory mutation. Read docs/reference/RELEASING.md for current policy. Load $release-private when available before resolving private credential locators or host topology; credential operations use $one-password.

Choose the operation

Read only the references needed for the selected phase:

  • Regular beta/stable preparation or publication: regular release, which routes preparation and phase-specific proof. If the request does not specify stable/full, default to beta; beta authorization does not authorize later stable promotion.
  • Backport discovery: candidate inventory. For extended-stable also read backport preparation; SDK/config changes need a visible maintenance-risk warning and maintainer decision.
  • Extended-stable .33+ Gateway publication: extended-stable publication. Use the shared publisher with extended-stable inputs; its non-Latest GitHub Release carries evidence without native-app or ClawHub publication.
  • Validation selection or failed proof: validation and confidence, with $release-openclaw-ci for workflow execution and immutable manifests.
  • Interrupted publication or registry promotion: publication recovery.
  • Native assets: platform publication, with $release-openclaw-mac for macOS operations.
  • Stable postpublish synchronization and the exact-SHA deployment handoff: main closeout.
  • Release notes: $openclaw-changelog-update, including its separate approved post-release docs-mirror route. Initial release generation keeps its existing format; docs publication does not run automatically during release. Requested announcements: $release-openclaw-announcement for Discord, $release-tweets for X. Announcements never gate publication and require explicit posting authorization.
  • Published artifact verification: $verify-release. GHSA operations: $openclaw-ghsa-maintainer only with explicit security-workflow authorization.

Shared release boundaries

Every selected validation lane must succeed: Windows and macOS Node and other normal CI jobs, install smoke, survivor lanes, update-first-hop-compat*, pack/npm qualification, package integrity, and Linux/Windows/macOS Gateway checks, including Windows packaged install/upgrade checks in Release Checks. A cancelled run still blocks. Preserve first failures and classify each one as below before recovery. Stable publication requires stable/full evidence, soak, and blocking performance. Beta-profile evidence cannot authorize stable publication. No lane or soak waiver can bypass these requirements. All nine Gateway install/upgrade combinations across Linux, Windows, and macOS are required for all-group qualification. Preserve identity, provenance, complete evidence, and existing publication approvals.

Every failed test gets an explicit lead decision, real release blocker or flake, recorded in the handoff with its evidence: the same SHA passing elsewhere or on rerun, no relation to the release delta, a runner or infra signature, a history of the same case flaking, or a pre-existing product bug that is not a regression (for example the 2026.9.6 "Assign to…" bug). A real blocker is a regression in shipped bytes or behavior, or an update/install/ publish defect; fix it on the release branch. Rerun a flake on the same Release SHA with at most two recorded reruns by default, and file a fix-in-parallel issue or PR on main with the evidence. Never re-cut, change tooling, or start a new FRV for a flake. A flake that remains red blocks publication. Main-only failures and infrastructure failures (runner outages, GitHub ghost jobs, hosted-runner offload) count as flakes for the release.

Dependency advisories never delay a release. A newly published advisory is never a reason to re-cut, change tooling, or rerun validation. Record it in the release evidence and handoff, then file or queue the dependency bump on main as a normal follow-up after publication. Only a known-malware finding stops publication. Release dependency evidence and release-dispatched CI enforce this.

Main's CI health never gates a release. Validation and publication run from the release branch plus pinned tooling, so a red main is not a reason to wait, re-cut, or pause. When the release needs a release-tooling fix on main (tooling SHAs must be trusted main commits), main failures the fix does not cause must not hold that landing: prove on a clean main checkout that the failure already exists there, record it in the PR body, and merge. During an active release, an admin merge is allowed for a release-tooling PR in exactly that situation. Red main still gets fixed, in parallel by a separate lane, never on the release's critical path.

The operating objectives are approximately 20 minutes to seal validation and publication within an hour, not measured guarantees. Source-only children start alongside artifact producers; candidate consumers start as soon as the candidate is ready. Independently sealed green children can be reused for the same exact target and inputs even when their parent failed, was cancelled, or remains active; verify their original admitted qualification identity (or historical trusted-main workflow SHA) and current attempt. The sealed manifest supplies the SDK evidence digest and npm publication decisions; it never acknowledges SDK API changes, so supply plugin_sdk_api_acknowledgement whenever the SDK report contains changes. The publisher cannot accept waived validation evidence. Explicit publisher inputs select publication scope; the candidate helper still validates its explicit SDK acknowledgement when needed.

Explicit approval is required for version changes and irreversible publication. A request to cut, publish, or complete a named release carries through its validated publication and verification; do not ask again unless identity, channel, scope, or material risk changes. Ship authority for ordinary code is not release authority.

An operator's explicit approval to do whatever is needed to prepare a named release is standing authority for the necessary preparation decisions and repairs. Carry it through candidate and tooling fixes, upgrade/migration design, reviewed test or security-inventory alignments, isolated proof, commits, pushes, and validation recovery. Record the decision, its evidence, and the selected support contract; do not ask again merely because an already-approved class of work reaches an implementation or verification step. Continue independent work while resolving a blocker. This authority does not permit hiding defects, lowering a gate to manufacture success, destructive changes to operator state, unrelated work, or publication. A prepare-only request still requires a separate publication instruction before releasing artifacts or a bridge version.

Keep one compact state record using the handoff template: effective goal, version/tag/branch, cut/Code/Release SHAs, C/Q/P identities, active parent run and attempt, successful child artifacts, approved changes, phase and next action. Latest operator steering replaces superseded scope. Completed evidence stays complete until a named change invalidates it.

For regular releases, prepare complete notes before freezing Code SHA when possible. If those notes are final, Code SHA and Release SHA are the same commit: one successful fresh full qualification can supply both roles and their exact publication bytes. Do not create another commit or run solely to separate the labels. If notes change after qualification, a descendant whose complete delta includes CHANGELOG/<version>.md (exact beta version or stable base) and only that entry, its matching record, and root index may use split-changelog-release-v1 to reuse product proof while qualifying new publication bytes. Any other source delta, rename, or deletion returns to the Code SHA loop. Historical root-only receipts retain changelog-only-release-v1. New qualification freezes Q=C: the entire qualification workflow closure belongs to the candidate. Keep independently trusted P (admission, verifier, and publisher) separate. A Q harness repair requires a new C/Q and newly bound evidence; P-only or infrastructure repairs can preserve the candidate. Missing qualification contracts need a deliberate backport, never future-main fallback.

Once a candidate is cut, its base is the operator's decision. Never re-cut (re-base the candidate on newer main) unless Peter explicitly asks for it in that release. Without asking, cherry-pick already-merged main commits onto the release branch only to fix a confirmed release blocker: a required lane failing deterministically on the frozen candidate, or an update/install/ publish-bytes defect. Name each cherry-pick in the handoff record. Not allowed: opportunistic backports, feature reverts, or a new base taken to "pick up" a fix that cherry-picks cleanly enough with a small conflict resolution.

Release process improvements made during a release land on both branches. Workflow, release-script, release-test, RELEASING.md, and release-skill changes merge to main first, then get cherry-picked (-x) onto release/YYYY.M.PATCH for the next candidate or patch. A qualification repair needed for this release must land before freezing a new C/Q; never silently swap the harness for an already qualified candidate. Where main-only CI infrastructure is missing on the branch, keep the branch's expression form and port only the logic. Product code on the release branch stays blocker-only per the rule above.

A release is not done while anything opened for it is still open. Before the final report, list every PR created during the release (gh pr list --author @me --state open plus any PR bound to the session) and land or explicitly close each one with a reason; confirm its fix is on main and, when it is release tooling, on the release branch. Also remove the release's temporary worktrees, abandoned local cut branches, and stale scripts/pr worktrees.

Published versions and final tags are immutable. Reuse successful exact-source artifacts; do not rebuild or republish as an implicit retry. The active release is the work queue: no opportunistic moving-main fixes or backports. Classify failures, repair their owner, retry the affected surface, then reassess rather than repeating the full release.

Required publication proofs and enforced environment approvals remain required. A passing sibling cannot replace missing required evidence. npm + ClawHub is the priority path. macOS, Windows, Linux, and Android native publication runs in parallel and never gates npm/ClawHub, GitHub release finalization, or main closeout. Selected Windows Node, Linux/Windows/macOS Gateway, and native-app CI failures block release validation. Platform publishers retain their own artifact and updater contracts; report pending platforms and proof gaps accurately.

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.

Related Skills