Local coding harness prompts add up to 226 seconds before first token on an M4 MacBook
- On an M4 MacBook Pro with 24GB RAM running a 3-bit Qwen 3.8 27B model locally, Opencode's 18,046-token initial prompt took 225.7 seconds before its first token, versus 21.6 seconds for pi's 2,008-token prompt.
- The author estimates local prefill at about 90 tokens/second and generation at 10 tokens/second, so each extra 1,000 prompt tokens adds roughly 11 seconds before the model starts responding.
- With a shared 32,768-token context cache, pi's initial prompt left about 94% of context for work, while Opencode's 18,046-token prompt left 44%.
- Across 24 tasks, Opencode issued 33 side requests and crush issued 51, often overlapping an agent turn; their local model was busy for 125% and 114% of wall-clock time because one GPU queued concurrent requests.
- In eight auto-approved Exercism exercises, chad using llama.cpp passed 24 of 24 tasks, while the author cautions that these trivial Python tasks are only a pass gate, not a harness ranking.
Hacker News opinions
I lost interest in Chad as soon as I saw AI-written Markdown and a giant commit. I can live with vibe-coded implementation, but AI-generated docs and summaries make a project hard for me to trust or read.
I tested this on a 32 GB laptop without a GPU. llama.cpp answered "what is ls" almost immediately at about one word per second, while Opencode took 20 minutes to answer a request to inspect its working directory.
I think Opencode's large system prompt is only part of the issue. oh-my-pi's long prompt also reads like random garbage hallucinated by a 2023 LLM.
The prose needs work too. Phrases like "it spreads up to 50% between nights" and "nothing between the lean arms is a finding" are unclear, and "measured" adds nothing without showing the measurement.
I built hax for constrained machines such as laptops, small VPS instances, and single-board computers. It is a 0.7 MB dynamically linked C binary, uses a few MB of RAM, discovers a running local llama-server, and keeps prompts and tools minimal.
I have a similar project, clm, built partly because I was tired of JavaScript runtime dependencies. It also runs on Solaris and ESP32, so collaborating with hax might be interesting.
I built maki.sh for this sort of local-model use case.
My own benchmark with a non-local workload found Codex faster and more token-efficient than pi and omp. I did not find a case where pi was faster or cheaper.
These results will change as harnesses update. I want a small reproducible benchmark that runs on personal hardware and reports prefix tokens, time to first token, experienced tokens per second, prefill, cache reuse, and pass rate on deterministic tasks.