0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code v2.1.269|claude plugin eval でプラグインを採点|毎日Changelog解説

0
Posted at

Claude Codeの公式Changelogをリリースから最速で翻訳・解説しています。

claude plugin eval が入りました。プラグインの eval スイートを走らせると、プラグイン有りと無しでスコアの差が出ます。v2.1.269 は 98 件の大型リリースで、既存の設定に効くのは否定始まりの deny ルールと Bash(tee:*) の許可範囲。

見取り図

変更 効くところ
claude plugin eval が入った eval スイートを走らせ、点数付きの結果を JSON と HTML レポートで受け取る
/output-style [name] が使える 出力スタイルの一覧と切り替え。Remote Control 経由、cloud、headless セッションでも動く
Bash ツールの結果に差分 bashEditDiffEnabled で切り替え。Bash がファイル編集を担当したとき、変更したファイルの diff が結果に入る
否定始まりの deny / ask ルール 書いたソースの外まで効いていたのが、自分のソース内だけに縮む
Bash(tee:*) の allow 作業ディレクトリ外の書き込み先をカバーしなくなる
CLAUDE.md の attribution 禁止 コミットと PR の attribution を断るルールを、リマインダーが上書きしなくなる

claude plugin eval はプラグインの効きをスコアにする

プラグインに同梱した eval スイートを Claude Code に対して走らせ、点数付きの結果を返すサブコマンドです。 changelog 側の記述は 1 行だけ。

Added claude plugin eval: run a plugin's eval suite against Claude Code and get scored, reproducible results (JSON + HTML report); see claude plugin eval --help

対象読者: プラグインや skill を配っている人、社内向けマーケットプレイスを運用している人

手元の v2.1.269 で claude plugin eval --help を読むと、ケースの置き場は evals/ 配下で、case.yaml か、prompt.mdgraders/*.md の組です。ターゲットには、パス、プラグイン名、plugin@marketplace の id のどれかを渡す形でした。

claude plugin eval my-plugin
claude plugin eval ./my-plugin --case 'search-*' --json result.json

--ablation の既定値は、プラグインが解決できるかぎり with-without です。プラグイン無しのベースラインを併走させ、「skill が発火したか」ではなく「入れて良くなったか」をスコアの差で出します。

1 ケースあたりの実行回数は既定 3 回。-j を付ければ 1〜8 並列で回せます。LLM グレーダーの既定モデルは haiku。--threshold は既定 1.0 で、1 ケースでも下回ると exit 1 で終わります。--max-cost-usd に上限を渡した場合、超えた時点で部分結果を出して exit 2。

HTML レポートは、対応しているアカウントだと Claude Code が既定で claude.ai に公開します。手元だけに置くなら --no-publish。eval そのものは自分の権限でローカルに走るので、信頼するプラグインだけを対象にする、と CLI の説明文にも書かれています。

deny の抜けは tee と設定ソースの境目

Bash(tee:*) を allow にしていると、作業ディレクトリの外にもファイルを書けていました。 Edit() の deny ルールと書き込みパスの検査が、Bash の tee の書き込み先を見ていなかったためです。v2.1.269 からは tee の宛先も検査対象に入り、Bash(tee:*) の allow は作業ディレクトリ外をカバーしません。

Bash(tee:*) の allow で作業ディレクトリの外に書き出していた運用は、v2.1.269 で挙動が変わります。

もう 1 つの抜けは設定ソースの跨ぎ。! で始まる deny / ask ルールが、それを書いた settings の外側にまで効いていました。今回から適用範囲は自分のソース内に限られ、否定だけを書いた指定は無視されます。

--output-format stream-jsonpermission_denials も直りました。パス指定の deny で弾かれた Read / Edit / Write が結果から漏れていたので、headless で拒否を集計していた場合、その分だけ数が欠けていました。プラグインのアーカイブ展開も締まりました。展開したファイルが同じマシンの他ユーザーから読めた、アーカイブ側の world-writable ビットが残った、再展開しても古いファイルが生き残った、の 3 点が直っています。

Bash が書き換えたファイルの差分が結果に入る

Bash ツールがファイル編集を担当したとき、変更したファイルの diff を tool result に付ける機能が入りました。切り替えの設定キーは bashEditDiffEnabled で、既定で有効かどうかは changelog に書かれていません。

中断したセッションを再開したときのキャッシュ崩れ

出力トークン上限で応答が切れ、Claude Code が自動で続きを流したあとのターンで、プロンプトキャッシュが部分的に無効になっていました。思考の途中で止めてから resume した場合も、それより前のコンテキストの再送のされ方が変わり、キャッシュの再利用が落ちていました。v2.1.269 でどちらも直りました。cloud セッションでは、最初のリクエストの前にサーバー設定の到着を短く待つようにして、キャッシュミスを減らしています。

compaction まわりも直りました。compaction 後に Claude Code が Claude へ渡す git status が、セッション開始時点のものだったのが、現在の status に変わります。もう 1 つは「Prompt is too long」の固着で、auto-compaction が要約できる完了済みのやり取りを持たないとき、セッションが永久に詰まっていました。巨大なプロンプトを渡す Agent SDK のセッションで主に起きていた、と原文にあります。

増えた環境変数

環境変数 効果
CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS Workflow ツールの 1 run あたり同時エージェント数を 1〜256 の範囲で上げる
CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS LLM ゲートウェイの /v1/models 探索タイムアウトを延ばす (既定 3 秒)
OTEL_METRICS_INCLUDE_REPOSITORY メトリクスとイベントに vcs.* のリポジトリ属性を付ける。OTEL_LOG_TOOL_DETAILS と併用するとコミットイベントに vcs.ref.head.* が乗る
CLAUDE_CODE_BG_TASKS_REPORT_RUNNING 0 でバックグラウンドタスクの状態報告を従来の挙動に戻す

最後の 1 つは、remote と headless のセッションがバックグラウンドエージェントの実行中に「waiting for your input」と報告していた修正に付いてきたものです。

日本語のプロンプト候補が落ちなくなった

日本語・中国語・タイ語のように単語をスペースで区切らない言語では、プロンプト候補が丸ごと捨てられていました。v2.1.269 から候補が出ます。

フィルタの基準も変わりました。日本語・中国語・韓国語では、字種の混ざった候補と単語 1 つの候補を残し、メタ的・評価的なテキストは英語と同じ扱いで落とします。

VSCode 拡張は hook と権限ルールをダイアログから

設定ファイルを開かずに hook と権限ルールを足せるダイアログが付きました。 どちらも user / project / local の 3 スコープが対象で、managed・plugin・session の hook と、起動オプション由来・セッション限定・managed の権限ルールは読み取り専用のままです。

フッターの「N agents」ピルからはサブエージェントのマップが開きます。エージェントごとのカード、Stop agent、読み取り専用のトランスクリプトが並ぶ作り。Focus view にはサブエージェントの進捗行も入りました。

98 件の内訳

v2.1.269 は 98 件。[VSCode] が 23 件、[Claude Tag] が 10 件、[Claude Code on the web] が 7 件で、残る 58 件が CLI 本体です。本体の 58 件のうち 42 件が修正で、新規追加は claude plugin eval を含めて 7 件でした。deny ルールは前回 v2.1.268 の symlink 経由の抜けに続いて、今回が tee 経由と設定ソースの跨ぎでした。

前回: Claude Code v2.1.268|deny ルールの symlink 抜けが塞がる|毎日Changelog解説

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?