Original analysis
Measurements we ran on our own machine, published with the method and the limits next to the numbers.
Articles and the weekly digest share one feed at /rss/blog.
Agent memory and context
ai-memory vs the memory Hermes already runs: 837 items, 24 probes
Same 837 items and 24 probes. ai-memory is correct in the top 5 for 18 of 24 at 290.8 ms. The injected memory block plus search_files answers 20 of 24 at 0.1 ms.
Read the measurements
Agent memory and context
How much an agent remembers, how much context survives a tool call, and what each memory layer costs.

Repositories this analysis measures: headroomlabs-ai/headroom headroom saves 34.5% on a tool result and 0% on the same bytes in a user message
headroom-ai 0.41.0 compresses a JSON tool result by 34.54% and a 198 KB log by 96.01%. The same bytes as a user message save 0.00%: user messages are not compressed by default. With its own lossless guard on, the 96% row reverts to 0%.

Repositories this analysis measures: thedotmack/claude-mem claude-mem says 10x, our memory says 3.3x: pricing a retrieval claim on 837 real items
claude-mem 13.39.0 quotes 50-100 tokens per index result, 500-1,000 per detail, and 10x for filtering first. On our 837-item memory the two prices hold (59.2 and 515) but the headline measures 3.3x.


Repositories this analysis measures: vectorize-io/hindsight · hydra-db/hydradb Agent memory, three ways: hindsight vs HydraDB vs keyword search on our own 837 items
Same 837-item clone of our agent memory, same 24 probes, three retrieval arms. hindsight is 13 correct at rank 1 (HydraDB 8, keyword 10), but costs 17,511 ms per query against keyword 0.1 ms.





Repositories this analysis measures: MemPalace/mempalace · vectorize-io/hindsight · chroma-core/chroma · mem0ai/mem0 · modelcontextprotocol/servers MemPalace: 96.6% R@5 on LongMemEval measured at 96.0% on its own 50-question split, with the network switched off
48 of 50 LongMemEval questions retrieved the right session, 96.0% against the claimed 96.6%. The same 50 returned identical top-5 sessions with the kernel sandbox denying all network. Install: 340 MB, 82 packages, no torch.





Repositories this analysis measures: headroomlabs-ai/headroom · mksglu/context-mode · google/magika · microsoft/onnxruntime · huggingface/transformers headroom: the 10,144 → 1,260 demo reproduces at 86% on our worker logs, and at 2.8% through the shipped pipeline
The same 10,476-token log dump went to 1,464 tokens (86.03%) when headroom’s log compressor ran, 10,180 (2.83%) through the shipped router, and 10,476 (0%) while its 261 MiB model was cold. Six of ten answers died with the lines.





Repositories this analysis measures: vectorize-io/hindsight · modelcontextprotocol/servers · postgres/postgres · ollama/ollama · mem0ai/mem0 Hindsight: we installed the 2.89 MB memory binary and checked whether it remembers
Four facts in, then the same four after a restart: all correct. At 5,000 facts on an 8 GiB Mac, answer time grew from 272 ms to 3,088 ms and accuracy slipped to 10/12.






Repositories this analysis measures: mksglu/context-mode · modelcontextprotocol/servers · microsoft/playwright · anthropics/claude-code · openai/codex · WiseLibs/better-sqlite3 context-mode: we tested the 98% context claim with our own payloads
Three real payloads: 1,076,082 B in, 1,129 B read by the model (99.90%). The saving comes from never pulling the payload into the conversation, not from beating a shell one-liner.
Output and token budget
What a tool actually removes from the bytes an agent reads — the ceiling, the median, and the cases where it removes nothing.







Repositories this analysis measures: DietrichGebert/ponytail · shadcn-ui/ui · vercel-labs/json-render · pbakaus/impeccable · anthropics/skills · vercel-labs/agent-skills · sickn33/agentic-awesome-skills Nine skills, one React page: what each skill cost in tokens
The same 13 point brief, prompt and model, run nine times with one skill at a time. The cheapest arm had no skill at all, and the smallest skill file still added 136% in tokens.



Repositories this analysis measures: ayghri/i-have-adhd · anthropics/claude-code · obra/superpowers i-have-adhd: 10 output rules, measured on the agent they were not written for
Three arms, 21 delegated runs. The skill made 9 of 9 answers end with a runnable next action (baseline 0 of 9) and cut the median answer 43 percent. But 2 of 3 reps then left a diagnosed failing test unfixed. We kept two rules, not ten.





Repositories this analysis measures: diegosouzapw/OmniRoute · pollinations/pollinations · anomalyco/opencode · JuliusBrussee/caveman · mnfst/awesome-free-llm-apis OmniRoute: the 1.62B free-token headline recomputes to the digit, and 20 of 20 channels wanted a key first
Their catalog recomputes to 1.6232B/month (489 entries, 35 pools, 17 budgets) and pool dedup strips 87.75% of a naive sum. All 20 providers behind it refused a keyless request; 2 of the 13 marked keyless answered.

Repositories this analysis measures: JuliusBrussee/caveman caveman: the 129.8x page number is one filtered answer, and our lockfile came back untouched
We installed caveman 2.0.1 on an M1 Mac and re-ran both headline numbers. Its own browse fixture reproduced token-for-token; the full-to-full win was 1.18x, and four of five dev files did not compress.



Repositories this analysis measures: rtk-ai/rtk · JuliusBrussee/caveman · headroomlabs-ai/headroom rtk cuts 92% off ls -R and 0% off cat: the ceiling, the median, and the two commands it leaves alone
We ran 10 commands an agent types, raw against rtk 0.51.0 on an M1 Mac. Median cut 48.1%, range 0-92%: two commands came back byte-identical, and the dashboard's own baseline disagreed with our bytes on three of them.
Agent tooling and code
The tools around the agent: code generation, code understanding, sandboxes, sessions, databases, and job-hunt automation.

Repositories this analysis measures: Graphify-Labs/graphify graphify: 100% edge accuracy, 73% query accuracy, 1.7x more tokens than grep
graphify built a 2,304-node graph from 407 code files, with every sampled edge correct. It answered fewer questions correctly than plain grep (11/15 vs 13/15) and used 1.7x more tokens per answer. It was 9.2x faster per query.





Repositories this analysis measures: career-ops-hq/career-ops · MadsLorentzen/ai-job-search · srbhr/Resume-Matcher · SimplifyJobs/Summer2027-Internships · poteto/hiring-without-whiteboards career-ops on 8 real postings: the "still open?" check was 8 for 8, the "does it fit?" half only reached a keyword list
Four postings their boards still list and four that closed since a 2026 archive snapshot. The shipped liveness check called all eight correctly in 14 seconds with no API key, and killed no live posting. The scored fit half is a model call we did not make.





Repositories this analysis measures: FalkorDB/FalkorDB · memgraph/memgraph · apache/age · postgres/postgres · redis/redis FalkorDB on our own dependency graph: five questions, three engines, and a load that lied twice
Our real dependency graph (100,037 declared rows) into FalkorDB and two Postgres servers. All five answers matched; the fastest engine was whichever one sat next to the client, and the bulk load duplicated nodes first.



Repositories this analysis measures: tester-army/e2e · microsoft/playwright · browser-use/browser-use e2e: seven replays, no model calls, and the 25 seconds a renamed button costs
One agent step against our own /search page: seven replays made zero model calls and ran 4.9x faster than the recording run. Renaming the submit button handed the step back to the model.

Repositories this analysis measures: usestrix/strix strix never finished one run, and our hand-run probes produced their own false positives
We pointed strix 1.7.0 at two deliberately vulnerable apps here. Its own model quota died first (HTTP 429), so the agent produced nothing. The 15 findings came from manual curl and python, and 3 of 9 probes on the first target did not reproduce.




Repositories this analysis measures: Ebony-Vinyl/dsh-our-free-model · zouyuxuan122/dsh-our-free-model · deepseek-ai/deepseek-harness · anomalyco/opencode dsh free models: 7 of 13 answer, and the two in the headline live on another host
All 13 free-lane ids got one prompt twice through dsh on an M1 Mac: 7 answered both rounds, 5 refused both, one flipped. 427 of 428 requests went to opencode.ai. The headline models' lane points at ai.dtyg123.dpdns.org.



Repositories this analysis measures: herdrdev/herdr · tmux/tmux · zellij-org/zellij herdr: the work survives the client, and a restart brings back only the layout
We killed herdr’s TUI client mid-job on an M1 Mac. The same pid kept printing ticks for 20 s, and a new client found the scrollback. After a server restart the split layout returned exactly; the process did not.



Repositories this analysis measures: NVIDIA/OpenShell · libkrun/libkrun · anthropics/sandbox-runtime OpenShell: 22 of 32 escapes refused, and the path its own docs say a policy cannot expose
We ran the same escape commands against a narrow policy and a control policy on an M1 Mac. Every denial in the narrow arm was the policy’s decision. A policy that grants / does expose the private channel the docs say cannot be exposed.






Repositories this analysis measures: yetone/magpie · yetone/magpie-releases · anthropics/claude-code · openai/codex · google-gemini/gemini-cli · charmbracelet/crush magpie: 1.26 ms per request through the local gateway, and 1 of 4 agent configs comes back byte-identical
One local gateway in front of four seeded agents, measured on an M1 Mac against a stub upstream. The cost is +1.26 ms p50 per request, a 34.1 MiB binary and 41 MiB of idle RAM. Only one of the four configs came back as it was found.



Repositories this analysis measures: DietrichGebert/ponytail · fastapi/full-stack-fastapi-template · JuliusBrussee/caveman ponytail: 66% less code on a real repo, and the one task where it wrote nothing at all
We re-ran ponytail’s own 19-task agentic benchmark on an M1 Mac with a different agent. Every number moved the way its README claims; one task came back byte-identical to the seed file.








Repositories this analysis measures: t8y2/dbx · postgres/postgres · sqlite/sqlite · redis/redis · mongodb/mongo · dbeaver/dbeaver · modelcontextprotocol/servers · drizzle-team/drizzle-orm DBX as an agent database layer: we measured the query path and the write gates
Against a throwaway Postgres 17.11: 25–50 ms per command. Writes are blocked by default, DDL (schema changes) needs two flags, a connection flagged production refuses both, and you have to fill the connection store by hand.








Repositories this analysis measures: t8y2/dbx · dbeaver/dbeaver · tauri-apps/tauri · electron/electron · nodejs/node · postgres/postgres · sqlite/sqlite · duckdb/duckdb Is DBX really a 25 MB database client? We measured it on a Mac
The 25 MB number is real but belongs to the CLI and the Windows installer. The Mac download is 36.91 MiB, 67.34 MiB installed, next to DBeaver at 199.80 MiB.
Scraping and reach
Getting pages that do not want to be fetched: which fetcher opened a page, which one quietly returned nothing.



Repositories this analysis measures: firecrawl/firecrawl · D4Vinci/Scrapling · unclecode/crawl4ai firecrawl vs Scrapling vs Crawl4AI on the same ten pages
Only two of the three ran on this 8 GiB Mac. Crawl4AI rendered every page (567 ms median, 38/46 must-keep items); Scrapling reads raw HTML 2.8x faster and 2.8x cheaper; firecrawl self-host was killed for RAM.



Repositories this analysis measures: JuliusBrussee/caveman · rtk-ai/rtk · D4Vinci/Scrapling caveman vs rtk vs Scrapling on the same targets: what each one shrinks
Ten pages, ten shell commands, three shrinking tools. caveman beat the raw ARIA tree on 3 of 5 pages it read, refused 2; rtk halved bash bytes; caveman run changed nothing.




Repositories this analysis measures: Panniantong/Agent-Reach · yt-dlp/yt-dlp · jackwener/OpenCLI · D4Vinci/Scrapling Agent Reach: 2 of 5 targets read with no key, and the Reddit route its own docs rule out
One command installs it and the doctor reports 4 of 16 channels active. With no key or cookie, web and YouTube answer; Reddit answers only through an RSS route the tool does not use; X answers nowhere. Four of 18 two-hundreds were not the target page.





Repositories this analysis measures: D4Vinci/Scrapling · lexmount/moli · microsoft/playwright · Kaliiiiiiiiii-Vinyzu/patchright · FlareSolverr/FlareSolverr Scrapling: three fetchers, 900 MB of install, and one Cloudflare page that opened
Ten pages, five engines, same hour. Plain HTTP took 787 ms median at 54 MB. The browser tiers cost 200 MB, and real Chrome peaked at 1.8 GB. Only the stealth tier passed the Cloudflare demo, in 10 s.





Repositories this analysis measures: lexmount/moli · lightpanda-io/browser · servo/servo · microsoft/playwright · puppeteer/puppeteer We ran Moli and headless Chrome side by side on a Mac, here is what we measured
Same ten pages, two engines: 1.11 s and 68 MiB against 12.32 s and 216 MiB, plus the zero-byte failure that a success exit code hides.
Media and rendering
Producing and fetching media on one machine: render throughput, file hashes across renders, and downloaders on the same URLs.


Repositories this analysis measures: pablostanley/yoinks · yt-dlp/yt-dlp yoinks: 6 of 8 URLs, +48.7 s per file, and a picker that says mp4 when the file is AVI
A terminal wrapper around yt-dlp, measured on 8 URLs from a clean profile. 6 downloaded, 2 failed on the platform. Every file was byte-identical to bare yt-dlp with the same format flag.


Repositories this analysis measures: heygen-com/hyperframes · dmtrKovalenko/fframes hyperframes: the same 27-second clip came out as two different files in four renders, and neither of them took 4 seconds
We rebuilt the promo clip from the fframes article as HTML and rendered it four times on an M1 Mac. The order was A, B, B, A: two different files, one frame apart, and 37 to 48 times the wall time of the Rust renderer we measured last week.

Repositories this analysis measures: dmtrKovalenko/fframes fframes: 27.4 seconds of video in 4.3 seconds, and the encoder fallback that fooled us first
fframes renders video from Rust and SVG on the GPU. We built a 27.4 s promo and rendered it five ways on an M1 MacBook: 183-206 fps at 1080p, 514 fps as a 540p draft, 55 fps at 4K. Our first round said 272 fps and was wrong.