Fetching from the wire…
Public story · 2026-09-12 · high
The eval runs each test with and without a plugin, so a skill that never fires can still score a pass unless you check the gap.
Why now: MarkTechPost's rundown of the plugin eval feature published September 11, right as Claude Code 2.1.269 rolled out.
Claude Code 2.1.269 added a plugin eval command that runs each test three times with a skill loaded and three times without, according to Claude Code's plugin eval docs.
A case that scores 1.0 in both runs means the plugin added nothing to a task the model already handled alone. A skill that never fires still lets the model finish the job on its own. The absolute score reads as a pass, even though the delta sits near zero and the case's tool_used grader fails. Someone checking only the top-line score would call that a working skill.
There's a wrinkle in the scoring logic. Graders that check whether a skill was invoked can never pass in the without-plugin arm. Counting those as failures would drag the delta up artificially, so Claude Code marks them scored: false on both sides instead. Setting arm: both reverses that, useful for a must-not-invoke check with min: 0 and max: 0.
Six grader types come with the tool. Four run free (regex, tool_used, tool_order, file_exists) and two call a judge model (llm, baseline). CI gating runs through --threshold and --max-cost-usd flags. An untrusted checkout without --trust-plugin exits with an error when no terminal is attached, per MarkTechPost's coverage of the release. Granting Bash access routes a case through an OS sandbox that needs bubblewrap and socat on Linux, or WSL2 on Windows. Native Windows has no backend at all, so those cases just error out.
Run one eval against your most-used skill. If the delta comes back near zero, the skill isn't doing what you think it is.
Each link below shares sources, entities, or timing with this story.
One Claude Code release fixed two independent permission-check bypasses on the same day. That's the story. Version 2.1.221, shipped August 4, patches a Bash tool bypass where zsh could execute hidden commands embedded inside [[ ]] regex conditionals. The approval prompt never...
1. Build a Private Claude Code Plugin Marketplace (intermediate, vibe-coding) — Bundle skills, agents, hooks, MCP servers into installable team plugins via GitHub repos. Docs 2. Google ADK TypeScript Multi-Agent Orchestration (intermediate, agent-patterns) — Code-first agent f...
For a month, Claude Code users were convinced the model had been "nerfed." Forums lit up. Conspiracy theories multiplied. People switched tools. Then on April 23, Anthropic did something unusual: they published a detailed post-mortem that named three specific bugs with exact d...
1. KV-Cache-Aware Context Engineering (Advanced) — 10x cost reduction by treating cache hit rate as your most important metric. Make system prompts stable, use append-only history, static tools with logit masking. Manus Blog 2. Claude Code Agent Teams (Intermediate) — Run coor...
A user pasted the Auto Mode system reminder verbatim. It instructs the model to read files with cat, head and sed -n, search with grep and find, and edit with sed and heredocs, falling back to the built-in Read/Edit/Write tools only when Bash can't do the job. An Anthropic emp...
Buried in the notes: several 2.1.232 changes covering Cygwin symlink handling and shell input redirections were rolled back, with a narrower version planned (Releasebot). 2.1.233 also fixed idle-session CPU burn on Linux and MCP stream handling. If you are on Windows with Cygw...
MindPattern daily
One email a day at 7 AM. Sources and a take on every story. Unsubscribe anytime.