今日のメインは v2.1.143(5月15日リリース) の詳細と、直近数バージョンで積み重なってきたフック・MCP 周りの改善整理。大きなニュースは昨日で出切っているので、今日はオペレーション改善系のアップデートをまとめる。
1. v2.1.143(5月15日)— プラグイン依存チェックと worktree 新設定
プラグイン依存関係の強制(claude plugin disable / enable)
プラグインを無効化しようとしたとき、他のプラグインが依存していれば拒否されるようになった。
$ claude plugin disable my-base-plugin
Error: plugin 'my-other-plugin' depends on 'my-base-plugin'.
To disable both, run:
claude plugin disable my-other-plugin && claude plugin disable my-base-plugin
エラーメッセージにそのままコピー&ペーストできるコマンドが含まれているので、依存チェーンを手作業で解決する必要がない。
逆に claude plugin enable 側は 推移的な依存関係を自動で有効化する。依存先プラグインを事前に有効化しておかなくてよい。
worktree.bgIsolation: "none" — ワークツリーが使えないリポジトリ向け
バックグラウンドセッションは通常、git worktree を使って作業ディレクトリを分離する(EnterWorktree フック)。だが monorepo や一部のツールではワークツリーが実用的でないケースがある。
.claude/settings.json で以下を設定すると、バックグラウンドセッションが worktree を使わず作業ディレクトリを直接編集するようになる。
{
"worktree": {
"bgIsolation": "none"
}
}
ただしこの場合、複数のバックグラウンドセッションが同じファイルを同時編集してコンフリクトを起こすリスクがある。単一バックグラウンドセッション運用や CI 環境向けの設定。
その他
/plugin marketplace browseペインに コンテキストコストの予測値(ターン単位・呼び出し単位)が表示されるようになった- PowerShell ツールが
-ExecutionPolicy Bypassを自動で渡すようになり、実行ポリシーの設定をしていない Windows 環境でのスクリプト実行が安定
参考: Releases · anthropics/claude-code | Changelog - Claude Code Docs
2. フックの強化 — effort レベルの受け取りと terminalSequence
フックが effort レベルを認識できるようになった
Claude Code にはエフォートレベル(low / medium / high)の概念があるが、これをフック内で読めるようになった。
フックの JSON 入力:
{
"effort": {
"level": "high"
}
}
シェルスクリプトから:
#!/bin/bash
if [ "$CLAUDE_EFFORT" = "high" ]; then
# high effort 時は重めのチェックを走らせる
npm run test:full
else
npm run test:quick
fi
たとえば「high effort のときだけ全テストスイートを走らせる」「low effort のときはリンターをスキップ」といった条件分岐が、フック内で完結するようになった。
terminalSequence — ターミナルがなくてもベル・通知・タイトル変更
ヘッドレス / バックグラウンドセッションでは controlling terminal がないため、エスケープシーケンスを stdout に書いても届かないことがある。
terminalSequence フィールドを使うと、Claude Code 自身のターミナル書き込みパスを通じてシーケンスが送出される。
フックの JSON 出力に追加するだけ:
{
"terminalSequence": ""
}
はベル文字(BEL)。macOS では Terminal.app / iTerm2 のタブアイコンが光る。
ウィンドウタイトルを変えたい場合:
{
"terminalSequence": "]0;Claude Done"
}
これにより、長時間タスクの完了通知をネイティブのターミナル通知として受け取れる。フックに別途 osascript や notify-send を書く必要がなくなる(ただし macOS の「通知センター」通知ではなくターミナルベルのみ)。
参考: Hooks reference - Claude Code Docs
3. MCP の改善 — 自動再接続と .mcp.json ホットリロード
リモート MCP サーバーの自動再接続が全ユーザー有効に
一時的なネットワーク障害でリモート MCP サーバーとの接続が切れたとき、自動で再試行するようになった(以前は一部ユーザーのみ)。長時間セッションで MCP を使っていると接続が切れることがあったが、これで手動の /mcp Reconnect が不要になるケースが増える。
/mcp Reconnect が .mcp.json の変更を拾う
これまでは .mcp.json を編集してもセッションを再起動しないと反映されなかった。今後は /mcp Reconnect を実行するだけで最新の設定が読み込まれる。
開発中に MCP サーバーの設定を調整しながら動作確認するサイクルが速くなる。
MCP stdio サーバーが CLAUDE_PROJECT_DIR を受け取れるようになった
フックと同様に、stdio 型の MCP サーバーが CLAUDE_PROJECT_DIR 環境変数を受け取れるようになった。
import os
project_dir = os.environ.get("CLAUDE_PROJECT_DIR")
# → /path/to/your/project
また、プラグインの設定ファイル内で ${CLAUDE_PROJECT_DIR} を参照できるようになった。
{
"mcpServers": {
"my-server": {
"command": "${CLAUDE_PROJECT_DIR}/.claude/scripts/mcp-server.py"
}
}
}
プロジェクトにバンドルした MCP サーバーをハードコードパスなしで起動できる。
参考: Claude Code Updates by Anthropic - May 2026
4. worktree.baseRef — ワークツリーのブランチ起点を選択
新しい worktree.baseRef 設定で、ワークツリーを切るときのベースブランチを制御できるようになった。
{
"worktree": {
"baseRef": "origin/main"
}
}
| 値 | 動作 |
|---|---|
"origin/<default>" | リモートのデフォルトブランチから切る(デフォルト) |
"HEAD" | 現在のローカル HEAD から切る |
ローカルで長期ブランチを育てていて、そこからバックグラウンドエージェントを派生させたいときは "HEAD" にしておくと便利。
5. サンドボックス設定 — bwrapPath / socatPath
sandbox.bwrapPath と sandbox.socatPath のマネージド設定が追加された。
{
"sandbox": {
"bwrapPath": "/usr/local/bin/bwrap",
"socatPath": "/opt/homebrew/bin/socat"
}
}
カスタムパスにインストールされた bwrap(Linux サンドボックス)や socat を明示的に指定できる。Nix や Homebrew の非標準パスを使っているときに役立つ。
今日のまとめ
| トピック | バージョン/日付 | 要点 |
|---|---|---|
| プラグイン依存チェック強制 | v2.1.143(5/15) | disable 時に依存確認・enable 時に自動有効化 |
worktree.bgIsolation: "none" | v2.1.143(5/15) | worktree 不要なリポジトリでバックグラウンド直接編集 |
フックで $CLAUDE_EFFORT 参照 | 直近 | effort レベルに応じた条件分岐 |
terminalSequence でターミナル通知 | v2.1.141+ | バックグラウンドからベル・タイトル変更 |
| リモート MCP 自動再接続が全ユーザー有効 | 直近 | 一時障害で切断しても自動復帰 |
/mcp Reconnect で .mcp.json ホットリロード | 直近 | 再起動不要で設定変更が反映 |
MCP stdio が CLAUDE_PROJECT_DIR を受け取れる | 直近 | フックと同じ変数でプロジェクトパスを参照可 |
worktree.baseRef 設定追加 | 直近 | origin か HEAD かを選べる |
sandbox.bwrapPath/socatPath 設定 | 直近 | カスタムパスのサンドボックスツール指定 |
今週は v2.1.141 → v2.1.143 と細かいリリースが続いており、フック・MCP・プラグインのオペレーション周りが着実に整備されている。特に「フックで effort レベルを読む」と「terminalSequence で通知する」の組み合わせは、高度な自動化フローを組むときに使えそうなパターン。
Sources:
- Changelog - Claude Code Docs
- Releases · anthropics/claude-code
- Claude Code Updates by Anthropic - May 2026 | Releasebot
- Hooks reference - Claude Code Docs
- Claude Code Changelog: All Release Notes (2026) | claudefa.st
- Claude Code Notifications That Don’t Suck - Boris Buliga
- Claude Code CLI: The Complete Guide — Hooks, MCP, Skills | blakecrosley.com
- Claude Code Worktrees: Parallel Sessions Without Conflicts | claudefa.st
- Anthropic Release Notes - May 2026 Latest Updates | Releasebot