セルフホストランナーでセッション終了後にフックを実行したい
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 のセルフホストエージェント実行環境で後処理を確実に行いたい時
使い方
- 1hooks.post-session にフックを定義
- 2セルフホストランナー環境でセッションが終了すると発火
- 3ワークスペースが削除される直前に実行されることを利用して退避処理を書く
Tips
- SessionEnd はローカルセッションの終了全般に発火するが、post-session はセルフホストランナー特有のワークスペース破棄タイミングに特化している
- アーティファクトの永続化やクリーンアップログの記録に向いている
- v2.1.169 で追加された比較的新しいフックイベント