<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>AI every minute</title>
    <link>https://aieveryminute.com</link>
    <atom:link href="https://aieveryminute.com/rss.xml" rel="self" type="application/rss+xml" />
    <description>First-hand trials of AI tools and models, with the receipts. Everything here was installed and run: what it cost, what broke, and where a published claim did not survive being checked. Nothing here is a summary of someone else’s claim.</description>
    <language>en</language>
    <lastBuildDate>Fri, 21 Aug 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>A book costs 41% more in Claude Code than tiktoken says</title>
      <link>https://aieveryminute.com/a-book-costs-41-percent-more-than-tiktoken-says/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-book-costs-41-percent-more-than-tiktoken-says/</guid>
      <description>&lt;p&gt;I ran book-to-skill v1.4.0 on the 501-page Pro Git PDF, then measured what the extracted text actually costs in Claude Code context against its tiktoken count. The gap is 1.41x on a technical book and 1.41x on Moby-Dick, and because the two books have different cl100k rates, solving both together puts any per-byte framing charge at or below zero, which bounds an artefact of how Claude Code wraps the file without ruling one out. Anthropic publishes ~15-20% for typical text and an unbounded &amp;quot;much more&amp;quot; for code, and only the novel is the typical-text case; both books measured the same 1.41x regardless, which that split does not predict. It leaves book-to-skill's headline ratio underdetermined rather than refuted, and makes its dollar table low. Running it also surfaced three things a README cannot tell you, including a CLI that reports 93 chapters in a ten-chapter book because it counts shell comments inside code samples.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;tool: &lt;strong&gt;book-to-skill v1.4.0, commit 3a97a71, 23,485 stars&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;book: &lt;strong&gt;Pro Git, 501 pages, 17.97 MB PDF&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;this trial: &lt;strong&gt;28 runs, six cells of four rounds plus a floor per round&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;extraction: &lt;strong&gt;501 pages in 0.55-0.64s&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;claude vs cl100k: &lt;strong&gt;1.41x on both books&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;anthropic publishes: &lt;strong&gt;typical text 15-20% (1.18-1.25x); code unbounded&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;every segment: &lt;strong&gt;between 1.382x and 1.452x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;their CLI vs their docs: &lt;strong&gt;198K against 229K on one book&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.238.&lt;/p&gt;</description>
      <pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>Your skill description is cut at 1,536 characters, and the cap is a setting you can raise</title>
      <link>https://aieveryminute.com/a-skill-description-stops-being-read-at-1400-characters/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-skill-description-stops-being-read-at-1400-characters/</guid>
      <description>&lt;p&gt;A rare marker planted at a known character offset inside a skill description, then asked for. Text ending at 1,530 characters is answered from context with no tool calls, four rounds of four; text ending at 1,536 is never answered from context, and the model shells out to read the file instead. That lands within six characters of the documented skillListingMaxDescChars default of 1,536. A 51-character increase in the skill name moves it not at all, and the tail past the cut is text you wrote that Claude never sees when deciding whether your skill is relevant. Corrected 2026-08-21: an earlier version of this post framed the cut as undocumented and cited a 1,024-character maximum.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;cut between: &lt;strong&gt;1,530 and 1,536 characters&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;at 1,400: &lt;strong&gt;in context 4 of 4 rounds&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;at 1,550: &lt;strong&gt;in context 0 of 4 rounds&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;documented cap: &lt;strong&gt;1,536, skillListingMaxDescChars default&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;skill name length: &lt;strong&gt;51 more characters moved nothing&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-21: &lt;strong&gt;the cut is documented, and configurable&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cut moves with skill count: &lt;strong&gt;no, marker at 1,400 held at 1, 10 and 40&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;counts characters not tokens: &lt;strong&gt;dense text at 2.06x still in at 1,400&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.235.&lt;/p&gt;</description>
      <pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>A trending 817-skill pack costs about 56,600 tokens before you type anything</title>
      <link>https://aieveryminute.com/an-817-skill-pack-costs-56622-tokens-before-you-type/</link>
      <guid isPermaLink="true">https://aieveryminute.com/an-817-skill-pack-costs-56622-tokens-before-you-type/</guid>
      <description>&lt;p&gt;An 817-skill cybersecurity pack from GitHub Trending costs about 56,600 tokens of startup context in an empty isolated project, 69.30 per skill, from 24 readings of which 21 sit inside a 48-token band. The synthetic skills curve behind this site's own calculator interpolates to 13.46 per skill at that count, 5.15x low, and its 1,000-skill cell still re-measures correctly. Description uniqueness and the pack's extra frontmatter were each tested here and refuted; deleting 338KB of frontmatter moved the reading by 8 tokens. The cause is not established: neither the synthetic nor the real fixture carries its descriptions whole, which rules the comparison out as a test of what the words cost.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;pack: &lt;strong&gt;mukul975/Anthropic-Cybersecurity-Skills, commit 4c0b700&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;skills: &lt;strong&gt;817, counted off disk on every arm run&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;measured: &lt;strong&gt;56,622 tokens, 69.30 per skill&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;published: &lt;strong&gt;30 rounds, 80 runs, five arms&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;synthetic curve predicts: &lt;strong&gt;13.46 per skill at 817&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;extra frontmatter: &lt;strong&gt;not charged, +8 tokens on 338KB&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.236.&lt;/p&gt;</description>
      <pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Anthropic ships five skill plugins, not one, and its own ~100-token figure fits the one I could measure</title>
      <link>https://aieveryminute.com/anthropic-ships-five-skill-plugins-not-one/</link>
      <guid isPermaLink="true">https://aieveryminute.com/anthropic-ships-five-skill-plugins-not-one/</guid>
      <description>&lt;p&gt;Anthropic documents ~100 tokens per Skill for the metadata loaded at startup. Its own repository ships five plugins rather than one, and only one of them is large enough for this instrument to give a figure. example-skills, twelve skills with ordinary 288-character descriptions, measured 102 tokens per skill. The three single-skill plugins cannot be measured: two carry ranges 198 tokens wide and the third spans 897, from minus 578 to plus 319, which contains zero. A separate sweep then knocked out the story I had been about to tell about long descriptions: above 500 characters they are close to free. Which turns out not to mean what it sounds like, because a later measurement found the text stops reaching the model entirely past about 1,400 characters.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;pack: &lt;strong&gt;anthropics/skills, commit f379e5a&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;documented: &lt;strong&gt;~100 tokens per Skill&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;measurable plugin: &lt;strong&gt;102 per skill, 288-char median&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;no figure published: &lt;strong&gt;4 of 5, one range spans zero&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;description above 500 chars: &lt;strong&gt;0.015 tokens per character&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.234, description sweep on 2.1.235.&lt;/p&gt;</description>
      <pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>7 of 12 runs got the date right. Every miss that showed its working was arithmetic</title>
      <link>https://aieveryminute.com/7-of-12-runs-got-the-date-right/</link>
      <guid isPermaLink="true">https://aieveryminute.com/7-of-12-runs-got-the-date-right/</guid>
      <description>&lt;p&gt;Six free-tier chat models were each asked twice what date a project finishes after 120 working days from 3 March 2026. Seven of twelve runs landed on a defensible answer. Of the three misses that showed any working, none was a misreading of the question: each chose a correct method and then executed the arithmetic wrongly, including one model that used the same method twice and got two different dates. Four of the five wrong answers contain a statement that is false or impossible on its own terms; the fifth is one of the two that showed no working at all.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;correct: &lt;strong&gt;7 of 12&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;models right both times: &lt;strong&gt;3 of 6&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;runs that showed a setup: &lt;strong&gt;8 of 12, all correct&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;misses that showed working: &lt;strong&gt;3 of 5, all arithmetic&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;wrong answers refutable from their own text: &lt;strong&gt;4 of 5&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;ground truth: &lt;strong&gt;computed, rubric fixed before running&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;surface: &lt;strong&gt;duck.ai free tier, no account&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>A 19,700-star diagram skill drew once in four unattended runs. One file fixes it</title>
      <link>https://aieveryminute.com/a-diagram-skill-drew-once-in-four-unattended-runs/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-diagram-skill-drew-once-in-four-unattended-runs/</guid>
      <description>&lt;p&gt;A trending Claude Code skill for editorial diagrams, installed and measured on 2.1.233. What it costs to sit on disk unused turned out not to be measurable: twelve readings of the same pack span 70 to 967 tokens. Run unattended on an ordinary request it delivered a file in 1 of 4 rounds, spending 733,824 tokens across the three that produced nothing, because SKILL.md tells the agent to pause and ask about brand colours before the first diagram in a project. Dropping a one-line .diagram-design marker in the project root took it to 4 of 4. No cost multiplier is quoted, because the plain arm alone varied 6.7x and the skill's arm has one delivering round. The marker effect is established at p=0.018; the skill-versus-plain comparison is underpowered and is not claimed.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;pack: &lt;strong&gt;cathrynlavery/diagram-design, commit 09df49d&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;stars: &lt;strong&gt;19,728 on 2026-08-17&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;installed, never used: &lt;strong&gt;not measurable, 70 to 967&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;delivered a diagram: &lt;strong&gt;1 of 4 unattended&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;with the marker file: &lt;strong&gt;4 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;spent producing nothing: &lt;strong&gt;733,824 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;type references read: &lt;strong&gt;2 to 3, never 1&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.233, re-verified on 2.1.234.&lt;/p&gt;</description>
      <pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>&quot;A 5,000-token CLAUDE.md is a 5,000-token tax per turn.&quot; Half of that is true.</title>
      <link>https://aieveryminute.com/a-claude-md-is-a-tax-per-turn-half-of-that-is-true/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-claude-md-is-a-tax-per-turn-half-of-that-is-true/</guid>
      <description>&lt;p&gt;An 18KB CLAUDE.md adds 4,967 tokens to every turn of a session on Claude Code 2.1.233, and it never decays. But it costs $0.04966 and $0.04967 on turns one and two and $0.00248 on turns three and four, because the file stops being written to cache and starts being read from it. The context claim is true and the cost claim is true for about two turns.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;CLAUDE.md: &lt;strong&gt;18,000 bytes, 4,967 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;added to every turn: &lt;strong&gt;4,967, all 4 of 4 turns&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost, turns 1-2: &lt;strong&gt;$0.04966 then $0.04967&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost, turns 3-4: &lt;strong&gt;$0.00248 per turn&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;drop: &lt;strong&gt;20x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;on 2.1.232: &lt;strong&gt;4,969 tokens, 2 apart&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.233.&lt;/p&gt;</description>
      <pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>google/skills costs 9,020 tokens. Every session, before you use any of it.</title>
      <link>https://aieveryminute.com/google-skills-costs-9020-tokens-every-session/</link>
      <guid isPermaLink="true">https://aieveryminute.com/google-skills-costs-9020-tokens-every-session/</guid>
      <description>&lt;p&gt;Six trending skill packs, cloned and installed on Claude Code 2.1.233, measured against an empty floor, then re-measured after I found I had priced one of them wrong. 111 skills cost 9,020. The 25 skills Matt Pocock actually ships cost 852, not the 1,209 I first published for 35 files sitting in his repository. Per skill that is 34 to 96 tokens, and multiplying a published rate by a file count would have got two of the three badly wrong.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;clean floor: &lt;strong&gt;22,283 then 22,287, each round paired&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;google/skills, 111 skills: &lt;strong&gt;9,020 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;addyosmani/agent-skills, 24: &lt;strong&gt;2,302 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;mattpocock/skills, 25 shipped: &lt;strong&gt;852 tokens, corrected from 1,209&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per skill: &lt;strong&gt;34.1 to 95.9&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;my own model: &lt;strong&gt;8% low, 63% high, 64% high&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-18: &lt;strong&gt;diagram-design 70 to 967 on 2.1.234&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.233.&lt;/p&gt;</description>
      <pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>The docs say ~100 tokens a skill. I measured 34 to 96.</title>
      <link>https://aieveryminute.com/the-docs-say-100-tokens-a-skill-i-measured-34-to-96/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-docs-say-100-tokens-a-skill-i-measured-34-to-96/</guid>
      <description>&lt;p&gt;Anthropic documents ~100 tokens per Skill for the metadata loaded at startup. Measured across the three trending packs where a measurement is reliable, per-skill cost ran 34.1 to 95.9, all below the documented figure, over-predicting by 4% on one pack and 193% on another, and the size of the miss does not order by description length. Then I asked six model runs the same question: three repeated the documented number, one gave a different one, and two declined, including the model that had given a different one moments earlier.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;documented: &lt;strong&gt;~100 tokens per Skill&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;measured, 3 packs: &lt;strong&gt;34.1 to 95.9 per skill&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;worst over-prediction: &lt;strong&gt;193%, mattpocock/skills&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;closest: &lt;strong&gt;4%, addyosmani/agent-skills&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;source runs: &lt;strong&gt;56, two harnesses&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;model runs: &lt;strong&gt;6, four models, three vendors&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-18: &lt;strong&gt;one-skill pack 70 to 967 on 2.1.234&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.233.&lt;/p&gt;</description>
      <pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>400 commands cost 9,989 tokens. 400 agents cost 20,404.</title>
      <link>https://aieveryminute.com/400-commands-cost-10088-tokens-400-agents-cost-20503/</link>
      <guid isPermaLink="true">https://aieveryminute.com/400-commands-cost-10088-tokens-400-agents-cost-20503/</guid>
      <description>&lt;p&gt;One widely shared write-up prices a plugin at about 100 words of metadata each and tells you to keep four to six. Measured on 2.1.231, a plugin has no single price: a skill or a slash command costs about 40 tokens and collapses in bulk, while a subagent definition costs 51 and never does.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;re-verified on 2.1.232: &lt;strong&gt;reproduced, within one 198-token component&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;a slash command: &lt;strong&gt;40.0 tokens, then 5.6&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;a subagent definition: &lt;strong&gt;51 tokens, never less to 400&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;400 commands: &lt;strong&gt;9,989 tokens, or 10,187 when the component fires&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;400 agents: &lt;strong&gt;20,404 tokens, or 20,602&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.238: &lt;strong&gt;8 rounds, marginal rates reproduced&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;200 commands beside 40 skills: &lt;strong&gt;25.7 tokens each&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;200 agents beside 40 skills: &lt;strong&gt;39.0, unchanged&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.231.&lt;/p&gt;</description>
      <pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The same forty skills cost 1,558 tokens, or 152</title>
      <link>https://aieveryminute.com/a-skill-costs-39-tokens-or-3-9/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-skill-costs-39-tokens-or-3-9/</guid>
      <description>&lt;p&gt;A skill is not a fixed price. On a clean project the marginal cost falls from 39.0 tokens to 3.9 between 200 and 400 skills; on a configured machine it is 3.8 straight away. That is where this site measured 1.5 tokens a skill from, and why that figure never reproduced in isolation.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;clean project, below 200 skills: &lt;strong&gt;39.0 tokens each&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;clean project, past 400 skills: &lt;strong&gt;3.9 tokens each&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;40 skills, clean project: &lt;strong&gt;1,558 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;40 skills, config loaded: &lt;strong&gt;152 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;description, at 40 skills: &lt;strong&gt;0.276 per char, to 300 chars, English prose only&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;description, at 600 skills: &lt;strong&gt;300 chars costs no more than 30&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;body size, the control: &lt;strong&gt;no effect across 140x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.233: &lt;strong&gt;unchanged, 39.05 per skill at 200&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.231.&lt;/p&gt;</description>
      <pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>A 7.9MB node_modules cost 2 tokens, and .claudeignore does nothing</title>
      <link>https://aieveryminute.com/a-79mb-node-modules-cost-2-tokens/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-79mb-node-modules-cost-2-tokens/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.229. A lean project cost 22,401 tokens at startup in four runs out of four, identically. The same project carrying 7.9MB and 1,960 files of node_modules cost 22,403. Across 24 runs, including 12 that invited exploration, node_modules was read zero times. A .claudeignore excluding it did not stop a file inside it being read, 3 of 3, while the documented deny rule blocked it 3 of 3.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;lean project, startup: &lt;strong&gt;22,401 tokens, 4 of 4 identical&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;plus 7.9MB node_modules: &lt;strong&gt;22,403 tokens (+2)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;node_modules read: &lt;strong&gt;0 times in 24 runs&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;.claudeignore blocks a read: &lt;strong&gt;no, canary returned 3 of 3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;deny rule blocks a read: &lt;strong&gt;yes, 3 of 3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;.claudeignore in the docs: &lt;strong&gt;0 of 193 pages&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.229.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The 150-rule limit for CLAUDE.md measures something a CLAUDE.md is not</title>
      <link>https://aieveryminute.com/claude-md-held-at-500-rules/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-md-held-at-500-rules/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.229 across 35 runs, no exclusions. A rule at the top of the file and a rule at the very bottom were both obeyed in 15 of 15 function definitions at 2, 10, 50, 150, 300 and 500 rules. The negative control scored 0 of 15 on both. This does not refute the benchmark behind the 150 figure, which measures a different thing. What 500 rules did cost was 23,427 tokens of context.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;rule counts tested: &lt;strong&gt;2, 10, 50, 150, 300, 500, plus a control&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;top rule: &lt;strong&gt;15 of 15 at every count&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;bottom rule: &lt;strong&gt;15 of 15 at every count&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;negative control: &lt;strong&gt;0 of 15 on both rules&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;what 500 rules cost: &lt;strong&gt;23,427 tokens of context&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;functions written: &lt;strong&gt;3 of 3 in 35 of 35 runs&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.229.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Fanning out was about 1.7x slower on work built to favour it</title>
      <link>https://aieveryminute.com/fanning-out-was-slower-on-work-built-to-favour-it/</link>
      <guid isPermaLink="true">https://aieveryminute.com/fanning-out-was-slower-on-work-built-to-favour-it/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.229 across 24 runs with no exclusions. Eight agents took 29.6s against 16.8s inline, a 12.8-second gap; four took 20.0s against 11.7s. Tokens ran 1.82x and 2.17x. Every arm is separated. The delegation control confirms the parent made zero file operations in all twelve fan-out runs, which took a field called parent_tool_use_id to establish.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;eight agents: &lt;strong&gt;29.6s against 16.8s inline&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;four agents: &lt;strong&gt;20.0s against 11.7s inline&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;wall clock ratio: &lt;strong&gt;1.76x and 1.72x, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;tokens: &lt;strong&gt;1.82x and 2.17x, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;parent file operations: &lt;strong&gt;0 in all 12 fan-out runs&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;markers found: &lt;strong&gt;24 of 24&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.229.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Halving the output saved 6.8% of the bill</title>
      <link>https://aieveryminute.com/halving-the-output-saved-6-percent/</link>
      <guid isPermaLink="true">https://aieveryminute.com/halving-the-output-saved-6-percent/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.229 across 30 runs in three batches, no exclusions. Output is 1.45% of billed tokens and 10.2% of cost, seven times its token weight, because the input side is mostly cache reads at a tenth of the output rate. A terseness instruction halved the output and saved 6.8%. Every terse run cost less than every default run.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;reply length: &lt;strong&gt;4,733 chars to 1,969&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;output tokens: &lt;strong&gt;1,821 to 842 median, a 54% cut&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;what it saved: &lt;strong&gt;$0.4489 to $0.4184, 6.8%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;output share of tokens: &lt;strong&gt;1.45%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;output share of cost: &lt;strong&gt;10.2%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;arms separated: &lt;strong&gt;on output and on cost&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;markers echoed: &lt;strong&gt;30 of 30, all three turns&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.229.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Forcing the cache expiry everyone warns about made the session 7.6% cheaper</title>
      <link>https://aieveryminute.com/the-five-minute-cache-expiry-did-not-happen/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-five-minute-cache-expiry-did-not-happen/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.229 across 24 runs with no exclusions. After an eight-minute break the next turn cost $0.017 on the default cache and $0.118 with the five-minute TTL forced on, 6.8x. Summed over all three turns the same forced arm cost $0.370 against $0.400, and every forced run beat every default run. It wrote 50% more cache tokens and still cost less. A separate bracket found the default cache alive at 55 minutes and gone by 70.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;turn after an 8-minute break: &lt;strong&gt;$0.017 default, $0.118 forced 5m&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;whole 3-turn session: &lt;strong&gt;$0.400 default, $0.370 forced 5m&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;session arms: &lt;strong&gt;separated, 5 of 5 each way&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cache written, forced arm: &lt;strong&gt;52,731 tokens against 35,139&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;write tier, default: &lt;strong&gt;1-hour tier, 0 to the 5-minute tier&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;kept at 55 min, lost at 70: &lt;strong&gt;3 of 3 each way&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;markers echoed: &lt;strong&gt;24 of 24 across both runs&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.229.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The third step cost less than the first, in the session that was never cleared</title>
      <link>https://aieveryminute.com/the-long-session-got-cheaper-per-step/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-long-session-got-cheaper-per-step/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.228, ten rounds per arm, on three steps where each builds on the last. Keeping one session cost 274,436 tokens against 344,408 for clearing between every step, with the fresh arm dearer in 10 of 10 paired rounds. Both lose to asking once: the worst single-prompt run beat the best run of either multi-prompt arm on every measure. All 30 runs passed the hidden suite.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;rounds: &lt;strong&gt;10 per arm, 30 runs on 2.1.228&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;one prompt: &lt;strong&gt;103,828 tokens, $0.1697&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;one session, three prompts: &lt;strong&gt;274,436 tokens, 2.64x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;fresh session each step: &lt;strong&gt;344,408 tokens, 3.32x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;fresh dearer: &lt;strong&gt;10 of 10 paired, sign p=0.0010&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;resumed step 3 vs its own step 1: &lt;strong&gt;-25,312 tokens, 10 of 10&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;success: &lt;strong&gt;42 of 42 passed, both versions&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified: &lt;strong&gt;2.1.229, every claim held&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.228.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>A deny rule on .env leaked nothing in 20 runs, and 14 of 24 got through another way</title>
      <link>https://aieveryminute.com/what-a-read-deny-rule-on-env-actually-stops/</link>
      <guid isPermaLink="true">https://aieveryminute.com/what-a-read-deny-rule-on-env-actually-stops/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.229 across 88 runs with a fabricated credential as the canary. With permissions.deny Read(./.env) in place, the Read tool, cat, head, sed and grep leaked 0 times in 20. A python one-liner, a node one-liner and dd leaked 14 times in 24. Every result matches the documented boundary; what the documentation does not convey is that the uncovered side has no enforcement, only judgement.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;rule tested: &lt;strong&gt;deny: Read(./.env)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Read tool, cat, head, sed, grep: &lt;strong&gt;0 of 20 leaked, 18 blocked at the layer&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;python, node, dd: &lt;strong&gt;14 of 24 leaked&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;control, no rule at all: &lt;strong&gt;20 of 20 and 20 of 24 leaked&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;declined with no rule present: &lt;strong&gt;4 runs&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;matches the documentation: &lt;strong&gt;yes, boundary and mitigation&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.229.&lt;/p&gt;</description>
      <pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Compaction kept all 64 planted values, across 24 compactions</title>
      <link>https://aieveryminute.com/compaction-kept-all-64-planted-values/</link>
      <guid isPermaLink="true">https://aieveryminute.com/compaction-kept-all-64-planted-values/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.228. Eight unguessable values were planted at spaced turns, the session was driven past the compaction threshold, and every value was asked back with files off-limits. 64 of 64 survived across 24 compactions and two bulk types. This tests recall of discrete stated values, which is not the same thing as preserving nuance, and the post says so.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;values recalled: &lt;strong&gt;64 of 64&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;compactions survived: &lt;strong&gt;24&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;dense arm: &lt;strong&gt;32 of 32, 4 compactions per run&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;sparse arm: &lt;strong&gt;32 of 32, 2 compactions per run&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;dense bulk compressibility: &lt;strong&gt;25.03% vs 0.79% under gzip -9, 31.7x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;positive control: &lt;strong&gt;8 of 8 without compaction&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;compaction window: &lt;strong&gt;forced to 100k&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.228.&lt;/p&gt;</description>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Planning made the execution cheaper, and cost more than the job it was planning</title>
      <link>https://aieveryminute.com/plan-mode-cost-1-95x-more-on-a-specified-task/</link>
      <guid isPermaLink="true">https://aieveryminute.com/plan-mode-cost-1-95x-more-on-a-specified-task/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.228. Plan-then-execute and straight auto-accept were run four times each on the same bug fix with an objective pass/fail. Both passed 4 of 4. Planning genuinely made the doing cheaper, $0.1685 against $0.2062, but the plan call cost $0.2301 on its own, six times the saving it bought. The workflow cost 1.69x the tokens and 1.95x the dollars.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;auto-accept, one call: &lt;strong&gt;$0.2062 median&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;execute call, plan in hand: &lt;strong&gt;$0.1685, cheaper 4 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;plan call alone: &lt;strong&gt;$0.2301, dearer 4 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;whole workflow: &lt;strong&gt;1.95x dollars, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;turns: &lt;strong&gt;9 against 15&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;success: &lt;strong&gt;4 of 4 in both arms&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;known limit: &lt;strong&gt;bash denied outside plan mode&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-12: &lt;strong&gt;withdrew the &amp;quot;mechanism is backwards&amp;quot; claim and the title asserting it&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected again, same day: &lt;strong&gt;withdrew &amp;quot;upper bounds&amp;quot;; the equal-permission re-run is larger&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.228.&lt;/p&gt;</description>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Planning helped least on exactly the work its advice recommends it for</title>
      <link>https://aieveryminute.com/planning-helped-least-on-open-ended-work/</link>
      <guid isPermaLink="true">https://aieveryminute.com/planning-helped-least-on-open-ended-work/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.228 over seven paired rounds, with an open-ended prompt and a hidden rubric applied afterwards. Plan-then-execute cost 2.29x the tokens, 2.27x the dollars, 2.14x the turns and 2.17x the tool calls, with no overlap on any of them. Every run in both arms scored full marks on the rubric, which is a real limit on what the quality comparison can say, and the plan arm paid for a broken exit tool, which makes the ratios upper bounds.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;paired rounds: &lt;strong&gt;7, bash control 22/22&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;auto-accept: &lt;strong&gt;$0.2910, 146,179 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;plan then execute: &lt;strong&gt;$0.6600, 334,425 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;dollar ratio: &lt;strong&gt;2.27x, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;tool calls: &lt;strong&gt;6 against 13, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;rubric: &lt;strong&gt;11 of 11 in all 15 runs&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;execution saving: &lt;strong&gt;29% specified, 3% open-ended&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.228.&lt;/p&gt;</description>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The plan cost 1.47x the whole job, and made the job 29% cheaper</title>
      <link>https://aieveryminute.com/the-plan-cost-more-than-the-job-it-planned/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-plan-cost-more-than-the-job-it-planned/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.228, eight runs per arm, with --allowedTools Bash on every call in both arms and a full tool-call record behind every turn count. Plan-then-execute cost 2.01x the tokens and 2.18x the dollars of straight auto-accept, with no overlap. Split by call: the execute call is cheaper than doing it in one shot in 8 of 8, and the plan call alone is dearer than the entire one-shot run in 8 of 8.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;auto-accept, whole job: &lt;strong&gt;$0.1493, 114,268 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;plan call alone: &lt;strong&gt;$0.2192, dearer 8 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;execute call, plan in hand: &lt;strong&gt;$0.1057, cheaper 8 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;whole workflow: &lt;strong&gt;2.18x dollars, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;tool calls: &lt;strong&gt;5 against 9.5, no overlap&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;success: &lt;strong&gt;8 of 8 in both arms&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.228.&lt;/p&gt;</description>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The same fan-out costs 53% more, about a third of the time</title>
      <link>https://aieveryminute.com/the-same-fan-out-costs-53-percent-more-a-third-of-the-time/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-same-fan-out-costs-53-percent-more-a-third-of-the-time/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.228 across 26 runs. An eight-agent fan-out has two execution modes separated by num_turns: nine turns costs 207,102 tokens, one turn costs 317,786, for the same eight files. It happened in 3 of 10 runs, which means a single measured figure for per-agent cost is not one number.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;cheap mode, 8 agents: &lt;strong&gt;207,102 tokens (turns=9)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;expensive mode, 8 agents: &lt;strong&gt;317,786 tokens (turns=1)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;difference: &lt;strong&gt;1.534x, +53.4%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;frequency: &lt;strong&gt;3 of 10 runs&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;overlap between modes: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per agent, cheap mode: &lt;strong&gt;20,293 to 20,325 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per agent, expensive mode: &lt;strong&gt;36,105 to 36,137 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-22: &lt;strong&gt;four phantom medians replaced with observed ranges&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.228.&lt;/p&gt;</description>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Each parallel subagent costs 20,398 tokens, or 92,304 with your config loaded</title>
      <link>https://aieveryminute.com/each-parallel-subagent-costs-20398-tokens/</link>
      <guid isPermaLink="true">https://aieveryminute.com/each-parallel-subagent-costs-20398-tokens/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.227 across 44 runs, of which 4 sit behind the configured figure. Cost per parallel subagent is flat at about 20,400 tokens on a minimal config, so eight agents cost 3.2x one rather than 8x. On a machine carrying 37,808 tokens of user-level configuration, the per-agent cost rises to 92,304, which is about twice that configuration rather than most of it. The 75,466 figure this post originally used was the same quantity counted twice; see the correction. Re-measured on 2.1.231 the same slope is 20,690 and 103,397, about twice the configuration again.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;re-verified on 2.1.232: &lt;strong&gt;unchanged at matched turn count&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per parallel subagent: &lt;strong&gt;20,398 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per subagent, configured machine: &lt;strong&gt;92,304 tokens (4 runs)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;8 subagents vs 1: &lt;strong&gt;3.20x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;8 subagents vs inline: &lt;strong&gt;4.44x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;same work inline: &lt;strong&gt;299 tokens each&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-12: &lt;strong&gt;the 288,040 outlier was a second execution mode, 3 of 10 on 2.1.228&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-13: &lt;strong&gt;the config figure was double-counted; 37,808 not 75,466&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.227.&lt;/p&gt;</description>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The env var sold as a 90% saving cost 8% more</title>
      <link>https://aieveryminute.com/the-fork-subagent-flag-cost-8-percent-more/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-fork-subagent-flag-cost-8-percent-more/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.227 across 28 runs. The flag is real and it engages in print mode, but on both a cold and a genuinely warm parent it increased cost rather than reducing it, because each child inherits the parent conversation instead of skipping the prefix. Every flag-on run used more context than every flag-off run; cache creation barely moved and 97% of the increase arrived as cache reads.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;cold session cost, 4 agents: &lt;strong&gt;+8.1% with the flag on&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;warm session cost, 4 agents: &lt;strong&gt;+15.6% with the flag on&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cold total context: &lt;strong&gt;+38.2%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;warm total context: &lt;strong&gt;+65.6%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cache creation change: &lt;strong&gt;+1.7% to +5.4%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per agent, flag off: &lt;strong&gt;92,525 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per agent, flag on: &lt;strong&gt;135,232 tokens&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.227.&lt;/p&gt;</description>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>A CLAUDE.md rule held for 270 turns and 136,000 tokens</title>
      <link>https://aieveryminute.com/a-claude-md-rule-held-for-270-turns-and-136000-tokens/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-claude-md-rule-held-for-270-turns-and-136000-tokens/</guid>
      <description>&lt;p&gt;Context rot is described everywhere and measured almost nowhere. A CLAUDE.md convention that pushes against the language default held on both models at every context size reached, and the function names were parsed rather than pattern-matched so a single ambiguous word could not be scored as a failure.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;scorable turns: &lt;strong&gt;270&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;violations: &lt;strong&gt;0 of 270&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Haiku 4.5 context reached: &lt;strong&gt;136,392 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Opus 5 context reached: &lt;strong&gt;100,832 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;ambiguous names excluded: &lt;strong&gt;11&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;turns excluded, rate limit: &lt;strong&gt;74&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-10, isolated: &lt;strong&gt;80 of 80, to 41,072 tokens&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>A required field was absent. It answered null 24 times out of 24</title>
      <link>https://aieveryminute.com/a-required-field-was-absent-it-answered-null-24-times/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-required-field-was-absent-it-answered-null-24-times/</guid>
      <description>&lt;p&gt;A schema with seven deliberate traps, extracted by plain prompting rather than constrained decoding. Shape and truth were scored separately so the gap the guides warn about would be visible. It did not appear once.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;extractions: &lt;strong&gt;24&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;schema-valid: &lt;strong&gt;24 of 24&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;every field correct: &lt;strong&gt;24 of 24&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;absent field invented: &lt;strong&gt;0 of 24&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;decoy value returned: &lt;strong&gt;0 of 24&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;scorer control-tested: &lt;strong&gt;8 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-10, isolated: &lt;strong&gt;24 of 24, unchanged&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>AI tests killed 35 of 36 planted bugs. Four suites never ran at all</title>
      <link>https://aieveryminute.com/ai-tests-killed-35-of-36-planted-bugs-four-suites-never-ran/</link>
      <guid isPermaLink="true">https://aieveryminute.com/ai-tests-killed-35-of-36-planted-bugs-four-suites-never-ran/</guid>
      <description>&lt;p&gt;Mutation testing on generated pytest suites, with each mutant verified to be catchable before it counted. Opus produced ten usable suites out of ten and killed every mutant. Re-verified under isolation the caught-bug result held and improved to 38 of 38; the claim that Haiku failed on the same two functions every time did not.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;suites generated: &lt;strong&gt;20&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;mutants killed: &lt;strong&gt;35 of 36&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Opus 5 usable suites: &lt;strong&gt;10 of 10&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Haiku 4.5 usable suites: &lt;strong&gt;6 of 10&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;test cases per suite, Opus: &lt;strong&gt;70 to 875&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;test cases per suite, Haiku: &lt;strong&gt;8 to 13&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-21: &lt;strong&gt;phantom medians 196 and 11 withdrawn&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-10, isolated: &lt;strong&gt;38 of 38 mutants killed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-10: &lt;strong&gt;per-subject failure claim withdrawn&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>Haiku got XXE wrong every time. Opus used defusedxml every time</title>
      <link>https://aieveryminute.com/haiku-got-xxe-wrong-every-time-opus-used-defusedxml/</link>
      <guid isPermaLink="true">https://aieveryminute.com/haiku-got-xxe-wrong-every-time-opus-used-defusedxml/</guid>
      <description>&lt;p&gt;The circulating figure is that 44% of AI code generation tasks introduce a vulnerability, from corpora nobody can inspect. Here are six classes, both prompts and every generated file published. SQL injection never appeared once. XML external entities appeared in three runs out of three.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;files generated: &lt;strong&gt;36&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;flagged by the scanner: &lt;strong&gt;4 of 36&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;XXE, Haiku 4.5: &lt;strong&gt;3 of 3 vulnerable&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;XXE, Opus 5: &lt;strong&gt;0 of 3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;SQL injection found: &lt;strong&gt;0 of 6&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;scanner control-tested: &lt;strong&gt;6 of 6 classes&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>CLAUDE.md stopped Opus adding docstrings 8 of 8. The Haiku half did not hold</title>
      <link>https://aieveryminute.com/only-opus-added-docstrings-and-claude-md-stopped-it-8-of-8/</link>
      <guid isPermaLink="true">https://aieveryminute.com/only-opus-added-docstrings-and-claude-md-stopped-it-8-of-8/</guid>
      <description>&lt;p&gt;The advice everywhere is to put a &amp;quot;never add comments&amp;quot; rule in CLAUDE.md because the model ignores you otherwise. The original Haiku figures here did not reproduce and have been withdrawn; a re-run the same day produced the opposite result. The Opus finding, that the rule removed a docstring from every file, is unaffected.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;generations: &lt;strong&gt;86&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;inline comments seen: &lt;strong&gt;withdrawn, did not reproduce&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Opus 5 file writes, no rule: &lt;strong&gt;8 of 8 had a docstring&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Opus 5 file writes, with rule: &lt;strong&gt;0 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Haiku 4.5, either way: &lt;strong&gt;withdrawn, did not reproduce&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;corrected 2026-08-10: &lt;strong&gt;Haiku control re-ran as 8 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;detector positive control: &lt;strong&gt;10 comments, 1 docstring&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>The loud prompt injection failed 30 times. The quiet one worked 6 of 6</title>
      <link>https://aieveryminute.com/the-loud-prompt-injection-failed-30-times-the-quiet-one-worked/</link>
      <guid isPermaLink="true">https://aieveryminute.com/the-loud-prompt-injection-failed-30-times-the-quiet-one-worked/</guid>
      <description>&lt;p&gt;A benign marker payload, five placements, two models, and an arrival control proving the file was read on all 42 runs. The obvious injection was caught in all 30. Reworded as an ordinary editorial note, the same instruction got through the cheaper model 6 times out of 6, silently.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;obvious payload runs: &lt;strong&gt;30&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;obvious payload obeyed: &lt;strong&gt;0 of 30&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;quiet payload, Haiku 4.5: &lt;strong&gt;6 of 6 followed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;quiet payload, Opus 5: &lt;strong&gt;0 of 6 followed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;arrival control failures: &lt;strong&gt;0 of 42&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;scorer bugs caught: &lt;strong&gt;2&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-10, isolated: &lt;strong&gt;unchanged, 0 of 20 obeyed&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>&quot;Think step by step&quot; changed nothing in 96 runs</title>
      <link>https://aieveryminute.com/think-step-by-step-changed-nothing-in-96-runs/</link>
      <guid isPermaLink="true">https://aieveryminute.com/think-step-by-step-changed-nothing-in-96-runs/</guid>
      <description>&lt;p&gt;Three prompt styles, two models, four questions with ground truth computed by the script that asked them. Adding &amp;quot;think step by step&amp;quot; never once turned a wrong answer right, because the models already reason without being told to. Forbidding the working is what broke one of them.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;correct overall: &lt;strong&gt;92 of 96&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cells CoT improved: &lt;strong&gt;0 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;CoT output token cost: &lt;strong&gt;1.5x to 1.7x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;opus 5, working forbidden: &lt;strong&gt;0 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;opus 5, free to reason: &lt;strong&gt;4 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-10, isolated: &lt;strong&gt;direction holds, 0 of 4 became 1 of 4&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>With the control arm controlled, Haiku commented all 16 files</title>
      <link>https://aieveryminute.com/with-the-control-arm-controlled-haiku-commented-all-16-files/</link>
      <guid isPermaLink="true">https://aieveryminute.com/with-the-control-arm-controlled-haiku-commented-all-16-files/</guid>
      <description>&lt;p&gt;The control arm was running under a machine-level prohibition, so neither arm was rule-free. Isolating it needed a flag that blocks user memory without breaking tools, verified by hook rather than assumed. The corrected result reproduces across two rounds and says the opposite of the original.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;files, corrected trial: &lt;strong&gt;32&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;no rule, files clean: &lt;strong&gt;0 of 16&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;rule, files clean: &lt;strong&gt;16 of 16&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;inline comments, no rule: &lt;strong&gt;30&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;median size, no rule vs rule: &lt;strong&gt;1,592 vs 285 bytes&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;isolation verified: &lt;strong&gt;user=0, project=1&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>720 of 720 table cells read correctly. My scorer was the thing that kept failing</title>
      <link>https://aieveryminute.com/720-of-720-table-cells-read-correctly/</link>
      <guid isPermaLink="true">https://aieveryminute.com/720-of-720-table-cells-read-correctly/</guid>
      <description>&lt;p&gt;Every value in the test tables was unique, so a misplaced number could be told apart from a misread one. The model got all 720 cells right. The scorer got it wrong three times, always for the same reason, and twice it would have produced a confident and completely false headline.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;cells checked: &lt;strong&gt;720&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;read correctly: &lt;strong&gt;720&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;misplaced cells: &lt;strong&gt;0&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;table sizes: &lt;strong&gt;5x4, 10x6, 20x8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;scorer bugs caught: &lt;strong&gt;3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;currency and negatives: &lt;strong&gt;read correctly&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>A 2MB screenshot costs the same as a 623-byte one: 3,135 tokens</title>
      <link>https://aieveryminute.com/a-2mb-screenshot-costs-the-same-as-623-bytes/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-2mb-screenshot-costs-the-same-as-623-bytes/</guid>
      <description>&lt;p&gt;Measured the context cost of reading images at eleven sizes, twice each. A 3,366x range in file size produced a 5-token difference. Above 2000px the cost stops growing entirely, and a retina screenshot costs 1.69x a normal one for exactly the same picture.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;1568x1568 image: &lt;strong&gt;3,135 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;same image at 2MB: &lt;strong&gt;3,140 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;client-side resize cap: &lt;strong&gt;2000 px&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;retina vs logical: &lt;strong&gt;1.69x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;3072x3072 vs 2048x2048: &lt;strong&gt;no extra cost&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>A model hashed passwords with raw SHA-256 in 8 of 9 runs. Two extra words fixed it</title>
      <link>https://aieveryminute.com/a-model-hashed-passwords-with-raw-sha256-in-8-of-9-runs/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-model-hashed-passwords-with-raw-sha256-in-8-of-9-runs/</guid>
      <description>&lt;p&gt;The widely quoted figure is that 45% of AI-generated code contains vulnerabilities. I tested two textbook cases across three models with an objective checker. One failed badly and consistently, one classic vulnerability never appeared at all, and the fix was two words of prompt.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;password, neutral prompt: &lt;strong&gt;8 of 9 insecure&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;same model, &amp;quot;make it secure&amp;quot;: &lt;strong&gt;2 of 2 secure&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;SQL injection found: &lt;strong&gt;0 of 12&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;models tested: &lt;strong&gt;3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;checker control-tested: &lt;strong&gt;7 of 7&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;insecure pattern: &lt;strong&gt;salt + single SHA-256&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>A skill costs 1.5 tokens, an MCP tool 15, and a subagent 1.72x the whole task</title>
      <link>https://aieveryminute.com/a-skill-costs-1-5-tokens-an-mcp-tool-costs-15/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-skill-costs-1-5-tokens-an-mcp-tool-costs-15/</guid>
      <description>&lt;p&gt;Skills, MCP servers, subagents and CLAUDE.md do overlapping jobs at wildly different prices: 1.5 tokens, 15 tokens, 1.72x the entire task, and 0.26 tokens per byte on every single round trip. The right choice is usually obvious once you can see the numbers.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;one skill: &lt;strong&gt;~1.5 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;one MCP tool, deferred: &lt;strong&gt;~15 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;one MCP tool, loaded: &lt;strong&gt;~304 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;subagent delegation: &lt;strong&gt;1.72x total&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;CLAUDE.md: &lt;strong&gt;0.26 tokens/byte, always&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>The same 8KB file is 3,519 tokens on Opus and 2,586 on Haiku</title>
      <link>https://aieveryminute.com/a-token-is-not-a-token-across-models/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-token-is-not-a-token-across-models/</guid>
      <description>&lt;p&gt;Measured the token cost of byte-identical files across Opus 5, Sonnet 5 and Haiku 4.5, and the startup context floor of each. Opus and Sonnet agree to within 15 tokens on every input. Haiku does not agree with either, and the gap depends on what the text is.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;8KB prose on opus 5: &lt;strong&gt;3,519 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;same file on haiku 4.5: &lt;strong&gt;2,586 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;haiku vs opus range: &lt;strong&gt;0.66 to 0.90x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;opus vs sonnet agreement: &lt;strong&gt;within 15 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;context floor spread: &lt;strong&gt;24,070 tokens&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-cost</category>
    </item>
    <item>
      <title>I gave two AI detectors text from 1859 and 1996. Both called it human, but the newer one scored 23% AI</title>
      <link>https://aieveryminute.com/ai-detectors-on-text-from-1859-and-1996/</link>
      <guid isPermaLink="true">https://aieveryminute.com/ai-detectors-on-text-from-1859-and-1996/</guid>
      <description>&lt;p&gt;A hands-on trial of free AI detectors using text that cannot be disputed: an 1859 book, a 1996 internet standard, and two essays generated on the spot. Every verdict is shown. The detectors were right, and the margins say something the pass/fail does not.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;texts tested: &lt;strong&gt;4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;GPTZero verdicts correct: &lt;strong&gt;4 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Darwin 1859: &lt;strong&gt;100% human&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;RFC 1958, 1996: &lt;strong&gt;77% human / 23% AI&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;AI essays: &lt;strong&gt;100% AI, both&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;detectors tried: &lt;strong&gt;GPTZero, QuillBot&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified 2026-08-09: &lt;strong&gt;model label matters&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>Claude Code's auto-compaction fails with `too_few_groups` when one turn fills your context</title>
      <link>https://aieveryminute.com/auto-compaction-fails-with-too-few-groups/</link>
      <guid isPermaLink="true">https://aieveryminute.com/auto-compaction-fails-with-too-few-groups/</guid>
      <description>&lt;p&gt;Measured when auto-compaction actually fires and whether it works. It reports a status event carrying compact_result and an undocumented compact_error. Filling the context in one turn produces failed / too_few_groups, reproducibly, which is precisely the case people hit.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;single turn, 122,575 tokens: &lt;strong&gt;failed / too_few_groups&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;multi-turn, 115,471 tokens: &lt;strong&gt;success&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;--autocompact range: &lt;strong&gt;auto or 100k–1M only&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;values that disable it: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;visible in json output: &lt;strong&gt;no&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>A detector called an 1859 book AI-generated while its own numbers said 85% human</title>
      <link>https://aieveryminute.com/detector-said-ai-generated-while-its-own-breakdown-said-85-percent-human/</link>
      <guid isPermaLink="true">https://aieveryminute.com/detector-said-ai-generated-while-its-own-breakdown-said-85-percent-human/</guid>
      <description>&lt;p&gt;A hands-on trial of GPTinf, a free unlimited no-signup AI detector, using a public domain passage from 1859. The tool contradicted itself three times out of three, and the number most people would read is the one that moved.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;text tested: &lt;strong&gt;Darwin, 1859&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;verdict sentence shown: &lt;strong&gt;&amp;quot;seems to be AI generated&amp;quot;&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;its own breakdown: &lt;strong&gt;0% AI, 85% human&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;contradiction observed: &lt;strong&gt;3 of 3 runs&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;headline on identical text: &lt;strong&gt;18% then 0%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;punctuation-only edit: &lt;strong&gt;human 85% to 65%&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>Eight models, one bug, three rounds: the 32B coder passed every time and the 72B failed every time</title>
      <link>https://aieveryminute.com/eight-models-one-bug-the-32b-beat-the-72b/</link>
      <guid isPermaLink="true">https://aieveryminute.com/eight-models-one-bug-the-32b-beat-the-72b/</guid>
      <description>&lt;p&gt;A hands-on trial rather than a benchmark: one small JavaScript bug with a trap in it, eight models, three rounds each, every answer executed against the real test suite. The results are not ordered by model size, and the code the models wrote shows exactly why.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;models tried: &lt;strong&gt;8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;rounds each: &lt;strong&gt;3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Qwen2.5-Coder-32B: &lt;strong&gt;3/3 passed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Qwen2.5-72B: &lt;strong&gt;0/3 passed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;DeepSeek V3: &lt;strong&gt;3/3 passed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Llama 3.1 8B: &lt;strong&gt;0/3 passed&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>Eight tokenizers agree exactly on English. On Hindi they differ by 3.3x</title>
      <link>https://aieveryminute.com/eight-tokenizers-agree-on-english-and-nothing-else/</link>
      <guid isPermaLink="true">https://aieveryminute.com/eight-tokenizers-agree-on-english-and-nothing-else/</guid>
      <description>&lt;p&gt;Measured one paragraph and its translations into ten languages across eleven tokenizers, including three Claude models measured empirically. English is unanimous. Everything else is not, and for non-Latin scripts the spread is large enough to change which model is cheaper.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;english agreement: &lt;strong&gt;8 of 8 exact&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;hindi spread: &lt;strong&gt;3.27x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;russian spread: &lt;strong&gt;3.70x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;spanish, gpt-4o vs opus 5: &lt;strong&gt;103 vs 201&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;claude latin-script gap: &lt;strong&gt;23 to 36%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;identical tokenizers found: &lt;strong&gt;Phi-4 = OLMo-2 = GPT-4&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-cost</category>
    </item>
    <item>
      <title>Finding one fact in 43,000 words: 10 of 10. Adding three of them up: 8 of 10</title>
      <link>https://aieveryminute.com/finding-one-fact-in-43000-words-vs-adding-three-up/</link>
      <guid isPermaLink="true">https://aieveryminute.com/finding-one-fact-in-43000-words-vs-adding-three-up/</guid>
      <description>&lt;p&gt;A needle-in-a-haystack test at 43,000 words found no position bias whatsoever: the fact was retrieved from 0%, 25%, 50%, 75% and 100% depth every time. A harder version requiring three buried facts to be added together failed twice in ten runs, and both failures were arithmetic, not retrieval.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;document length: &lt;strong&gt;43,000 words&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;single fact, all depths: &lt;strong&gt;10 of 10&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;three facts combined: &lt;strong&gt;8 of 10&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;decoy codes in document: &lt;strong&gt;12&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;depths tested: &lt;strong&gt;0, 25, 50, 75, 100%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;failure type: &lt;strong&gt;arithmetic, not retrieval&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>A free AI detector switched to an older model when my scans ran out, then called an 1859 book 100% AI</title>
      <link>https://aieveryminute.com/gptzero-swapped-models-when-my-free-scans-ran-out/</link>
      <guid isPermaLink="true">https://aieveryminute.com/gptzero-swapped-models-when-my-free-scans-ran-out/</guid>
      <description>&lt;p&gt;A hands-on trial that nearly produced a spectacular false finding. GPTZero classified an 1859 public domain passage as 100% AI-generated, with high confidence. The text had not changed. The model that judged it had.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;text tested: &lt;strong&gt;Darwin, 1859&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;verdict on Model 4.8b: &lt;strong&gt;100% human&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;verdict after quota: &lt;strong&gt;100% AI&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;model after quota: &lt;strong&gt;3.3b / 2025-03-13-base&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;text changed between runs: &lt;strong&gt;not at all&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;warning shown about the swap: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>I tried to make a free image model misspell a word. It got all six right</title>
      <link>https://aieveryminute.com/i-tried-to-make-a-free-image-model-misspell-a-word/</link>
      <guid isPermaLink="true">https://aieveryminute.com/i-tried-to-make-a-free-image-model-misspell-a-word/</guid>
      <description>&lt;p&gt;Text in AI images is supposed to be the thing that still breaks. I gave FLUX.1-schnell six words to render, from OPEN up to a rare twelve-letter genus, at a fixed seed on a free public Space. All six spelled correctly.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;model: &lt;strong&gt;FLUX.1-schnell&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;words attempted: &lt;strong&gt;6&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;spelled correctly: &lt;strong&gt;6&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;hardest word: &lt;strong&gt;ZEPHYRANTHES&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;seed: &lt;strong&gt;12345&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost: &lt;strong&gt;free, no account&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>It gave the same wrong answer 8 times out of 8. Consistency is not accuracy</title>
      <link>https://aieveryminute.com/it-gave-the-same-wrong-answer-8-times-out-of-8/</link>
      <guid isPermaLink="true">https://aieveryminute.com/it-gave-the-same-wrong-answer-8-times-out-of-8/</guid>
      <description>&lt;p&gt;The circulating concern is that models give different answers to the same question. Across 64 runs the more useful finding was the opposite: the most stable answers included some of the most reliably wrong ones, and asking twice tells you nothing about correctness.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;correct overall: &lt;strong&gt;41 of 64&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;questions that varied: &lt;strong&gt;4 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;letter count: &lt;strong&gt;0 of 8 correct, 1 answer&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;9.11 vs 9.9: &lt;strong&gt;2 of 8 correct&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;ground truth: &lt;strong&gt;computed, not asserted&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>Models hit an exact word count once in 31 tries. Sentences: 17 out of 17</title>
      <link>https://aieveryminute.com/models-hit-an-exact-word-count-once-in-31-tries/</link>
      <guid isPermaLink="true">https://aieveryminute.com/models-hit-an-exact-word-count-once-in-31-tries/</guid>
      <description>&lt;p&gt;A measured test of the most-repeated prompting workaround. Word counts came in anywhere from 28% short to 52% long. Sentence and paragraph counts were hit exactly in all 17 runs, across every model tested.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;exact word counts: &lt;strong&gt;1 of 31&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;exact sentence counts: &lt;strong&gt;9 of 9&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;exact paragraph counts: &lt;strong&gt;8 of 8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;worst word miss: &lt;strong&gt;+52%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;models tested: &lt;strong&gt;4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;counter control-tested: &lt;strong&gt;7 of 7&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>Only 6 of 30 AI citations were real, and 11 of the fakes had DOIs that resolve</title>
      <link>https://aieveryminute.com/only-6-of-30-ai-citations-were-real/</link>
      <guid isPermaLink="true">https://aieveryminute.com/only-6-of-30-ai-citations-were-real/</guid>
      <description>&lt;p&gt;Citation fabrication measured rather than described: 30 citations from three open models, each DOI resolved against Crossref and DataCite and its title compared to the claimed one. Verifying that a DOI merely exists would have passed 11 fabrications.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;citations checked: &lt;strong&gt;30&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;verified real: &lt;strong&gt;6&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;niche topic real: &lt;strong&gt;0 of 15&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;real DOI, invented title: &lt;strong&gt;11&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;models that refused: &lt;strong&gt;1&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;verifier: &lt;strong&gt;Crossref + DataCite&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-behaviour</category>
    </item>
    <item>
      <title>The same bug fix cost $0.11 on Haiku and $0.93 on Opus</title>
      <link>https://aieveryminute.com/same-bug-fix-cost-11-cents-on-haiku-93-on-opus/</link>
      <guid isPermaLink="true">https://aieveryminute.com/same-bug-fix-cost-11-cents-on-haiku-93-on-opus/</guid>
      <description>&lt;p&gt;Measured what it costs to actually complete a task rather than what a token costs, by giving Opus 5, Sonnet 5 and Haiku 4.5 the same failing test suite and verifying the fix by running it. Cost to finish varied 8.5x, and the ranking is not the one the price list implies.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;haiku 4.5 median cost: &lt;strong&gt;$0.109&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;opus 5 median cost: &lt;strong&gt;$0.925&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;sonnet 5 median tokens: &lt;strong&gt;1,084,272&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost spread to finish: &lt;strong&gt;8.5x&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>models</category>
      <category>model-cost</category>
    </item>
    <item>
      <title>Tesseract hit 53% word error at 6px text. Claude vision hit 0%</title>
      <link>https://aieveryminute.com/tesseract-hit-53-percent-error-at-6px-text-claude-vision-hit-zero/</link>
      <guid isPermaLink="true">https://aieveryminute.com/tesseract-hit-53-percent-error-at-6px-text-claude-vision-hit-zero/</guid>
      <description>&lt;p&gt;A ladder of deliberately degraded document images with exact ground truth, read by tesseract and by Claude vision. JPEG quality turned out to be irrelevant. Text height turned out to be everything, with a cliff between 7 and 6 pixels that one engine fell off and the other did not notice.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;tesseract at 6px text: &lt;strong&gt;53.3% word error&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Claude vision at 6px: &lt;strong&gt;0.0% word error&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;JPEG quality 5: &lt;strong&gt;0.0% for both&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;tesseract cliff: &lt;strong&gt;between 7px and 6px&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;unguessable-text control: &lt;strong&gt;passed&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;ground truth: &lt;strong&gt;exact, 45-54 words&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>tools</category>
      <category>tool-trial</category>
    </item>
    <item>
      <title>Trimming CLAUDE.md saves under 4%. Batching your tool calls saves 49%</title>
      <link>https://aieveryminute.com/trimming-claude-md-saves-under-4-percent/</link>
      <guid isPermaLink="true">https://aieveryminute.com/trimming-claude-md-saves-under-4-percent/</guid>
      <description>&lt;p&gt;The advice circulating about Claude Code token costs is mostly unmeasured. Here is each common tip with the measurement next to it: what actually saves tokens, what saves a rounding error, and the two claims the numbers contradict outright.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;batching tool calls: &lt;strong&gt;saves 49%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;trimming an 8KB CLAUDE.md: &lt;strong&gt;saves 3.6%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;200 MCP tools, default: &lt;strong&gt;3,054 not 60,854&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;subagent delegation: &lt;strong&gt;costs 1.72x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cache tier requested: &lt;strong&gt;1 hour, not 5 min&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.226.&lt;/p&gt;</description>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>A 28KB CLAUDE.md costs 7,379 tokens and no measurable time</title>
      <link>https://aieveryminute.com/a-28kb-claude-md-costs-no-measurable-time/</link>
      <guid isPermaLink="true">https://aieveryminute.com/a-28kb-claude-md-costs-no-measurable-time/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: adding a 28KB CLAUDE.md produced a median time-to-first-token difference of 178ms, against run-to-run variance ranging from 1,527ms to 8,337ms on identical configurations. A sign test over 20 paired samples gives p = 0.263.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;28KB slower in: &lt;strong&gt;13 of 20&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;sign test p: &lt;strong&gt;0.263&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;median difference: &lt;strong&gt;178 ms&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;warm-run spread: &lt;strong&gt;1,527-8,337 ms&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>The same 28KB costs 7,379 tokens in CLAUDE.md and 4 tokens in a skill</title>
      <link>https://aieveryminute.com/claude-md-costs-1845x-more-than-a-skill/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-md-costs-1845x-more-than-a-skill/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: a CLAUDE.md costs about 0.26 tokens per byte plus 106 tokens of fixed overhead, and that cost lands on every single session. The same bytes parked in a skill body cost 4 tokens until invoked.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;28KB in CLAUDE.md: &lt;strong&gt;+7,379 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;28KB in a skill body: &lt;strong&gt;+4 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;ratio: &lt;strong&gt;1,845x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;CLAUDE.md rate: &lt;strong&gt;0.26 tokens/byte&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;fixed overhead: &lt;strong&gt;106 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.227: &lt;strong&gt;mechanism holds; ratio is fragile&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.228: &lt;strong&gt;+8,137 vs +5; ratio now ~1,620x, third value in three versions&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Delegating to a subagent costs 1.72x and saves 6.4%</title>
      <link>https://aieveryminute.com/delegating-to-a-subagent-costs-1-72x/</link>
      <guid isPermaLink="true">https://aieveryminute.com/delegating-to-a-subagent-costs-1-72x/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: delegation buys a smaller parent context at a large one-off cost. The saving is exactly the content you kept out of the parent, so the trade only works if the session continues long enough to bank it. Also: .usage does not count subagent tokens at all.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;inline: &lt;strong&gt;126,825 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;via subagent: &lt;strong&gt;~218,000 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost multiplier: &lt;strong&gt;1.72x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;parent context saved: &lt;strong&gt;8,175 tokens (6.4%)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;break-even: &lt;strong&gt;~11 round trips&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Trying a new --effort level costs 40,054 tokens. Switching back is free.</title>
      <link>https://aieveryminute.com/each-effort-level-keeps-its-own-cache/</link>
      <guid isPermaLink="true">https://aieveryminute.com/each-effort-level-keeps-its-own-cache/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: changing --effort does not change your context size at all, but the first run at each new level writes about 40,054 tokens of cache at $0.41 against $0.029 warm. Once a level is warm, alternating between levels is free.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;first run at a new level: &lt;strong&gt;40,054 tokens created&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost cold vs warm: &lt;strong&gt;13.9x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;switching back: &lt;strong&gt;0 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;prompt size change: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;trivial task output: &lt;strong&gt;4 tokens at every level&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Adding one 5-token skill costs 47,544 tokens</title>
      <link>https://aieveryminute.com/one-character-edit-costs-47544-tokens/</link>
      <guid isPermaLink="true">https://aieveryminute.com/one-character-edit-costs-47544-tokens/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: a warm session reads 66,078 cached tokens and reports $0.033. Change a single character of CLAUDE.md, or add one small skill, and the next session recreates 47,544 tokens of cache and reports $0.485. The file size barely matters; the invalidation does.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;warm session: &lt;strong&gt;0 created, 66,078 read&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;after any change: &lt;strong&gt;47,544 created&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost multiplier: &lt;strong&gt;14.6x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;skill added: &lt;strong&gt;5 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;invalidation: &lt;strong&gt;content-hashed&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Reading a 6-byte file costs 58,851 tokens</title>
      <link>https://aieveryminute.com/reading-a-6-byte-file-costs-58851-tokens/</link>
      <guid isPermaLink="true">https://aieveryminute.com/reading-a-6-byte-file-costs-58851-tokens/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: a tool call costs approximately your whole current context, regardless of what it returns. File content is only about 0.35 tokens per byte, so on a 40KB read the overhead is four times the file itself. Batching tool calls halves the total.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;one tool round trip: &lt;strong&gt;+58,851 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;3 reads batched: &lt;strong&gt;121,732 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;3 reads sequential: &lt;strong&gt;240,073 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;sequential penalty: &lt;strong&gt;1.97x&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;file content rate: &lt;strong&gt;0.35 tokens/byte&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Resuming a session costs 43,350 tokens once, then 293 a turn</title>
      <link>https://aieveryminute.com/resuming-costs-43350-once-then-293-a-turn/</link>
      <guid isPermaLink="true">https://aieveryminute.com/resuming-costs-43350-once-then-293-a-turn/</guid>
      <description>&lt;p&gt;Measured on Claude Code 2.1.224: continuing a conversation adds exactly 293 tokens of cache write per trivial turn, with everything else served from cache. Across six turns the context grew 1,465 tokens while reported cost rose 2%.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;first resume: &lt;strong&gt;43,350 tokens created&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;each turn after: &lt;strong&gt;293 tokens created&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;cost over 6 turns: &lt;strong&gt;+2%&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;context growth: &lt;strong&gt;293 tokens/turn&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>In Claude Code permissions, deny always wins</title>
      <link>https://aieveryminute.com/claude-code-deny-beats-allow/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-code-deny-beats-allow/</guid>
      <description>&lt;p&gt;Eight headless runs across four settings configurations show a deny rule blocks a tool call regardless of which scope it sits in, even when a higher-precedence file explicitly allows the same pattern, and even inside the same file.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;deny lost: &lt;strong&gt;never&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.223.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Three ways to write a dead deny rule, one of them silent</title>
      <link>https://aieveryminute.com/claude-code-deny-rules-that-do-nothing/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-code-deny-rules-that-do-nothing/</guid>
      <description>&lt;p&gt;Eighteen headless runs across five rule forms. A misspelled tool name warns, a raw-string matcher warns, and a misplaced colon fails completely silently while looking correct.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;dead rules found: &lt;strong&gt;4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;silent failures: &lt;strong&gt;1&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.223.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Nothing in a project can unset an inherited Claude Code env var</title>
      <link>https://aieveryminute.com/claude-code-env-merges-across-scopes/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-code-env-merges-across-scopes/</guid>
      <description>&lt;p&gt;Measured how Claude Code combines the env setting across user, project, local and --settings. It deep-merges across all four, an inherited key cannot be removed from a higher-precedence scope, non-string values are silently coerced by JavaScript string conversion, and OTEL_ variables never reach subprocesses at all.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;scopes env merges across: &lt;strong&gt;4 of 4&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;ways to unset that work: &lt;strong&gt;none cleanly&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;null becomes: &lt;strong&gt;the string &amp;quot;null&amp;quot;&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;{&amp;quot;a&amp;quot;:1} becomes: &lt;strong&gt;[object Object]&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;OTEL_ vars reaching subprocesses: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224 (8a2a469b68f9).&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Three Claude Code hook fields the docs name wrong</title>
      <link>https://aieveryminute.com/claude-code-hook-payloads-vs-docs/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-code-hook-payloads-vs-docs/</guid>
      <description>&lt;p&gt;Wiring 15 hook events to a capture script and running two headless sessions turned up three field names that did not match the documentation on 2026-08-07, plus several useful fields undocumented at the time, including per-tool duration_ms. Re-checked on 2026-08-21: every one of those discrepancies has since been fixed in the hooks reference, so this now stands as a record rather than as current guidance.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;hook events wired: &lt;strong&gt;15&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;events captured: &lt;strong&gt;22&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;field names wrong: &lt;strong&gt;3&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;rechecked 2026-08-21: &lt;strong&gt;all discrepancies now fixed in the docs&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.223.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Subagents load CLAUDE.md invisibly</title>
      <link>https://aieveryminute.com/claude-code-subagent-instructions-blind-spot/</link>
      <guid isPermaLink="true">https://aieveryminute.com/claude-code-subagent-instructions-blind-spot/</guid>
      <description>&lt;p&gt;A general-purpose subagent provably reads your CLAUDE.md, and the hook meant to observe instruction loading never fires for it. If you use InstructionsLoaded to audit what reaches your agents, subagents are a blind spot.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;subagents spawned: &lt;strong&gt;5&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;InstructionsLoaded events: &lt;strong&gt;8&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;events with agent_id: &lt;strong&gt;0&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.223.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>behaviour</category>
    </item>
    <item>
      <title>Turning off MCP tool search costs you 17,214 tokens before you connect anything</title>
      <link>https://aieveryminute.com/mcp-tool-search-saves-95-percent-of-context/</link>
      <guid isPermaLink="true">https://aieveryminute.com/mcp-tool-search-saves-95-percent-of-context/</guid>
      <description>&lt;p&gt;Measured context cost of MCP tools with tool search on and off, across 5, 50 and 200 tools. Deferring saves about 95%, an MCP tool costs roughly 200 times what a skill costs, and disabling tool search adds 17,214 tokens to an empty session.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;200 tools deferred: &lt;strong&gt;+3,054 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;200 tools loaded: &lt;strong&gt;+60,854 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;tool search off, no servers: &lt;strong&gt;+17,214 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per tool definition: &lt;strong&gt;798 bytes&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.224: &lt;strong&gt;+17,795 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.233: &lt;strong&gt;+14,644 tokens, down 17% from 2.1.232&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;per-tool curve on 2.1.233: &lt;strong&gt;unchanged, 652 loaded and 16 deferred&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.223.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
    <item>
      <title>Every measurement re-run on Claude Code 2.1.224: two were identical to the token</title>
      <link>https://aieveryminute.com/re-verified-on-2-1-224/</link>
      <guid isPermaLink="true">https://aieveryminute.com/re-verified-on-2-1-224/</guid>
      <description>&lt;p&gt;Claude Code 2.1.223 became 2.1.224. Re-measuring every figure this site has published shows the deltas are remarkably stable across the version bump, while the absolute baselines drift, which is precisely why paired baselines matter.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;figures re-verified: &lt;strong&gt;11&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;unchanged: &lt;strong&gt;9&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;moved: &lt;strong&gt;2&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;MCP deltas: &lt;strong&gt;identical to the token&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.226: &lt;strong&gt;all figures hold&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.227: &lt;strong&gt;batching 2.0x, mechanisms hold&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.228: &lt;strong&gt;batching 2.0x, mechanisms hold, ratio moved again&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.231: &lt;strong&gt;floor +64 tokens, tool-search delta held&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.224.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>method</category>
    </item>
    <item>
      <title>Deploying a static site to Hostinger shared hosting</title>
      <link>https://aieveryminute.com/static-site-hostinger-shared-hosting/</link>
      <guid isPermaLink="true">https://aieveryminute.com/static-site-hostinger-shared-hosting/</guid>
      <description>&lt;p&gt;Both candidate folders carried a DO_NOT_UPLOAD_HERE marker and the domain resolved to an IP that was not the SSH host. Here is how to find the real document root in one command instead of guessing.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;host: &lt;strong&gt;shared, no root&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;node on PATH: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;node available: &lt;strong&gt;v24.6.0&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;time to find docroot: &lt;strong&gt;one probe&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>hosting</category>
    </item>
    <item>
      <title>What 1,000 skills actually cost you: 1,474 tokens</title>
      <link>https://aieveryminute.com/what-skills-actually-cost-in-context/</link>
      <guid isPermaLink="true">https://aieveryminute.com/what-skills-actually-cost-in-context/</guid>
      <description>&lt;p&gt;Measured prompt tokens across skill counts from 1 to 1,000, with body sizes from 200 bytes to 28KB and descriptions from 90 to 1,500 characters. Every configuration paired against a baseline measured in the same batch, because the baseline drifts.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;1000 skills cost: &lt;strong&gt;1,474 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;on disk: &lt;strong&gt;3.9 MB&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;28KB body cost: &lt;strong&gt;+5 tokens&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;desc length effect: &lt;strong&gt;none&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;re-verified on 2.1.224: &lt;strong&gt;1,461 tokens&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Measured on Claude Code 2.1.223.&lt;/p&gt;</description>
      <pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate>
      <category>claude-code</category>
      <category>context-cost</category>
    </item>
  </channel>
</rss>