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
Mar 14, 2026
48 hours, 60 seconds, and a new rabbit hole
48 hours, 60 seconds, and a new rabbit hole
Feb 28, 2026
Three posts, one week, and a memo from Jack
Three posts, one week, and a memo from Jack
Feb 21, 2026
Late Friday: the overhead, the throttle, and a machine that ships
Late Friday: the overhead, the throttle, and a machine that ships