Claude Code v2.1.143 — プラグインの依存関係チェックと、バックグラウンドセッションの設定保持
Claude Code v2.1.143は、プラグインの依存関係を壊さずに有効化・無効化できるようになり、バックグラウンドセッションがアイドル復帰やデタッチを跨いで設定を保持し続けるようになった版です。
このリリースで何ができるようになるか
Claude Code v2.1.143は、プラグインの依存関係を壊さない形で有効化・無効化できるようになり、バックグラウンドセッションがアイドル復帰やデタッチを跨いで設定を保持し続けるようになった版です。直前のv2.1.142が claude agents のディスパッチ時設定をフラグで指定できるようにした版だったのに対し、本版はその設定が「セッションを離れても消えない」ことを担保する方向に振れています。
読者の体験を直接変える主な変更は次の3つです。
- プラグインの依存関係チェックが入ります:
claude plugin disableは、対象のプラグインに依存している別の有効なプラグインがあると無効化を拒否し、コピー&ペーストできる無効化チェーンのヒントを表示します。claude plugin enableは、対象が依存している他のプラグインを推移的にまとめて有効化します - バックグラウンドセッションが設定を保持し続けます:アイドル状態から復帰したあともモデルと推論努力レベルが維持され、
/bgや←でのデタッチが--mcp-config/--settings/--add-dir/--plugin-dir/--fallback-modelなどのフラグを引き継ぐようになります - worktreeが使いにくいリポジトリ向けの新設定が追加されます:
worktree.bgIsolation: "none"を設定すると、バックグラウンドセッションがEnterWorktreeを介さずワーキングコピーを直接編集できるようになります
加えて、ブロックを繰り返すStopフックが無限ループする問題に上限が設けられ、git worktree remove が失敗したときにworktreeのクリーンアップが rm -rf へフォールバックしてファイルを失う挙動が止まるなど、バックグラウンド運用とフック運用の安全性まわりの修正が多数含まれます。
あなたの開発フローはどう変わるか
複数のプラグインを依存関係込みで管理している場合
プラグインは、スキル・コマンド・フック・MCPサーバなどをまとめて配布する仕組みで、規模が大きくなるとプラグイン同士が依存し合う構成になります。本版以前は、依存される側のプラグインを claude plugin disable で無効化しても、それに依存する側はそのまま有効として残り、参照先が消えた状態で動こうとして壊れることがありました。
本版で claude plugin disable に依存関係チェックが入ります。対象のプラグインに依存している別の有効なプラグインがある場合、無効化はそのまま拒否され、「どのプラグインを先に無効化すればよいか」を示す無効化チェーンのヒントが、コピー&ペーストできる形で表示されます。逆に claude plugin enable では、対象が依存している他のプラグインが推移的にまとめて有効化されるため、依存先を一つずつ手で有効化する必要がなくなります。
あわせて、/plugin マーケットプレースの閲覧ペインに、各プラグインのコンテキストコスト見込み(1ターンあたり・1呼び出しあたりのトークン推定値)が表示されるようになります。インストール前に「このプラグインを入れるとコンテキストをどれくらい使うか」を見積もれるため、コンテキスト圧迫を避けたい運用でプラグインを選ぶ判断材料になります。
バックグラウンドセッションを離れても設定を維持したい場合
v2.1.142で claude agents のディスパッチ時にモデル・権限モード・MCP設定をフラグで指定できるようになりましたが、本版以前はそれらの設定が「セッションを一度離れると失われる」ケースがありました。本版でこの保持性がまとめて強化されます。
- アイドル復帰後にモデルと推論努力レベルが維持されます:バックグラウンドセッションがアイドル状態から復帰したあとも、設定したモデルと推論努力レベルがそのまま残ります
/bgがMCP・設定系フラグを引き継ぎます:/bgでバックグラウンド化したセッションが--mcp-config/--settings/--add-dir/--plugin-dir/--strict-mcp-configを保持するため、再起動を跨いでもMCPサーバと設定が維持されます/bgと←デタッチが--fallback-modelを引き継ぎます:バックグラウンドのワーカーが過負荷時にハードフェイルせず、フォールバックモデルへ降格する挙動を保てます/bgと←デタッチが--allow-dangerously-skip-permissionsを引き継ぎます:フォークされたワーカーのShift+Tabサイクルに、権限プロンプトを省略するモードが残りますclaude --bg --dangerously-skip-permissionsがretire→wakeを跨いで保持されます
これらは「claude agents で目的別のエージェントを並走させ、メインのセッションを離れて別作業をする」運用で効きます。v2.1.142でセッションごとの役割を設定できるようになったのに対し、本版でその設定が離席しても消えないことが担保される、という関係です。
worktreeが実用的でないリポジトリでバックグラウンド実行したい場合
Claude Codeのバックグラウンドセッションは、メインの作業内容と衝突しないよう、既定でgit worktreeに分離して動く設計になっています。ただし、巨大なモノレポやビルド成果物が多いリポジトリでは、worktreeの作成・破棄そのものが重く、worktree分離が実用的でないケースがあります。
本版で worktree.bgIsolation: "none" という設定が追加されます。この値を指定すると、バックグラウンドセッションが EnterWorktree を経由せず、ワーキングコピーを直接編集できるようになります。worktreeのコストを払えないリポジトリで、バックグラウンドセッションを使う選択肢が増える形です。
あわせて、worktreeのクリーンアップの安全性も上がります。本版以前は git worktree remove が失敗したとき、クリーンアップが rm -rf へフォールバックしており、gitの管理外ファイル(gitignore対象)や作業途中のファイルを巻き込んで消してしまうことがありました。本版ではこのフォールバックがなくなり、git worktree remove が失敗してもファイルが失われないようになります。worktreeまわりの既定挙動についてはv2.1.133の worktree.baseRef 追加時にも整理が入っており、本版はその延長で安全側に倒した変更と読めます。
Stopフックでブロックを使ったループ制御をしている場合
Stopフックは、Claudeがターンを終えようとしたときに割り込み、条件を満たすまで作業を続けさせる用途で使われます。block を返すことで「まだ終わらせない」と指示できますが、本版以前はフックが無条件にブロックし続けると、ターンが永久に終わらず無限ループに陥ることがありました。
本版で、Stopフックが8回連続でブロックすると、警告を出してターンを終了する上限が設けられます。この上限は環境変数 CLAUDE_CODE_STOP_HOOK_BLOCK_CAP で変更できます。完了条件をフックで制御する運用では、条件判定にバグがあってもセッションが暴走しないセーフティネットになります。
あわせて、フック運用まわりでは次の修正も入ります。/loop でClaudeが反復の合間にアイドルになっているとき、Esc / Ctrl+Cで保留中のウェイクアップをキャンセルできるようになります(/loopはスケジュールした間隔でプロンプトを繰り返す機能です)。また、/goal の評価器が、バックグラウンドシェルや委譲したサブエージェントがまだ動いている最中に発火してしまう問題も解消されます。
Windows環境でPowerShellツールを使っている場合
Windows環境のPowerShellツールまわりに2つの変更が入ります。
1つ目は、PowerShellツールが -ExecutionPolicy Bypass を渡すようになる点です。実行ポリシーの制約でスクリプトが実行できない事象を避けるための変更で、従来どおり実行ポリシーを尊重したい場合は環境変数 CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1 でオプトアウトできます。
2つ目は、Bedrock / Vertex / FoundryのユーザーについてもWindowsでPowerShellツールが既定で有効になる点です。こちらをオフにしたい場合は CLAUDE_CODE_USE_POWERSHELL_TOOL=0 を指定します。社内ポリシーでPowerShellの実行を制御しているチームでは、これらの環境変数で挙動を合わせられます。
主な変更点
追加・改善
- プラグインの依存関係チェックを追加 —
claude plugin disableは依存している有効なプラグインがあると拒否し、無効化チェーンのヒントを表示。claude plugin enableは推移的な依存プラグインをまとめて有効化 /pluginマーケットプレース閲覧ペインにコンテキストコスト見込みを表示 — 1ターン・1呼び出しあたりのトークン推定値worktree.bgIsolation: "none"設定を追加 — バックグラウンドセッションがEnterWorktreeを介さずワーキングコピーを直接編集できる- PowerShellツールが
-ExecutionPolicy Bypassを渡すように変更 — 尊重したい場合はCLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1 - Bedrock / Vertex / FoundryでもWindowsのPowerShellツールが既定で有効に — オフは
CLAUDE_CODE_USE_POWERSHELL_TOOL=0 - バックグラウンドセッションがアイドル復帰後もモデルと推論努力レベルを保持
- アタッチ済みのエージェントセッションのShift+Tabサイクルに自動モードが含まれるように
claude agentsが--add-dir/--settings/--mcp-config/--plugin-dirを受け付け — ダッシュボードとそこからディスパッチするバックグラウンドセッションに適用claude agentsが--permission-mode/--model/--effort/--dangerously-skip-permissionsを受け付け — ディスパッチするセッションの既定値を設定/bgが--mcp-config/--settings/--add-dir/--plugin-dir/--strict-mcp-configを保持 — バックグラウンド化してもMCPサーバと設定が維持される/bgと←デタッチが--fallback-modelと--allow-dangerously-skip-permissionsを保持- worktreeのクリーンアップが
rm -rfへフォールバックしなくなった —git worktree remove失敗時にgitignore対象や作業途中のファイルを失わない
主な修正
scopesの値が配列でない壊れた.credentials.jsonが、CLIの起動をハングさせたり、OAuthトークンのリフレッシュを無言で中断させたりする問題を解消- Windows TerminalとWSLで
claude agentsの右クリック貼り付けが効かない問題を解消 - ブロックを繰り返すStopフックが無限ループする問題に上限を設定 — 8回連続ブロックで警告を出してターン終了、
CLAUDE_CODE_STOP_HOOK_BLOCK_CAPで変更可能 - Claudeが反復の合間にアイドルなとき、Esc / Ctrl+Cで保留中の
/loopウェイクアップをキャンセルできない問題を解消 /goalの評価器が、バックグラウンドシェルや委譲したサブエージェントの実行中に発火する問題を解消- settings.jsonの
envに書いたNO_COLOR/FORCE_COLORが、Claude Code自身のUIの色まで消していた問題を解消 — サブプロセスにのみ適用されるように - Windowsでエージェントビューがセッション一覧時にPowerShellプロセスを繰り返し起動する問題を解消
- プロンプトなしの
/bgがフォーク先のセッションに「continue」を送ってしまう問題を解消 — フォーク先は入力を待つように --agent <name>が、plugin:プレフィックスなしではプラグイン提供のエージェントを見つけられない問題を解消- エージェントビューからセッションを削除しても、そのトランスクリプトファイルが残る問題を解消
- Windows Terminalでアタッチ中のバックグラウンドセッションをスクロールしたときに、古い断片が残って描画される問題を解消
- ホストのスリープやmacOSのApp Nap後に、バックグラウンドエージェントがワーカー停止を誤検知して大量発生させる問題を解消
- 5xxエラーメッセージが、設定済みのゲートウェイやクラウドプロバイダ名ではなくstatus.claude.comを指していた問題を解消
- バックグラウンドセッションが、IDEのファイル参照をウォームスペアの入力に無言で取り込み、次のプロンプトの先頭に付加してしまう問題を解消
- macOSでバックグラウンドジョブのセッションが、フルディスクアクセスを付与していても
~/Documents/~/Desktop/~/Downloads配下のファイル読み取りで「Operation not permitted」になる問題を解消 - Windowsで応答のストリーミング中に
claude agentsで←を押すと、エージェント一覧が全入力を受け付けなくなる問題を解消 ~/.local/bin/claudeのランチャーが無い・実行不可のときに、バックグラウンドデーモンの起動が実行中のバイナリへフォールバックするようにclaude agents --allow-dangerously-skip-permissionsが、ディスパッチするセッションを権限サイクル内の選択肢にするのではなく、バイパスモード既定にしていた問題を解消
v2.1.142とv2.1.143を機能体験で並べると何が違うか
直前のv2.1.142は、fast modeの既定モデルがOpus 4.7に切り替わり、claude agents のディスパッチ時設定を8つのフラグで指定できるようにした版でした。本版v2.1.143は、その「設定できるようにした」部分がセッションを離れても保持されることを担保し、さらにプラグインの依存関係という別領域の整備を加えた版です。
| 領域 | v2.1.142 | v2.1.143 |
|---|---|---|
claude agents ディスパッチ | --model / --effort / --permission-mode ほか8フラグを追加 | --add-dir / --settings / --mcp-config / --plugin-dir をダッシュボードにも適用、/bg がフラグを保持 |
| バックグラウンド設定の保持 | 変更なし | アイドル復帰後にモデルと推論努力レベルを保持、/bg が --fallback-model 等を引き継ぐ |
| Plugins | ルートSKILL.md認識、LSP表示、/web-setup の上書き警告 | 依存関係チェック追加、マーケットプレースにコンテキストコスト見込み表示 |
| Worktree | バックグラウンドセッションが既存worktreeを認識する修正 | worktree.bgIsolation: "none" 追加、クリーンアップの rm -rf フォールバック廃止 |
| Hooks | 不適合なhook型のエラーメッセージ改善 | Stopフックの連続ブロックに8回の上限を追加 |
| Windows / PowerShell | — | -ExecutionPolicy Bypass を渡す、Bedrock等でPowerShellツール既定有効 |
v2.1.142が「claude agents のセッションごとに役割を設定できるようにした」のに対し、v2.1.143は「その設定が離席しても消えないことを担保し、プラグイン依存とworktree分離の安全性を足した」と読めそうです。claude agents を本格的に複数並走させる構成では、設定が消えないことが前提になるため、本版で常駐運用の足場が一段固まる形になります。
運用形態別の影響度早見表
本版の変更が利用形態別にどの程度効くかを示すと、次のとおりです。
| 利用形態 | 判定 | 主な変化 |
|---|---|---|
| 依存関係を持つ複数プラグインを管理 | 明確な恩恵あり | claude plugin disable / enable が依存関係をチェック・解決する |
claude agents で複数の役割エージェントを並走 | 明確な恩恵あり | アイドル復帰・デタッチを跨いで設定が保持される |
| バックグラウンドセッションを離席して放置 | 明確な恩恵あり | モデル・推論努力レベル・MCP設定が消えない |
| StopフックやUserPromptSubmitフックでループ制御 | 明確な恩恵あり | 連続ブロックの無限ループに8回の上限が入る |
/loop で反復実行を運用 | 条件次第 | アイドル中のウェイクアップをEsc / Ctrl+Cでキャンセルできる |
| 巨大モノレポでバックグラウンド実行 | 条件次第 | worktree.bgIsolation: "none" でworktree分離を外せる |
| WindowsでPowerShellツールを利用 | 条件次第 | -ExecutionPolicy Bypass の付与、Bedrock等で既定有効 |
| macOSでバックグラウンドジョブを常駐 | 条件次第 | ~/Documents 等の読み取り失敗、スリープ後の誤検知が解消 |
| ローカルで単発実行のみ | ほぼ影響なし | 壊れた .credentials.json でのハング解消が間接的に効く程度 |
プラグインを依存関係込みで管理しているチーム、claude agents を並走させているチーム、フックでループ制御をしているチームのいずれかに当てはまる場合、本版で運用設計を見直せる選択肢が増えます。
まとめ
Claude Code v2.1.143は、プラグインの依存関係を壊さずに有効化・無効化できるようになり、バックグラウンドセッションがアイドル復帰やデタッチを跨いで設定を保持し続けるようになった版です。これに加えて、Stopフックの連続ブロックに8回の上限が設けられ、git worktree remove 失敗時の rm -rf フォールバックが廃止され、worktree.bgIsolation: "none" で巨大リポジトリ向けにworktree分離を外せるようになるなど、バックグラウンド運用とフック運用の安全性まわりの修正がまとめて入っています。
依存関係を持つ複数のプラグインを管理しているチーム、claude agents で目的別エージェントを並走させているチーム、フックでループ制御をしているチームでは、本版で詰まりが取れる方向に動きます。v2.1.142で claude agents のセッションごとの設定を「指定できる」ようにした流れを、本版で「離席しても消えない」ところまで進めた版と読めそうです。更新は claude update で取得でき、claude --version で 2.1.143 になっていれば本版の変更が反映されています。
関連する記事
Claude Code をもっと見る →Claude Code v2.1.142 — fast modeがOpus 4.7既定に、claude agentsに起動時設定フラグを追加
Claude Code v2.1.141 — フック通知の新フィールド + ワークスペース単位トークン
Claude Code v2.1.140 — /goalの停止と企業環境での背景サービス起動失敗を解消する修正版
Claude Code v2.1.139 — agent viewと /goalコマンドの追加
Claude Code v2.1.133 — ワークツリーのベース選択機能と、Hooks/Bashでのeffort連携
Claude Code v2.1.76 — MCPの対話型確認と新フック、作業ツリーのスパース化
Claude Code v2.1.49 — エージェントの作業ツリー分離と、バックグラウンド制御の強化
Claude Code v2.1.10 — リポジトリ初期化・メンテナンスをSetup Hookで扱えるように