リモート Mac の OpenClaw が TeamCity 外向き HTTP を受け、依存プリフライトと lockfile 漂移のあと REST で要約する最小手順です。Node 22+、openclaw onboard と daemon、127.0.0.1 ゲートウェイが前提です。排障・Jenkins 版・実戦ブログ一覧と併読ください。

運用で踏みがちな三つの壁

1. 共有エージェントでは並行ジョブで dry-run がブレる。2. 無認証やプロキシの JSON 整形で HMAC 不一致。3. TeamCity の HTTP タイムアウトが短く再送が増える、の三点です。

判断表:共有エージェントとリモート Mac 前置ノード

観点共有ビルドエージェントMacPull リモート Mac 前置
隔離再利用で混線buildId ごとに作業ディレクトリ固定
受信外向きのみでは不可127.0.0.1+トンネルで終端
検証Linux と役割分断Apple 近傍で前置しやすい
説明既存プールへ載せやすい本流失敗を事前削減と説明しやすい

手順チェックリスト(上から順に打刻)

七ステップ
  • Node 22+ をシェルと launchd で揃え openclaw doctor 緑
  • openclaw onboard と daemon/LaunchAgent 常駐
  • ゲートウェイは 127.0.0.1 のみ+外向き TLS
  • TeamCity PAT は参照と REST コメントに最小権限
  • JSON に buildId と rev、Bearer と任意 HMAC 検証
  • 隔離で npm ci --dry-run と lock の git diff を tee
  • REST は 502/429 のみ二・四・八秒バックオフ、401/403 は再試行しない

インストールとゲートウェイ:Node 22 以上・onboarding・daemon

Node 22+ と CLI 導入後 openclaw onboard、daemon または LaunchAgent で常駐します。plist に PATH、NODE_BINARY、NODE_EXTRA_CA_CERTS を明示し nvm 依存を避けます。Dashboard トークン・Webhook 秘密・TeamCity PAT は権限 600 で分離しゲートウェイは 127.0.0.1 のみです。

TeamCity 外向き Webhook と受信側の検証

Webhooks または HTTP ステップで buildId と rev を JSON に載せ、Bearer 必須+任意 HMAC を生ボディで検証します。タイムアウトは実測より長く、長処理は 202 で非同期化します。CircleCI 版と対照できます。

ハンドラ:隔離プリフライトと lockfile 漂移スキャン

mktemp -d で隔離し浅 clone のあと lock に git diff --exit-code。続けて npm ci --dry-run や composer install --dry-run を tee し末尾だけ要約へ載せます。

curl -sS -X POST "$TEAMCITY_URL/app/rest/builds/id:$BUILD_ID/comment" \ -u "$TC_USER:$TC_PASS" -H "Content-Type: text/plain" \ --data-binary "$SUMMARY_ONE_LINE"

要約の TeamCity 回帰:失敗リトライとログの残し方

PAT で curl(五秒/二十五秒目安)。502/429 のみ二・四・八秒で最大三回、401/403 は設定修正のみ。ログは buildId とマスクヘッダ、openclaw status --deep と突合します。

よくあるエラー FAQ とログの当たり所

Bearer/HMAC 不一致

パラメータと環境変数の改行、リバプロの JSON 整形を疑い、生ボディで検証します。

HTTP ステップだけタイムアウト

秒数を伸ばし二〇二で非同期化、再送が多ければ呼び出しを遅延します。

REST が四〇一/四〇三

ロールと PAT スコープ、REST プレフィックスを見直しグローバル管理者を外します。

launchd で npm 不在

plist に PATH と NODE_BINARY を絶対パスで列挙しサービスユーザーで which npm を確認します。

まとめ:127 拘束・Bearer/HMAC・隔離プリフライト・lock 差分・限定リトライが核です。MacPull のリモート Mac で常駐前置を安定化し、購入・ヘルプ・ホーム・ブログはログイン不要です。

CI 前置ノード向け

TeamCity 連携をリモート Mac で常駐ホストする

ヘルプ・購入・ホーム・料金・実戦ブログはログイン不要です。

複数リージョン
SSH
柔軟な契約
サポート