本文へスキップ
Claude Media
Claude Code v2.1.143 — プラグインの依存関係チェックと、バックグラウンドセッションの設定保持

Claude Code v2.1.143 — プラグインの依存関係チェックと、バックグラウンドセッションの設定保持

Claude Code v2.1.143は、プラグインの依存関係を壊さずに有効化・無効化できるようになり、バックグラウンドセッションがアイドル復帰やデタッチを跨いで設定を保持し続けるようになった版です。

読了目安 約13

このリリースで何ができるようになるか

Claude Code v2.1.143は、プラグインの依存関係を壊さない形で有効化・無効化できるようになり、バックグラウンドセッションがアイドル復帰やデタッチを跨いで設定を保持し続けるようになった版です。直前のv2.1.142claude 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.142claude 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.133worktree.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.142v2.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.142claude agents のセッションごとの設定を「指定できる」ようにした流れを、本版で「離席しても消えない」ところまで進めた版と読めそうです。更新は claude update で取得でき、claude --version2.1.143 になっていれば本版の変更が反映されています。

この記事を共有:XLinkedIn