settings.json

SessionStart

新しいセッションが開始された際に実行されるフック。

使い方・用途

  • セッション開始時に Python の仮想環境を自動で有効化したり、プロジェクト固有の環境変数を一括でロードしたりして、即座に開発可能な状態を整えます。
英語原文(公式ドキュメントより)

Hooks that run when a new session starts

関連する変更履歴

v2.1.152(2件)

Added
SessionStart フックが reloadSkills: true を返せるようになり、フックによってインストールされたスキルを同じセッションですぐに利用可能になりました。
英語原文を表示
SessionStart hooks can now return reloadSkills: true to re-scan skill directories, making skills installed by the hook available in the same session

変更前

セッション開始時のフックで新しいスキルをセットアップしても、モデルがそれらを認識するのは次のセッションからになるというタイムラグがありました。

変更後

フックの実行完了と同時にスキルの再読み込みが行われるため、動的に追加されたコマンドも初回から即座に使用可能になります。

ユーザーへの恩恵

環境構築スクリプトなどをフックに組み込んだ際、自動セットアップされたツールをすぐに Claude に使わせることができます。

関連ドキュメント

Added
SessionStart フックが hookSpecificOutput.sessionTitle を通じて、起動時やレジューム時のセッションタイトルを設定できるようになりました。
英語原文を表示
SessionStart hooks can now set the session title via hookSpecificOutput.sessionTitle on startup and resume

変更前

セッションのタイトルは自動生成されるか手動で変更する必要があり、フックの処理結果に基づいた動的な命名はできませんでした。

変更後

フックが特定のブランチ名やタスク内容に基づいてセッションタイトルを決定し、/resume 一覧やターミナルのタイトルに反映させることができます。

ユーザーへの恩恵

多数のバックグラウンドセッションを並行して実行している場合でも、各セッションの目的を識別しやすくなります。

関連ドキュメント

v2.1.142(1件)

Improved
特定のフックイベントで不適切なフックタイプを設定した場合のエラーメッセージを改善
英語原文を表示
Improved hook configuration error: configuring a prompt- or agent-type hook for SessionStart/Setup/SubagentStart now shows a clear "use a command-type hook instead" error

変更前

SessionStart などのイベントにプロンプト型やエージェント型のフックを誤って設定した際、原因の分かりにくいエラーが発生していました。

変更後

「代わりにコマンド型(command-type)フックを使用してください」という明確な解決策を提示するメッセージが表示されるようになりました。

ユーザーへの恩恵

フック機能の高度なカスタマイズを行う際に、設定ミスを迅速に自己解決できるようになります。

関連ドキュメント

v2.1.136(1件)

Fixed
CLAUDE_ENV_FILE を利用した SessionStart フックによる環境変数が、セッション再開やクリア後に無効になる問題を修正しました。
英語原文を表示
Fixed env vars from CLAUDE_ENV_FILE SessionStart hooks going stale after /resume or /clear

変更前

セッションを跨いで環境変数を維持するための仕組みが、リセットや再開コマンドによって上書き・消失してしまい、都度手動での再設定が必要でした。

変更後

環境変数の永続化管理が修正され、セッションの再開やリセットを行ってもフックで設定した環境が正しく維持されるようになりました。

ユーザーへの恩恵

ツール実行に必要な環境変数を一度設定すれば、セッションの状態が変わっても一貫して使い続けることができます。

関連ドキュメント

v2.1.111(1件)

Changed
Windowsにおいて CLAUDE_ENV_FILE および SessionStart フックで生成された環境変数が正しく適用されるようになりました。
英語原文を表示
Windows: CLAUDE_ENV_FILE and SessionStart hook environment files now apply (previously a no-op)

変更前

Windows環境ではこれらが機能しておらず、仮想環境の自動有効化やカスタム環境変数の永続化が動作していませんでした。

変更後

Linux/macOSと同様の動作がサポートされ、フックを利用した高度なワークフロー構築が可能になりました。

ユーザーへの恩恵

Windows開発者も、プロジェクト開始時にPythonの仮想環境を自動でアクティベートするといった効率化の恩恵を受けられます。

関連ドキュメント

v2.1.73(1件)

Fixed
セッションを再開した際に、SessionStart フックが2回重複して実行される問題を修正
英語原文を表示
Fixed SessionStart hooks firing twice when resuming a session via --resume or --continue

変更前

--resume--continue を使用すると、初期化スクリプトが必要以上に実行され、セットアップ時間が無駄にかかっていました。

変更後

再開時のライフサイクルイベントが適切に整理され、フックは期待通り1回のみ実行されるようになりました。

ユーザーへの恩恵

セッション開始時の待ち時間が短縮され、プロジェクト固有の環境構築がより正確に行われます。

関連ドキュメント

v2.1.47(1件)

Improved
SessionStartフックの実行を遅延させることで、起動パフォーマンスを改善し、インタラクティブになるまでの時間を約500ミリ秒短縮しました。
英語原文を表示
Improved startup performance by deferring SessionStart hook execution, reducing time-to-interactive by ~500ms.

変更前

Claude Codeの起動時、SessionStartフックが即座に実行されるため、初期化に時間がかかり、ユーザーが操作可能になるまでの時間が長くなっていました。

変更後

Claude Codeの起動パフォーマンスが改善されました。SessionStartフックの実行が遅延されるようになり、ユーザーが操作可能になるまでの時間が約500ミリ秒短縮されました。

ユーザーへの恩恵

Claude Codeの起動が速くなり、開発者はすぐに作業を開始できるようになりました。これにより、開発サイクルの初期段階での待ち時間が減り、生産性が向上します。

v2.1.2(1件)

Added
SessionStart フックの入力に agent_type を追加し、--agent 指定時にその値を格納するように変更
英語原文を表示
Added agent_type to SessionStart hook input, populated if --agent is specified

変更前

フックの実行時にどのエージェントが使用されているかの情報が不足しており、特定のカスタムエージェントが起動した際に連動した処理を行うことが困難でした。

変更後

SessionStart イベントの JSON コンテキストに agent_type フィールドが含まれるようになり、--agent フラグで指定されたエージェント名をフック内で識別できるようになります。

ユーザーへの恩恵

カスタムエージェントの種類に応じた初期化処理や環境設定をフックで自動化できるようになり、ワークフローの柔軟性が向上します。

関連ドキュメント

v1.0.62(1件)

Changed
Hooks: Added SessionStart hook for new session initialization