Notes from real work
Written while building, with the commits attached.
Written while building, with the commits attached.
One integration puts hundreds of tools in reach. Here is everything we had to build around it before it was safe to point at a real inbox.
Composio is an aggregator. You integrate once and your AI can suddenly act in Gmail, Google Calendar, Linear, Notion and GitHub, without you writing a line against any of those APIs. That part took an
tobiaseichenwald · Aug 31, 2026 · 7 min read
Two months of latency work on a production chat agent: the wins, the ideas the measurements killed, and the numbers behind both.
Our chat's time to first token was 2.8 seconds. It is around 1 second now, on the same model. Two months of work, and most of that work was finding out which of my ideas were wrong. The tool contract
tobiaseichenwald · Aug 24, 2026 · 6 min read
A 100% cache hit makes tokens cheaper, not invisible. Deferring the tool contracts halved our chat's time to first token.
This week I moved Roma's chat to Vercel AI SDK 7 and GPT-5.6. The migration itself was routine. What it unlocked wasn't: OpenAI can now defer tool definitions, loading one into context only when the m
tobiaseichenwald · Aug 12, 2026 · 2 min read
Every harness bug masquerades as a model result: false reds read as regressions, false greens read as coverage.
My eval suite lied to me four times this month. Not the model. The harness. 1. The eval scored its own preprocessing. The text-cleanup eval reported 53% content loss on the cheapest config. Real loss
tobiaseichenwald · Jul 26, 2026 · 2 min read
Fanning out parallel reviewers catches confident wrong answers. It also produces confident wrong findings.
At the end of a session, before I push, I tell Claude to "fan out." That launches a set of reviewers in parallel instead of one. Different lens each: correctness, blast radius, test coverage. Separat
tobiaseichenwald · Jul 22, 2026 · 2 min read
Replacing a plaintext MCP secret with OAuth, publishing the SDK, and moving a live site off Sanity.
The thing that bothered me Rill's MCP server started life as a local stdio process. Claude Code spawned it, and it read a rill_sk_ key out of an environment variable in .mcp.json. That worked, and i
tobiaseichenwald · Jul 21, 2026 · 6 min read
Zone 2 is the aerobic “engine-building” zone — that comfortable pace where you can still talk but are clearly exercising. Inside your muscles, mitochondria (your energy factories) are burning fat for
tobiaseichenwald · Jul 21, 2026 · 2 min read
People often say startups are like a marathon. As someone who has run a number of marathons, I think the more useful comparison is marathon training. The first and biggest lesson is consistency. Trai
tobiaseichenwald · Jul 21, 2026 · 2 min read
There are hundreds of knots, but only a few cover almost all practical situations. This list gives you the essentials: secure loops, tensioning lines, joining ropes, and binding objects. 1. Bowline –
tobiaseichenwald · Jul 21, 2026 · 2 min read
Zone 2 training gets a lot of attention, but not everyone knows exactly how it leads to improved endurance. In any long-distance sport—whether a 10K, a half marathon, a long bike ride, or a swim—you’r
tobiaseichenwald · Jul 21, 2026 · 2 min read