SWA

How agent harnesses actually work — built from scratch, one primitive at a time.

“What I cannot create, I do not understand.”

— on Feynman’s blackboard

SDLC with Agents is a course, a channel, and a CLI. swa is a teaching harness: each chapter adds one internal (model call → tool loop → context window → caching → subagents → worktrees → loops → review gates) until you have a working Claude-Code-class agent you understand completely. The essays, the videos, and the weekly digest are built from the same source.

Now building chapter 0: bare model call

The five laws

Every harness lives under them. Each one forbids a sentence you have probably heard. Refer to them by number: “that’s a Law 4 violation.”

The five laws
#LawForbids
1Statelessness. Memory is harness replay, never a model property.forbids"it learned my preferences"
2Finite attention. Every token in context is paid twice: money, and attention taken from every other token.forbids"more context is always better"
3Tools. The model has no hands. Same model, different tool list = different agent.forbids"the agent went rogue"
4Independence. A check is worth exactly its independence from what it checks.forbids"I asked it to review itself"
5Stochasticity. The same prompt is a distribution, not an answer.forbids"I ran it once and it worked"

The method: only measurement knows.

The chapters

One primitive per chapter, in build order. Each starts from a mystery you have felt and ends with the code in swa that explains it.

Chapters — one harness primitive each
chStatusPrimitiveThe mystery
0◐Bare model callWhat is the model actually receiving?
1○Tool loopSame model, 30 points apart
2○File + shell tools, permission gateAuto mode: who decided that was safe?
3○Context windowWhy does my agent get dumber after an hour?
4○Prompt cachingWhy did this session cost $14 and that one $2?
5○Instruction layeringWhy did it forget the rule in my file?
6○SubagentsA huge band collapsing to a dot
7○WorktreesWhy did two agents clobber each other?
8○LoopsWhy did it rewrite the same test three times?
9○Review gatesWhy can't it check its own work?
10○SkillsOn-demand instructions and what they cost
11○Cost, failure modes, evalsHarness Bench
12○Student modeThe harness makes you explain it

What the course covers →

Today’s feed

What mattered in coding agents on , ranked by relevance, with a one-line take on each. Every title opens the source.

  1. Score 7.6 out of 10

    Claude Code 2.1.319 更新了两件实用的事: (opens in a new tab)

    X (web)@zhaxinyuan

    Small but real harness changes: MCP calls can run in the background, and a deny-on-prompt setting stops permission dialogs from blocking unattended runs. Check the release notes for details.

    why 7.6

    Claude Code 2.1.319 adds background MCP tasks and a non-blocking deny-on-prompt permission setting.

    relevance 8/10 · novelty 7/10

  2. Score 7.0 out of 10

    cloudflare/security-audit-skill: A coding-agent skill for multi-phase security audits with independently verified, machine-readable findings (opens in a new tab)

    sweep: GitHubCloudflare

    Worth reading for the structure: a fresh verifier sub-agent validates findings it didn't produce (Law 4). The 'one run finds half' figure argues for repeated runs (Law 5).

    why 7.0

    Concrete coding-agent skill with isolated sub-agents and verifier phases; mechanism visible, though the single-run recall figure is unverified marketing-adjacent detail.

    relevance 7/10 · novelty 7/10

  3. Score 6.6 out of 10

    opencode shipped Browse: MCP + Chromium extension so your coding agent drives your real browser — tabs, logins,… (opens in a new tab)

    X (web)@paleknight

    A real tool-list change: the agent gets your logged-in browser and hands control back for 2FA. That is wider reach and wider blast radius. Law 3.

    why 6.6

    Browser MCP plus Chromium extension; hands control back for login or 2FA. Concrete harness feature.

    relevance 7/10 · novelty 6/10

Nothing of this kind on this day.

All 6 items →

The weekly digest

Confirmation opens in a new tab. Every email has an unsubscribe link.