本文へスキップ
Claude Media
Claude Code v2.1.129 — パッケージマネージャの自動更新と、プロンプトキャッシュの修正

Claude Code v2.1.129 — パッケージマネージャの自動更新と、プロンプトキャッシュの修正

Claude Code v2.1.129は --plugin-urlによるプラグイン即時試用、Homebrew/WinGetの自動更新、Ctrl+Rの全プロジェクト検索復帰、prompt cache TTLの1時間が無音で5分にダウングレードされていたバグ修正を含む運用安定化リリースです。

読了目安 約9

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

Claude Code v2.1.129は、プラグインの試用フロー / パッケージマネージャ運用 / 端末同期出力の改善と、プロンプトキャッシュおよびOAuthリフレッシュ周りの不具合修正をまとめた版です。

  • --plugin-url <url> フラグでZIPプラグインアーカイブをURLから直接取得し、現在のセッション限定で利用できます
  • CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE 環境変数でHomebrew / WinGetのアップグレードコマンドをバックグラウンド実行し、再起動を促せます
  • Ctrl+Rの履歴ピッカーが全プロジェクト検索をデフォルトに戻し、Ctrl+Sで現在プロジェクトに絞り込めます
  • 1時間プロンプトキャッシュのTTLが無音で5分にダウングレードされていた不具合と、スリープ復帰後に全セッションがログアウトしていたOAuthリフレッシュの競合状態が解消されました

直前版のv2.1.128/mcp の可視性向上やparallel tool call修正など運用品質パッチに寄っていたのに対し、本版は配布フローとキャッシュ効率の根本修正に踏み込んでいます。

あなたの開発フローはどう変わるか

プラグイン試行が一回で終わる

これまでプラグインを試すには「ダウンロード → 展開 → --plugin-dir で指定」の3ステップが必要でしたが、--plugin-url でZIPアーカイブを直接指定すればワンライナーで試用できます。

claude --plugin-url https://example.com/my-plugin.zip

現在セッション限定で読み込まれるため、チーム内で「この設定で試してほしい」と依頼するときも、配布URLを共有するだけで済みます。

端末で出力同期が効かない環境の救済

Emacs eat のように自動検出から漏れる端末でも、CLAUDE_CODE_FORCE_SYNC_OUTPUT=1 で同期出力を強制有効化できます。並列ツール実行時に出力がばらつく現象が起きていた環境では、本オプションで挙動が安定します。

パッケージ更新の自動化

Homebrew / WinGetでClaude Codeを入れている場合、CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE=1 を設定するとアップグレードコマンドがバックグラウンドで走り、完了時に再起動を促すプロンプトが出ます。手動で brew upgrade claude-codewinget upgrade claude-code を叩く手間が省けます。

この環境変数を含む各種設定の詳細は、Claude Code設定完全ガイドで扱っています。

Ctrl+Rのプロジェクト横断が復活

v2.1.124以前の挙動に戻り、Ctrl+Rはデフォルトで全プロジェクト・全セッションの履歴を検索する形に戻りました。現在プロジェクトに絞りたい場合はCtrl+Sを押します。複数リポジトリを並行して扱う場合や、過去のプロンプトパターンを別プロジェクトから引っ張ってきたい場面で従来の使い勝手が戻ります。

主な変更点

プラグイン・拡張機能

  • --plugin-url <url> フラグの追加: 現在セッション限定でZIPプラグインアーカイブをURLから取得・利用
  • プラグインマニフェスト: themesmonitors"experimental": { ... } 配下での宣言が推奨に。トップレベル指定も動作はするものの claude plugin validate で警告が出ます
  • skillOverrides設定の動作: off でmodelと / 双方から非表示、user-invocable-only でmodelからのみ非表示、name-only で説明を折りたたみ

パッケージ管理・自動更新

  • CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE 環境変数: Homebrew / WinGetのアップグレードコマンドをバックグラウンド実行し、完了時に再起動を促します

端末・表示

  • CLAUDE_CODE_FORCE_SYNC_OUTPUT=1 環境変数: 自動検出から漏れる端末(Emacs eat など)で同期出力を強制有効化
  • Ctrl+R履歴ピッカー: デフォルトで全プロジェクト・全セッション検索(v2.1.124以前の挙動に復帰)、Ctrl+Sで現在プロジェクト・セッションに絞り込み
  • 第三者デプロイ環境: Bedrock / Vertex / Foundry / ANTHROPIC_BASE_URL ゲートウェイで、Anthropic第一者サービスを指すspinner tipsが表示されない挙動に

Gateway・モデル

  • Gatewayの /v1/models discovery: CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 でopt-in化(v2.1.126 〜 v2.1.128では自動だった挙動を再度オプション化)

メトリクス・観測

  • claude_code.pull_request.count メトリクス: シェルコマンド経由だけでなくMCPツール経由で作成されたPR / MRもカウント対象に
  • Policy refusalエラー: API Request IDが含まれサポートデバッグが容易に

バグ修正・安定性

キャッシュ・認証

  • 1時間プロンプトキャッシュのTTLが無音で5分にダウングレードされる不具合を修正
  • スリープ復帰後のOAuthリフレッシュ競合により、実行中の全セッションがログアウトしていた問題を修正
  • cache-miss警告: /clear やcompaction後に /effort/model を変更すると無関係な警告が出ていた問題を修正

UI・操作

  • API errors: 未認識の400ステータスコードで生JSONではなく基礎エラーメッセージを表示
  • /clear でターミナルタブのタイトルがリセットされない問題を修正
  • /rename のセッションタイトルチップ: permissionなどのダイアログがアクティブな間に消える問題を修正
  • agent panel: subagent実行中にプロンプト下のagent panelが隠れる問題(v2.1.122で混入していたregression)を修正
  • 外部エディタ連携(Ctrl+G): プロンプト上の会話履歴が白紙になる問題を修正
  • /context でレンダリング済みASCII可視化グリッド(約1.6kトークン)が会話に混入する問題を修正

ナビゲーション・検索

  • /agents ライブラリリスト: 矢印キーナビゲーションでハイライトされたagentがビューポート外でも見える位置を維持
  • /branch の成功メッセージ: /resume 用の新ブランチsession IDが含まれていなかった問題を修正

表示・レンダリング

  • bold headers: keycap / ZWJ / skin-tone絵文字使用時にフルスクリーンモードで末尾文字が消える問題を修正
  • server管理設定ポリシー: OAuth認証情報に user:inference スコープが欠けるエンタープライズ / チームユーザーに適用されない問題を修正

Permission・MCP・外部ツール

  • Bash(mkdir *) / Bash(touch *) などのallow rule: プロジェクト内パスで適用されない問題を修正
  • deniedMcpServers パターン: *:// スキームのワイルドカードが大文字と小文字の混在のホスト名にマッチしない問題を修正

その他

  • 音声モード: 無害なWebSocket警告が --debug 時にエラーレベルで出る問題を修正
  • VS Code: /clear で会話コンテキストと表示済みtranscriptがクリアされない問題を修正

パッケージマネージャ自動更新は運用フローを何に変えるか

CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE の追加は、Homebrew / WinGetでClaude Codeを管理しているチームにとって、更新フローを「手動の2ステップ」から「環境変数1つで自動化」へ寄せられるようになる転換点です。

これまではClaude Code側でupdate available通知が出ても、brew upgrade claude-code を手動で叩いて、再起動するまでが利用者の作業でした。リリース頻度が高いClaude Codeでは、この手動ステップが地味に運用負荷になっていました。

従来フロー環境変数を設定した場合
1. Claude Code内でupdate available通知1. アップグレードコマンドが自動実行
2. 手動で brew upgrade claude-code を実行2. 完了時に再起動を促すプロンプト表示
3. Claude Codeを再起動3. 確認してClaude Codeを再起動

CI / CDパイプラインや定期実行スクリプトで常に最新版を保ちたいケースや、チームで統一バージョンを維持したいケースでは、本オプションを有効化する価値が出やすい構図です。

プロンプトキャッシュTTLダウングレードが運用コストに与えていた潜在影響

修正された「1時間プロンプトキャッシュのTTLが無音で5分にダウングレード」されていた不具合は、ログにエラーが出ない種類のregressionなので、影響範囲が見えにくい一方でAPI課金には直接響く性質を持っていました。

プロンプトキャッシュはAPI課金の削減とレスポンス速度の確保のための機能で、1時間TTLを前提に長時間セッションや反復ワークフローを組んでいた場合、実際には5分でキャッシュが失効していたことになります。理論上は再生成が60分 ÷ 5分 = 12回まで増える計算で、特に重いcontextを持つセッションではAPIコストが想定値を大きく上回る形になっていた可能性があります。

想定運用実際の挙動(不具合あり)修正後
1時間セッションで同じcontextを再利用5分ごとに失効・再生成1時間有効で再利用
APIコスト基準値最大で基準値の約12倍基準値どおり
レスポンス速度: cache hit頻繁にcache misscache hit

sub-agentを多段で運用しているケースや、大きなcontextを持つ長時間セッションでは、月次のAPI課金で差が見えるレベルだった可能性があります。v2.1.128のsub-agent prompt cache修正と合わせて、キャッシュ周りの効率が一段階整った版という位置付けです。

影響範囲と利用形態別の対応

利用形態本版での効き方判定
プロンプトキャッシュ1時間TTLを前提とした長時間セッションTTLダウングレード修正でAPIコストが想定値に戻る明確な恩恵あり
OAuth環境でスリープ / 復帰を繰り返す運用wake-from-sleep race修正で、復帰時に全セッションがログアウトする事象が解消明確な恩恵あり
プラグインの試用・配布が頻繁--plugin-url でワンライナー化明確な恩恵あり
Homebrew / WinGetで管理自動更新のopt-in選択肢が追加条件次第(CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE=1 を設定するかで分かれる)
Ctrl+Rを多用、複数プロジェクト横断で履歴検索したいデフォルト挙動がv2.1.124以前に復帰条件次第(従来挙動に戻したかったかで分かれる)
Emacs eat などで出力同期が崩れていた強制有効化オプション追加条件次第(CLAUDE_CODE_FORCE_SYNC_OUTPUT=1 の設定が必要)
Bash(mkdir *) / Bash(touch *) のallow ruleを利用プロジェクト内パスで効くようになる条件次第
deniedMcpServers*:// スキームで設定大文字と小文字の混在ホスト名にもマッチ条件次第
上記のいずれにも該当しない既存の挙動に変化なしほぼ影響なし

まとめ

  • プロンプトキャッシュTTLの不具合とOAuthリフレッシュの競合修正により、長時間セッションやスリープ復帰を含む運用での安定性が向上しました
  • --plugin-url の追加で、プラグインの試用・社内共有のステップがワンライナーで完結するようになりました
  • CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE により、Homebrew / WinGetユーザーは以降の更新を環境変数1つで自動化できます
  • Ctrl+Rの全プロジェクト検索が既定に戻り、複数リポジトリ横断で履歴を引き出す使い方が再びしやすくなりました
  • Emacs eat などの端末で出力同期が崩れていた環境では、CLAUDE_CODE_FORCE_SYNC_OUTPUT=1 で挙動を矯正できるようになりました

直前版はv2.1.128です。本版で運用安定性とフロー改善が一段進んでおり、更新は claude update で取得できます。

この記事を共有:XLinkedIn