CLAUDE LABEN
DESIGN — Claude Designが大型更新。デザインシステムの取り込み、キャンバスの直接編集、エクスポート形式の追加が入りましたCODE — Claude Designがローカルのコードベースを起点に動作し、生成した画面をClaude Codeへ受け渡して実装まで繋げられますFABLE — Mythosクラスの最新モデルFable 5が一般利用向けに調整され、Claude Code v2.1.170から使えるようになりましたFIX — ストリーム途中で接続が切れても部分応答を保持する改善が入り、長時間の自動処理でも応答が残りますSCROLL — フルスクリーン時のマウスホイール加速を無効化するwheelScrollAccelerationEnabled設定が追加されましたTIER — Claude DesignベータはPro・Max・Team・Enterpriseで利用できますDESIGN — Claude Designが大型更新。デザインシステムの取り込み、キャンバスの直接編集、エクスポート形式の追加が入りましたCODE — Claude Designがローカルのコードベースを起点に動作し、生成した画面をClaude Codeへ受け渡して実装まで繋げられますFABLE — Mythosクラスの最新モデルFable 5が一般利用向けに調整され、Claude Code v2.1.170から使えるようになりましたFIX — ストリーム途中で接続が切れても部分応答を保持する改善が入り、長時間の自動処理でも応答が残りますSCROLL — フルスクリーン時のマウスホイール加速を無効化するwheelScrollAccelerationEnabled設定が追加されましたTIER — Claude DesignベータはPro・Max・Team・Enterpriseで利用できます
記事一覧/Claude Code
Claude Code/2026-06-18上級

SessionEnd フックに後片付けとログ記録を寄せる

Claude Code に追加されたポストセッションフックを使い、セッション終了後の一時ファイル削除とログ記録を自動化する方法を、複数リポジトリを順に処理する運用の実例とともにまとめました。

Claude Code158hooks12SessionEndautomation39CI/CD16

プレミアム記事

毎晩動かしている自動投稿の処理が、記事を push したあとに .next の削除とログの追記をやり残したまま終わることが、月に数回ありました。生成と push までは確実に走るのに、最後の後片付けだけが抜け落ちる。原因はいつも同じで、後片付けを「本文の処理の続き」として書いていたために、途中で別の分岐に入ると最後まで到達しないことがあったのです。

2026年6月18日の更新で Claude Code にポストセッションフック(SessionEnd)が加わりました。セッションが終わったあとに必ず走るフックです。これは、まさに私が「本文の最後に置いていたから取りこぼしていた処理」を、構造として終了時に保証してくれる仕組みでした。個人開発で複数のサイトを順番に処理している立場から、実際に何を移し、どこでつまずいたかを書いておきます。

後片付けを「処理の続き」に書くと、なぜ取りこぼすのか

セッション本体の処理は、エラーや早期 return、条件分岐で経路が枝分かれします。後片付けをその末尾に置くと、本流を通ったときしか実行されません。シェルスクリプトの trap や、プログラミング言語の finally で守る発想と同じことを、Claude Code のセッションに対してやりたい——それが SessionEnd フックの位置づけです。

私の場合、取りこぼしていたのは次の3つでした。一時ビルド成果物(.next)の削除、その日の更新ログの追記、そして次回のためのディスク空き容量の確認です。どれも記事の品質には関係しませんが、放っておくとディスクが詰まり、翌日のセッションが起動すらしなくなります。

SessionEnd フックの基本形

フックは settings.jsonhooks に、イベント名をキーとして登録します。SessionEnd はセッションが閉じる直前に発火します。

{
  "hooks": {
    "SessionEnd": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/on-session-end.sh"
          }
        ]
      }
    ]
  }
}

ここで一つ覚えておきたいのは、SessionEnd フックの終了コードや標準出力は、すでに終わろうとしているセッションの結論を変えないという点です。Stop フックのように処理をブロックして続行させる用途ではなく、あくまで「終わったあとの確実な一仕事」に向いています。私は最初これを Stop フックと混同して、後片付けスクリプトの中で次の処理を呼び戻そうとして失敗しました。SessionEnd は引き返せない場所だと割り切るのが正解です。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
settings.json への SessionEnd フック登録例と、終了コードが後続処理を変えない理由
.next 削除・ログ追記・空き容量チェックをフックへ移す bash の具体例
set -e で後片付けが途中終了した実例と、set -uo pipefail での回避策
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

Claude Code2026-06-19
スケジュール生成が無音で不発に終わったことを、外側から気づく仕組み
exit 0 で終わったのに成果物がゼロだった——そんな無音の不発を、ジョブ自身のログではなく外部のハートビート台帳と地の事実から検知する設計を、個人開発で複数サイトを自動運用している立場からまとめました。
Claude Code2026-06-14
PR ごとに走る CI が月次クレジットを溶かす前に — Claude Code GitHub Actions の消費を抑える3層ガード
6/15 から Claude Code GitHub Actions は繰越なしの月次クレジットで課金されます。全PRでレビューを走らせると月初に枯れます。実行条件・1回の上限・消費の可視化という3層で、CIを止めずに消費を抑えた設計と動くワークフローをまとめました。
Claude Code2026-06-14
Claude Code の Hooks で品質ゲートを壊さず回す — exit code の意味・ブロック挙動・観測設計の実装メモ
Claude Code Hooks を自動化の安全弁として運用するための実装メモ。exit code 0/2/その他の使い分け、JSON 出力による決定制御、ブロックが暴発したときの切り分け、観測ログの設計までを実例で整理します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →