Claude Code v2.1.85(3/26)とv2.1.86(3/27)がリリースされた。hookを使っている人には重要な変更が複数含まれている。
v2.1.85: hookの大幅強化
1. ifフィールド — hookの条件付き実行
hookにifフィールドが追加され、特定の条件下でのみhookを実行できるようになった。
{
"hooks": {
"PreToolUse": [{
"matcher": "Bash",
"if": "git push",
"hooks": [{"type": "command", "command": "bash ~/.claude/hooks/push-guard.sh"}]
}]
}
}
効果: 全てのBashコマンドでhookが起動していた問題を解消。lsやcatのような無害なコマンドではhookプロセスが起動しなくなり、パフォーマンスが向上する。
詳細: hookのifフィールドで不要なプロセス起動をゼロにする
2. updatedInput — hookからツール入力を書き換え
PreToolUseフックがupdatedInputを返すことで、ツールに渡される入力を動的に変更できるようになった。
# 例: fish shellでコマンドを実行するように書き換え
jq -n --arg cmd "fish -c '$COMMAND'" '{
hookSpecificOutput: {
hookEventName: "PreToolUse",
permissionDecision: "allow",
updatedInput: { command: $cmd }
}
}'
使用例:
- AskUserQuestionへの自動回答(
updatedInput.answers) - コマンドのシェルラッパー(bash→fish/zsh)
- 入力のサニタイズ
3. AskUserQuestionマッチャー
PreToolUseフックでAskUserQuestionをマッチャーに指定できるようになった。Claude Codeが質問する前にhookが割り込み、自動回答を返せる。
{
"hooks": {
"PreToolUse": [{
"matcher": "AskUserQuestion",
"hooks": [{"type": "command", "command": "bash ~/.claude/hooks/auto-answer.sh"}]
}]
}
}
注意: AskUserQuestionのスキーマは questions 配列 + answers オブジェクト。単数形のquestion/answerではない。
v2.1.86: バグ修正中心
主要な修正
| 修正 | 影響 |
|---|---|
--resumeが「tool_use ids without tool_result」エラーで失敗 |
v2.1.85より前のセッションを再開できなかった問題が解消 |
| プラグインのhookスクリプトに実行権限が付かない(macOS/Linux) | v2.1.83以降でプラグインhookがPermission deniedになっていた |
@ファイル参照のJSONエスケープ除去 |
トークン消費が減少 |
| メモリリーク(マークダウンレンダーキャッシュ) | 長時間セッションのメモリ増加が緩和 |
| Bedrock/Vertex/Foundryのキャッシュヒット率改善 | 動的コンテンツをツール説明から除去 |
| VSCodeで「Not responding」が不正に表示 | 長時間操作中の誤表示が解消 |
| VSCode Maxプランで8時間後にSonnetに切り替わる | OAuthトークン更新時にデフォルトモデルにフォールバックしていた |
| Auto modeが「temporarily unavailable」と表示 | プラン制限時の表示を「unavailable for your plan」に変更 |
開発者向け変更
-
X-Claude-Code-Session-IdヘッダーがAPIリクエストに追加 — プロキシでセッション単位の集計が可能に -
.jj/.slがVCS除外に追加 — Jujutsu/Sapling ユーザー向け - Skill説明が250文字に制限 — コンテキスト使用量を削減
- Readツールがコンパクトな行番号フォーマットを使用 — トークン節約
アップデート方法
npm update -g @anthropic-ai/claude-code
claude --version # 2.1.86
hookユーザーへのアクション
-
ifフィールドの導入を検討 — hookが10個以上ある場合、不要な起動を減らせる - AskUserQuestion対応hookの追加 — 自律運用で「質問で止まる」問題を解消
-
プラグインの実行権限確認 — v2.1.83-85で壊れていた可能性あり(
chmod +xで修復)
📌 関連記事:
🛡 658個のhook例をワンコマンドで: npx cc-safe-setup — if対応hook、auto-answer、fish-wrapperも収録。14,096テストで検証済み。
v2.1.85のif機能、もう使っていますか?