環境変数

CLAUDE_CODE_MESSAGING_TOKEN

この環境変数はユーザーではなくClaude Code自身によって設定され、インボックスソケットをバインドするセッションにおいて、フックやBashコマンドに対してCLAUDE_CODE_MESSAGING_SOCKETとともにセッション固有のトークンとしてエクスポートされます。

使い方・用途

  • ソケットに投稿するスクリプトが、接続の最初の行で {"type":"auth","token":"<トークン>"} を送信することで、該当セッションに属していることを証明するために使用されます。
  • macOS(プロセス終了後)やコンテナ環境(プロセスID 1として動作しプロセスのエビデンスが取得できない場合)において、子プロセスからのメッセージを安全に検証するために活用されます。
  • 各セッションは自身のトークンをエクスポートし、親セッションから継承されることはありません。また、設定ファイル内の env ブロックで手動設定することはできず無視されます(v2.1.228以降)。
英語原文(公式ドキュメントより)

Set by Claude Code, not by you: in sessions that bind an inbox socket, Claude Code exports this per-session token to hooks and Bash commands alongside CLAUDE_CODE_MESSAGING_SOCKET. A script posting to the socket can send {"type":"auth","token":"<token>"} as its first line to prove it belongs to the session. The own-child rules say when Claude Code consults it. Each session exports its own token, never one inherited from a parent session. Settings env blocks can't set it. Requires Claude Code v2.1.228 or later