OpenAI dropped Symphony this week. One line in the README: "Symphony works best in codebases that have adopted harness engineering."
I'd just spent the week building toward that sentence without knowing it.
Three posts. One argument. The order matters.
1. SkDD: Skills-Driven Development

Vibe coding has no memory. Spec-driven development accumulates specs. SkDD accumulates capabilities — output artifacts that compound across every subsequent agent run.
I accidentally named it SDD in October. Spec-Driven Development claimed that acronym. So: SkDD — the methodology I've been running in production since a git init at 1:54 AM.
The sk- prefix is load-bearing. Named after what it produces, which is named after what it costs to call.
2. The Overhead, Ep 03: The Plumber Lives Inside the House

This one is also an episode of The Overhead — my async voice-note podcast. First time I'm actually using my own voice on it. Still working out the acoustics. It'll get there.
A friend asked three questions over WhatsApp: where do agents live, what's the interface, where do they report back?
The answers reveal a mental model most people are missing. The plumber doesn't show up when called. The plumber lives in the walls — permanent resident, not a contractor.
🎧 Listen on Spotify · Transcript + audio
3. The Harness

Symphony is a long-running daemon: monitors your issue tracker, creates an isolated workspace per issue, spawns a Codex agent, streams back proof of work, lands the PR. Engineers manage the work, not the agent runs.
The Harness Engineering paper behind it: five months, one product, zero manually-written lines of code, ~1,500 pull requests. 3.5 PRs per engineer per day. Throughput increased as the team grew.
The Ralph loop has been doing this in production. The paper named what the receipts already showed.
SkDD is the methodology. The plumber is the agent in the walls. The harness is the environment that makes both possible. Symphony is what you plug in when all three are in place.
After shipping the harness, I spent the week on X working through what it reveals next.
Once the environment is legible and agents are shipping, attribution breaks down. Three agents touching the same repo — you can see the fleet's heartbeat in logs, traces, metrics. You can't see who broke it. I don't have a clean answer yet. That's the next thing.
— Zak
Never miss an edition
Subscribe to receive the next briefing. Expect first-principles thinking, experiments from the information frontier, and invitations to help build what comes next.
Subscribe to the systems briefings
Practical diagnostics for products, teams, and institutions navigating AI-driven change.
Occasional briefs that connect agentic AI deployments, organizational design, and geopolitical coordination. No filler - only the signal operators need.
This site is protected by reCAPTCHA. The Google Privacy Policy and the Terms of Service apply.
Subscribe to the systems briefings. Practical diagnostics for products, teams, and institutions navigating AI-driven change. Occasional briefs that connect agentic AI deployments, organizational design, and geopolitical coordination. No filler - only the signal operators need. https://zakelfassi.com/newsletter
Zero spam. Unsubscribe whenever cognition demands.
Share this edition
The easiest way to support the work is to forward it to someone who needs the signal. The second easiest is a quick note telling me what resonated.
Forward via emailMore issues
Apr 10, 2026
What fails silently
What fails silently
Apr 3, 2026
Recursion, resistance, and a demand curve nobody asked for
Recursion, resistance, and a demand curve nobody asked for
Mar 27, 2026
Discovery, jurisdiction, and three signals from the frontier
Discovery, jurisdiction, and three signals from the frontier