OpenClaw 実践 · monorepo · Slack · 多ノード

2026 OpenClaw MeshMac 実践:monorepo の変更パスで増分ビルドを走らせ、Slack に通知要約を届ける最小再現手順

2026年4月9日 Meshmac 読了目安 約7分

MeshMac 多ノードで monorepo を回すチーム向けに、パスフィルタキュー/ロックOpenClaw 要約Slack Webhook 最小権限バックオフの順で再現手順を示します。表とチェックリストで俯瞰できます。型は マルチノードデプロイガイド に合わせてください。

よくあるつまずき

  1. 無関係パッケージまで毎回ビルドしディスクと CI 分を浪費する。
  2. 増分でも署名・キャッシュ共有で同時ジョブが壊れる。
  3. 生ログ直投稿と Runner 分散の Webhook で秘密と観測が破綻する。

最小手順チェックリスト

  1. base SHA 等から差分を取り、YAML でルート写像→単一のビルド計画 JSON を出す。
  2. キュー同期flock で Xcode レーンを直列化。
  3. ゲートウェイの OpenClaw に終了コード・パッケージ・mesh_node_id・URL を渡し要約化。
  4. hooks.slack.com はゲートウェイのみ POST、秘密は 最小権限 で一ファイル。
  5. 429/一時 5xx のみ指数バックオフ(再試行手順 と分離)。

① 変更検知(パスフィルタ)

マージベースや前回成功 SHA から差分パスを列挙しグロブでパッケージ根へ畳みます。affected 利用時も下流は正規化 JSON のみ読む契約にします。.github/**ci/** 変更時は main で一度広げるガードを。Package.resolved 競合は worktree・ロックファイル と併記します。

② キュー/ロック

署名や DerivedData が重なるレーンは consumer 1 または共有ボリュームの flock で入場制御し、失効と Runbook を固定。ゲートウェイ並行上限 と整合させます。

③ OpenClaw で要約

ログ全文ではなく構造化入力から短い Markdown を組み立て、成功はテンプレ置換に寄せて遅延を一定化。キー設計は 共有通知 Webhook と揃えると他チャネルへ展開しやすいです。

④ Slack Incoming Webhook(最小権限)

URL は bearer 扱いで Git 禁止。例 /etc/openclaw/secrets.d/slack/build-summary.url をゲートウェイのみが読む。出站は hooks.slack.com のみ。

export SLACK_URL="$(sudo cat /etc/openclaw/secrets.d/slack/build-summary.url)"
curl -sS -X POST -H 'Content-Type: application/json' \
  -d '{"text":"probe OK"}' "$SLACK_URL"

漏えい時は再発行(IM ローテ と同型)。

⑤ 失敗退避と冪等

429・一時 5xx のみ指数バックオフ+ジッター、Retry-After 優先。400 台・404 は修正まで再試行しない。provider_run_id+結論で重複抑止。

ゲートウェイとトークンローテ(簡表)

表面ローテ対象ヒント
ゲートウェイ TLS証明書/ACMELB ドレインと同期。Nginx/Caddy
Slack WebhookURL 再発行二 URL 並走後に旧を失効
CI→GW HMAC署名秘密版を段階更新、未署名は拒否
Git 読取PAT/Appmonorepo contents:read のみ

LB・フェイルオーバー で配送半端を減らす。

まとめ・購入導線(ログイン不要)

パスフィルタ→ロック→OpenClaw 要約→ゲートウェイ単独 Slack→バックオフが最小ループです。OpenClaw 特集ブログ一覧 もどうぞ。プラン閲覧はログイン不要です。

Mesh · monorepo · 閲覧はログイン不要

ビルダーを足すほど「通知の単一路」と「秘密の一か所」が効きます

運用が固まったら容量へ。ホームログインなしにプラン確認、ヘルプ で SSH/VNC を確認のうえ購入へ。

購入へ(ログイン不要)