CC逆引きリファレンス

メンテナンスフックだけ実行して終了したい

12. CI/CD・自動化

コマンド / 機能

--maintenance

メンテナンスフックを実行して即終了

概要

--maintenance フラグはメンテナンスフックを実行してすぐに終了するモードです。定期的なクリーンアップや環境整備を Claude Code のフックシステムを使って実行する際に便利です。

設定例

# メンテナンスフックを実行して終了
claude --maintenance

# cron で定期実行する例
# crontab -e
0 2 * * * /usr/local/bin/claude --maintenance >> /var/log/claude-maintenance.log 2>&1

# .claude/settings.json でメンテナンスフックを定義
{
  "hooks": {
    "Maintenance": [
      {
        "type": "command",
        "command": ".claude/hooks/daily-cleanup.sh"
      }
    ]
  }
}
公式ドキュメントを見る

こんな時に使う

  • 定期的なクリーンアップ処理を自動化したい時
  • メンテナンス専用の処理を分離したい時
  • cron などで定期的にメンテナンスを実行したい時

使い方

  1. 1--maintenance フラグで起動
  2. 2settings.json の hooks.Maintenance にフックを定義
  3. 3フック実行後すぐにプロセスが終了する

Tips

  • --init-only(初期化フックのみ)と使い分ける
  • 対話なしで実行されるため完全に自動化可能
  • CI/CD やスケジューラーとの連携に最適