環境変数

CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY

1 を設定すると、ツール呼び出し・フック・ステータスラインコマンド用に PowerShell を起動する際に -ExecutionPolicy Bypass を渡すのをやめ、マシンの実効的な実行ポリシーを尊重するようになる。デフォルトでは、Claude Code はプロセススコープで実行ポリシーをバイパスすることで、デフォルトが Restricted の Windows 環境でも .ps1 スクリプトやモジュールのインポートが動作するようにしている。プロセススコープのバイパスは、この設定にかかわらずグループポリシーの MachinePolicy や UserPolicy を決して上書きしない

使い方・用途

  • 企業のポリシーで PowerShell の実行ポリシーが Group Policy によって管理されており、Claude Code にマシンの有効な実行ポリシーを尊重させたい場合に設定する。
  • デフォルトの -ExecutionPolicy Bypass の付与をやめ、セキュリティ基準に沿って Claude Code が PowerShell を起動する挙動を制御したい場合に設定する。
英語原文(公式ドキュメントより)

Set to 1 to stop Claude Code from passing -ExecutionPolicy Bypass when spawning PowerShell for tool calls, hooks, and status line commands, and respect the machine's effective execution policy instead. By default Claude Code bypasses execution policy at process scope so .ps1 scripts and module imports work on default-Restricted Windows installs. Process-scope bypass never overrides Group Policy MachinePolicy or UserPolicy regardless of this setting

関連する変更履歴

v2.1.143(1件)

Changed
PowerShellツールの実行ポリシーに -ExecutionPolicy Bypass をデフォルトで適用するように変更しました
英語原文を表示
PowerShell tool now passes -ExecutionPolicy Bypass. Opt out with CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1

変更後

Windows上でのスクリプト実行がよりスムーズになり、権限エラーによる作業の中断が減少します。

関連ドキュメント