Articles
Notes from
the build log.
Opinions, experiments, and post-mortems on the tools I actually ship with — the AI SDK, agent frameworks, sandboxes, and voice. Less tutorial, more field notes.
Stop Re-Reading Huge Tool Outputs: Breadcrumbs Over Blobs
Your agent just called searchDocs() and got back 48KB of JSON. On the next turn it re-reads all of it — or worse, silently drops the detail it needs. Store signatures and pointers instead of blobs.
agentsmemorycontext-windowTwo Agent Harnesses: Mastra's AgentController vs LangChain's Deep Agents
Two frameworks, working independently, reached for the same word — harness. But they bet on opposite shapes of work: one you hold and steer, the other you hand a goal and let run. Here's the line between them, in code.
mastralangchainagents
Voice Agents: The Hard Problems Nobody Warns You About
The demo is easy — speech-to-text, LLM, text-to-speech, done. Then a real person talks to it and everything falls apart: the silences are too long, it talks over them, it can't tell when they're done. The hard problems in voice aren't the models. They're latency, barge-in, and turn-taking.
voice-agentslatencyreal-time
I Stopped Hand-Rolling the Agent Loop — AI SDK v7 Features Worth Shipping
Every agent project had the same skeleton at the top: call the model, run tools, loop, pray you got the stop condition right. v7 moves that — plus approvals, structured output, and telemetry — into the SDK. Here's what I reached for the week it landed.
ai-sdktypescriptagents
I Let an Agent Write Code and Run It — Safely — in a Vercel Sandbox
An agent that writes code you can't run is a fancy autocomplete. But running model-generated code on your own box is how you get a crypto miner. I build a mini-app where the agent writes, executes, and self-corrects code inside a Vercel Sandbox microVM — and walk the parts that surprised me.
vercel-sandboxagentsai-sdk