Skip to content

Empirical evaluation: 30-run benchmark of token-efficient vs 4 other .claude/ configs #1

Description

@adam-s

Summary

I built a deterministic evaluation harness to test whether aggressive output-reduction rules actually save total tokens in agentic coding tasks. Your repo's actual CLAUDE.md was tested directly alongside 5 other configurations across 3 coding challenges.

Each agent gets a test file and must make all tests pass. All configs pass 100%. The comparison is purely tokens to green.

The 6 Configs Tested

Config What's in .claude/ Size
A-baseline "A coding project." 1 line
B-token-efficient Our 12-line summary of token-reduction ideas 12 lines
C-structured CLAUDE.md + rules + agents + reference 4 files
D-workflow CLAUDE.md + rules + skills + hooks 4 files
E-hybrid CLAUDE.md + rules + agents 3 files
F-drona23 Your actual CLAUDE.md from this repo 61 lines

Results — All Pass, Token Cost Varies

CSV Reporter

Config Avg Tokens Avg Cost
E-hybrid 1,012 $0.068
C-structured 1,016 $0.067
A-baseline 1,088 $0.078
B-token-efficient 1,096 $0.093
F-drona23 1,137 $0.084
D-workflow 1,199 $0.083

SQLite Window Functions

Config Avg Tokens Avg Cost
E-hybrid 1,230 $0.108
A-baseline 1,255 $0.120
C-structured 1,287 $0.116
B-token-efficient 1,339 $0.116
D-workflow 1,374 $0.123
F-drona23 1,586 $0.127

Hono WebSocket Counter (hardest — multi-turn debugging)

Config Rep 1 Rep 2 Avg Tokens Avg Cost
B-token-efficient 3,370 3,370 $0.136
A-baseline 3,667 3,667 $0.160
E-hybrid 4,121 4,121 $0.151
C-structured 4,778 4,778 $0.187
D-workflow 5,334 5,334 $0.182
F-drona23 14,182 4,478 9,330 $0.268

Honest Assessment

Your approach works — the ideas are sound. Eliminating sycophancy, reducing redundant output, and keeping code simple are all good principles. Our 12-line summary of these ideas (Config B) performed well, especially on the hardest task (WebSocket: 3,370 tokens, cheapest of all).

But the actual 61-line CLAUDE.md from this repo doesn't work as well as a shorter version of the same ideas. The file adds significant input token overhead on every turn. On simple tasks (CSV, SQLite), it's 10-20% more expensive than baseline. On the WebSocket challenge, it hit 14,182 tokens in one run — 4x more than any other config.

The 61 lines include detailed rules about typography, speculation control, session memory, scope control, and warnings. These are all reasonable rules, but each one costs input tokens on every single API turn. The model already follows most of these behaviors by default — explicitly stating them adds cost without changing output.

The sweet spot is fewer, higher-impact rules. Our best-performing config (E-hybrid, $0.327 total) uses 7 lines:

- Think before acting. Read existing files before writing code.
- Be concise in output but thorough in reasoning.
- Prefer editing over rewriting whole files.
- Do not re-read files you have already read.
- Test your code before declaring done.
- No sycophantic openers or closing fluff.
- Keep solutions simple and direct.

Methodology

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions