CC逆引きリファレンス

セルフホストランナーでセッション終了後にフックを実行したい

11. フック

コマンド / 機能

post-session

ワークスペース削除前に発火するフック

概要

post-session フックは、セルフホストランナー(CI/CD のセルフホストエージェント実行環境)でセッションが終了した後、かつワークスペースが削除される前に発火します。v2.1.169 で追加されました。成果物の収集やログのアップロードなど、ワークスペースが消える前に必ず行いたい後処理に使えます。

設定例

// .claude/settings.json
{
  "hooks": {
    "post-session": [
      {
        "type": "command",
        "command": ".claude/hooks/post-session.sh"
      }
    ]
  }
}

// post-session.sh の例:成果物をアップロードしてから削除される
#!/bin/bash
if [ -d "./dist" ]; then
  aws s3 cp ./dist "s3://build-artifacts/$(date +%s)/" --recursive
fi
echo "[post-session] workspace cleanup pending" >> /var/log/claude-runner.log
公式ドキュメントを見る

こんな時に使う

  • セルフホストランナーでセッション終了後に成果物を退避したい時
  • ワークスペースが削除される前にログや生成物をアップロードしたい時
  • CI/CD のセルフホストエージェント実行環境で後処理を確実に行いたい時

使い方

  1. 1hooks.post-session にフックを定義
  2. 2セルフホストランナー環境でセッションが終了すると発火
  3. 3ワークスペースが削除される直前に実行されることを利用して退避処理を書く

Tips

  • SessionEnd はローカルセッションの終了全般に発火するが、post-session はセルフホストランナー特有のワークスペース破棄タイミングに特化している
  • アーティファクトの永続化やクリーンアップログの記録に向いている
  • v2.1.169 で追加された比較的新しいフックイベント