Communityコーディング&開発github.com

OpenClaw Macリリース

OpenClawのmacOSリリースにおける署名、公証、アプリキャスト、アセットプロモーションの実行または復旧を行います。

OpenClaw Macリリース とは?

このスキルは、OpenClaw製品のmacOS向けリリース工程を自動化・管理するための専門スキルです。具体的には、Apple Store Connect APIキーを用いた署名、公証(notarization)、GitHubリリースへのアセットアップロード、そしてアプリキャスト(appcast)の更新・プロモーションを安全かつ確実に実行します。`$release-openclaw-maintainer`、`$release-openclaw-ci`、`$one-password`、`$release-private`などの関連スキルと連携し、1Passwordからの認証情報取得やGitHub Secretsの設定、`xcrun notarytool`による検証を行います。また、公開前の検証(preflight)、本番公開(publish)、障害からの復旧(resume)といった一連のワークフローをサポートし、必要に応じてチェックポイントを利用した再開機能も提供します。このスキルは安定版リリース専用であり、拡張安定版(extended-stable)には使用しません。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/clawdbot/clawdbot/tree/main/.agents/skills/release-openclaw-mac

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

OpenClaw Macリリース は何をしますか?

このスキルは、安定版macOSアセット、リリース-ops macプレフライト、公証、アプリキャストプロモーション、またはmacリリース復旧が関わる場合に、$release-openclaw-maintainer、$release-openclaw-ci、$one-password、および(存在する場合)$release-privateと共に使用します。

これは通常の安定版リリーススキルです。拡張安定版(extended-stable)では起動しないでください。 そのトラックのGitHubリリースは共有検証証拠を保持しますが、macOSアセットやアプリキャストプロモーションは継承しません。

リリース承認

明示的な安定版またはフルリリース要求には、オペレーターがその範囲を制限しない限り、macOS公開が含まれます。個別のmacOS同意を求めることなく、検証、署名、公証、プロモーション、確認を進めてください。正確なリリースIDとすべてのアーティファクトチェックを維持してください。macOS公開はnpmと並行して実行され、決してブロックしません。macOSの障害はnpm/ClawHubリリース、GitHubリリースファイナライズ、メインクローズアウトを停止しません。並行して修正してください。

現在のオーナー設定の環境ポリシーに従ってください。追加のレビューア要件を発明したり、廃止された要件を再作成したりしないでください。GitHubが依然として承認を強制する場合は、実際のルールを報告し、そのオーナーを通じて解決してください。ポリシー変更には、明示的な組織オーナーの指示と確認済みのアクティブな管理者メンバーシップが必要です。レビューアを偽装したり、承認を捏造したり、別の署名パスを使用して強制ルールを回避したりしないでください。

認証情報

  • Peter所有のASCアイテム参照、キーID、発行者ID、サービスートークンの出所は$release-privateから解決します。
  • フィールド: private_key_p8、key_id、issuer_id。
  • 期限切れ/失効キーの症状: xcrun notarytool submitがHTTP status code: 401. Unauthenticatedで失敗します。
  • GitHub Secretsを設定する前に、xcrun notarytool historyで候補のASC認証情報を検証します。

1Password

  • $one-passwordを使用します。すべてのop作業は1つの永続的なtmuxセッション内で行い、シークレットを出力しないでください。
  • $release-privateからのサービスートークンガイダンスが利用可能な場合はそれに従ってください。
  • サービスートークンが失敗した場合、ステータスのみのチェック(トークンの存在/長さとop whoami)を実行し、トークン値を絶対に印刷しないでください。
  • デスクトップアプリ認証が必要だがTouch IDが利用できない場合は、手動のop account add --signinパスのためにOP_BIOMETRIC_UNLOCK_ENABLED=falseを設定します。

GitHub Secrets

ターゲットリリース-opsリポジトリ環境: openclaw/releases、env mac-release。

ローカルの公証認証検証後にのみ設定:

  • APP_STORE_CONNECT_API_KEY_P8
  • APP_STORE_CONNECT_KEY_ID
  • APP_STORE_CONNECT_ISSUER_ID

混在したソースからこれらを更新しないでください。3つのASCフィールドはすべて同じ1Passwordアイテムから取得する必要があります。

ワークフロー形状

  • openclaw/openclawは公開製品リポジトリです。そのGitHubリリースページは、macOSアセットが最終的に添付される場所です。
  • openclaw/openclawのmacos-release.ymlは公開ハンドオフ検証のみです。preflight_onlyの値に関係なく、macOSアセットへの署名、公証、アップロードは決して行いません。
  • openclaw/releasesは制限付きリリース-opsリポジトリです。そのmacOSワークフローは、openclaw/openclawのGitHubリリースに対するアセットの署名、公証、検証、プロモーションを行います。
  • 公開リリースブランチは、安定版タグ/npmが既にライブになった後でも、mac専用のパッケージ修正を運ぶ場合があります。
  • そのブランチバリエーションをビルドする場合、リリース-ops macプレフライト/検証にはsource_ref=release/YYYY.M.PATCHを使用します。
  • tag=vYYYY.M.PATCHを元の安定版リリースコミットを指したままにします。
  • 実際のmac公開は以下を再利用する必要があります:
    • 同じタグ/ソースSHAに対する成功したリリース-ops macプレフライトランの実行
    • 同じタグ/ソースSHAに対する成功したリリース-ops mac検証ランの実行
  • リリース-opsプレフライトと実際の公開は、署名とプロモーションのシークレット、およびそのmainのみのデプロイポリシーにmac-release環境を使用します。承認されたリリースオペレーターは、その環境の現在のルールの下で継続します。
  • プレフライトのソースSHAがタグSHAと異なる場合、検証も同じsource_refを使用する必要があります。プロモーションは一致しない証明を拒否します。

公証

  • OpenClawはscripts/notarize-mac-artifact.shを使用します。
  • xcrun notarytool submitは--no-s3-accelerationを使用する必要があります。高速化アップロードは、notarytool historyが成功しても誤解を招く401を表面化させる可能性があります。
  • 署名は成功したが公証が直ちに401で失敗した場合、最初にASCキーの鮮度を確認します。
  • キーファイル書き込み後、公証が数分間進行中のままの場合、それは通常のApple待機時間です。盲目的に編集しないでください。

ディスパッチ

公開ハンドオフワークフローは、公開前にタグ、ソース、ビルド、パッケージメタデータを検証します。アセットをアップロードしないため、GitHubリリースページを必要としません。この検証を実際の公開ワークフローの前に維持します。コアパブリッシャーはGitHubリリースのファイナライズを所有します。macOSプロモーションは、その検証済みアセットを、それがまだドラフトであろうと既に公開済みであろうと、そのリリースに添付するため、npmフリップを待つことはありません。

公開ハンドオフ検証:

gh workflow run macos-release.yml --repo openclaw/openclaw \
  --ref release/YYYY.M.PATCH \
  -f tag=vYYYY.M.PATCH \
  -f preflight_only=true \
  -f public_release_branch=release/YYYY.M.PATCH
  • ワークフローrefとして公開リリースブランチを使用して、Actionsリストがrelease/YYYY.M.PATCHを表示し、以前の安定版macOSハンドオフランと一致するようにします。
  • この公開ハンドオフ検証には--ref mainまたは--ref vYYYY.M.PATCHを使用しないでください。ワークフローは内部的にtag入力からタグをチェックアウトします。

リリース-opsプレフライト:

gh workflow run openclaw-macos-publish.yml --repo openclaw/releases --ref main \
  -f tag=vYYYY.M.PATCH \
  -f source_ref=release/YYYY.M.PATCH \
  -f preflight_only=true \
  -f smoke_test_only=false \
  -f allow_late_calver_recovery=false \
  -f public_release_branch=release/YYYY.M.PATCH

設定された環境ポリシーの下で、署名と公証を通じて実行を追跡します。成功したプレフライトランのIDを記録します。承認一時停止は成功したプレフライトではありません。

再開がデフォルトです。障害(公証停止、DMGパッケージング、コレクター)の後に同じプレフライトコマンドを再ディスパッチすると、同じタグとソースSHAに対する失敗またはキャンセルされたmainディスパッチによって残された最新のチェックポイントからすべてのバリアントを再開します。チェックポイントのないバリアントのみが再ビルドされます。実行ログには、Resuming <variant> from run <id> attempt <n>またはBuilding <variant>と表示されます。ignore_checkpoints=trueは新鮮なビルドを強制します。resume_notarization_run_id、resume_notarization_run_attempt、resume_notarization_variantは、1つの特定のランをピン留めする場合、または再開インデックスが存在する前のチェックポイント(macos-resume-<tag>-<variant>-<sha>アーティファクト)の場合にのみ渡します。現在のラン内に失敗したジョブがまだある場合は、gh run rerun <run-id> --failed --repo openclaw/releasesを優先します。

ブランチバリエーションプレフライトのリリース-ops検証:

gh workflow run openclaw-macos-validate.yml --repo openclaw/releases --ref main \
  -f tag=vYYYY.M.PATCH \
  -f source_ref=release/YYYY.M.PATCH

成功した検証ランIDを記録します。

実際の公開:

gh workflow run openclaw-macos-publish.yml --repo openclaw/releases --ref main \
  -f tag=vYYYY.M.PATCH \
  -f preflight_only=false \
  -f smoke_test_only=false \
  -f preflight_run_id=<successful-preflight-run> \
  -f validate_run_id=<successful-validation-run> \
  -f allow_late_calver_recovery=false \
  -f public_release_branch=release/YYYY.M.PATCH

同じリリース承認と現在の環境ポリシーの下で、アセットアップロードとアプリキャスト公開を通じてプロモーションを追跡します。

  • リリース-ops openclaw/releasesの公開/検証ワークフローは、自身の信頼されたmainワークフローrefから実行されます。実際の公開には、他のワークフローrefを拒否するガードがあります。表示されるmain refは期待通りです。公開されたOpenClawソースはtagとオプションのsource_refによって選択されます。

確認

  • gh release view vYYYY.M.PATCH --repo openclaw/openclawはzip、dmg、dSYM zipを表示します。npmパブリッシャーがそれをフリップした後: ドラフトではなく、プレリリースでもありません。
  • 公開mainのappcast.xmlがOpenClaw-YYYY.M.PATCH.zipを指しています。
  • アプリキャストエントリにはsparkle:version、sparkle:shortVersionString、長さ、sparkle:edSignatureがあります。

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, Grok Build, 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.

関連スキル