AI / 自動化 2026年4月11日

OpenClaw のスケジュールジョブと無人実行:クラウド Mac mini での LaunchAgent プレイブック(2026)

ProxyMac エンジニアリングチーム 2026年4月11日 約11分

インタラクティブなデモは簡単ですが、本番の自動化では火曜 03:15 に OpenClaw が起きる一方でノートは閉じています。借りた Mac mini ではその役割は launchd、通常は OpenClaw 状態と同じ macOS ユーザーで動く LaunchAgent plist にあります。この2026年版は cron と LaunchAgent を比較し、HTTPS プロキシを壊す環境パリティの落とし穴を示し、インストールとデプロイ本番ワークフロートラブルシュートと復旧 に沿ったログと復旧手順をまとめます。セキュリティの基準は OpenClaw のセキュリティとシークレット にあります。

TL;DR

  • ユーザー単位の OpenClaw ジョブには ~/Library/LaunchAgentsLaunchAgent を使い、権限マッピングを完全に理解しない限り root cron は避ける。
  • HTTPS_PROXYNO_PROXY、API 関連の環境変数を plist の EnvironmentVariables にも入れる——~/.zshrc のみに置かない
  • stdout/stderr はローテーション付きファイルへ。非ゼロ終了コードはアラート。
  • plist 編集後は launchctl bootout gui/$(id -u) から bootstrap で重複デーモンを防ぐ。

LaunchAgent と cron(意思決定表)

選択肢最適な場合リスク
LaunchAgentキーチェーン秘密を伴うユーザー単位の OpenClaw CLIplist キーの typo は静かに失敗
LaunchDaemon複数ユーザーで共有するシステムツールTCC が難しい。不要なら避ける
cron正しいユーザーで exec するラッパーを呼ぶGUI セッションなし——キーチェーンが止まることがある

推奨 Plist パターン

引数は最小限:ProgramArguments を OpenClaw バイナリまたはシェルラッパーに向け、設定パスを明示。時刻は StartCalendarInterval、定期は StartInterval。ベンダー API のバースト制限には ThrottleInterval を併用。

ヒント: plist(秘密除く)をバージョン管理し、環境の後戻りを diff で見える化する。

環境一致チェックリスト

  1. 対話シェルの printenv をスクラッチファイルへ。
  2. 一時ジョブで env > /tmp/openclaw-agent.env を実行し、LaunchAgent の実環境と diff。
  3. /opt/homebrew/bin に依存するなら PATH を合わせる。
  4. OPENCLAW_STATE_DIR がローカル SSD を指すことを確認——クラウド同期デスクトップは避ける。

ログとローテーション

StandardOutPathStandardErrorPath をユーザー所有ディレクトリへ、例 ~/Library/Logs/OpenClaw/。週次または約100MB超でローテーション。規制チームは ERROR を SIEM へ、ただしモデルプロンプトは除去。ベンダー票を切る前に デプロイ復旧 と突き合わせる。

障害マトリクス

症状有力原因対処
ジョブが始まらないplist XML 不正または label 誤りplutil -lint + launchctl print gui/$(id -u)
LLM API 401ヘッドレスでキーチェーン未解除VNC ガイド に従い一度 VNC で事前承認
二重実行label が重複する plist が二つ古い plist を削除し bootout 後に一度だけ bootstrap

5 ステップ復旧ランブック

  1. stdout/stderr の末尾 200 行を取得。
  2. プロキシ / WireGuard の記事に沿って出口を確認。
  3. 対話シェルと plist の環境差分を比較。
  4. launchctl kickstart -k gui/$(id -u)/label.here で再起動。
  5. 根因をタイムスタンプ付きで ヘルプ チケットに記録。

よくある質問

cron はまだ使う?

最小ラッパーが正しいユーザー文脈へ昇格できる場合のみ。GUI 近傍の権限では LaunchAgent が macOS ネイティブの既定。

HTTPS_PROXY が消えたのはなぜ?

LaunchAgent はシェルプロファイルを読まない——plist か共有設定ファイルに複製する。

ログはどこに?

plist の stdout/stderr をホーム配下に置き、積極的にローテーション。秘密はログに書かない。

常時稼働 OpenClaw に ProxyMac Mac mini を使う理由

ノートは眠るがデータセンターは眠らない。専用 HK/JP/KR/SG/US mini は安定電源と冷却で LaunchAgent を維持し、人間は SSH と VNC で入る。バッチ窓が重なるなら 料金ページ から拡張。

常時稼働 Mac mini で OpenClaw

LaunchAgent、ログ、ログアウト後も残る API キー