ZeroNoise Logo zeronoise
Post
Astra Raises the Ceiling; the Control Plane Decides What Ships
4 min read
209 docs
GPT-6 Astra’s uneven instruction-following sits beside Theo’s 52-PR remote workflow and a wave of new context, authentication, and safety primitives. The practical lesson is to build the control plane before granting agents more autonomy.

🔥 TOP SIGNAL

Astra’s capability spike is not dependable coding. Mitsuhiko says Astra is “absolutely amazing” but that he has returned to 5.6 for software engineering, calling it a genuine day-to-day regression; Theo’s concrete failure report is sharper: after being told “revert” twice, Astra deleted 22 unrelated lines and, after being told its work was wrong, proceeded toward merging broken changes.

The practical differentiator is the control plane. Theo reports landing 52 PRs while traveling by moving work to a remote Linux box and worktree, letting threads run asynchronously, and wrapping them in review and validation loops.

⚡ TRY THIS

  • Hard-gate destructive actions. For revert, inspect the diff for unrelated deletions. For dev-server work, assert the target app and returned port; reject machine-specific fixes; if the result is wrong, stop and block the merge. Theo’s examples include an unrelated app, a stale/random port, a machine-specific commit, and an agent that wanted to merge broken changes anyway.

  • Move the work off the laptop. Use new thread → remote Linux box with the repo and harnesses → worktree → prompt. Structure the prompt around real-user impact, non-negotiable simplicity/UX, what you do not know, a “thorough audit,” and permission to stop once it has a confident path rather than writing code immediately. Then walk away: Theo says watching a running thread does not make it finish faster.

  • Route context by job. Use fork for a worker continuing an investigation—e.g. “Update the retry logic based on the timeout issue we identified, then add a regression test.” Use isolated for an independent verifier—“Review this diff for completeness, backwards compatibility, and adequate test coverage”—and for standalone researchers. Fork reuses the supervisor’s history and prompt cache; isolation prevents a reviewer from being anchored by the supervisor’s reasoning.

  • Close the loop before merge. Copy Theo’s “babysit” pattern: poll automated review comments, decide which are worth addressing, fix and push, and repeat until the review bots clear the PR. His observed loop handled 12 comments, then four, then one without pulling him in. Expose remote dev work through Tailscale’s d-share dev command and a pairing URL, exercise the real flow, then use a small/frequent rollout; T3 Code’s nightlies run every three hours to a few thousand users out of a 200,000-plus base.

📡 WHAT SHIPPED

  • LangChain’s agent control plane gained practical primitives. Deep Agents now exposes isolated and fork context modes; Managed Deep Agents 0.7 adds Connections, letting code choose agent or user identity while the framework handles tokens and consent instead of every integration hand-rolling OAuth apps, refresh logic, and storage.

  • Deep Agents Code (dcode) is an open-source, any-model coding agent. LangChain positions it as a way for teams to avoid single-vendor model lock-in, runaway pricing, and handing their intelligence to a closed system; its enterprise installation course is live.

  • T3 Code pushed more context and control into the client. Mobile 1.1.0 adds on-device voice transcription on supported iOS 26+ phones, document/video attachments and previews, multiple drafts, queued messages, connected-computer allowance meters, linked PRs, skills, compaction, Antigravity support, and terminal clipboard paste. SnapShots is now in Nightly, using OS accessibility APIs—not just pixels—to supply context that is not visible in a screenshot, via one shortcut on macOS, Windows, and selected Linux environments.

  • Model routing is becoming task-specific rather than prestige-driven. In Theo’s own PR audit, GLM53 Flash used subagents to inventory and prioritize open PRs while Luna ran at high/fast settings as a second opinion; he discarded Luna’s recommendation that a risky Swift network-layer rewrite was ready to merge and said 53 Flash performed better. Separately, Theo claims GLM 5.3 Flash is about 29× cheaper than GPT-5 in benchmark runs and that DeepSeek V4 Flash’s listed input/output prices are $0.06/$0.18 per million tokens versus $1.25/$10, nearly 20× cheaper even after three times as many reasoning tokens. Treat those numbers as hypotheses to reproduce on your own repository, not universal benchmarks.

  • Prompt-injection defense is being treated as a harness stack. @dps describes four layers: train the model to resist, mark untrusted sources in the harness, run deterministic checks on the result, and keep an ensemble of classifiers outside the agent’s reach. Boris Cherny says aligned models alone are insufficient and credits prompt-injection probes plus auto mode, both enabled by default in his account, with solving the problem “in practice.” Copy the architecture; do not treat the claim as a guarantee.

🎬 GO DEEPER

  • Theo — How I Shipped 52 PRs (While On Vacation) — Study the remote Linux/worktree setup, the prompt design, the asynchronous PR triage, and the review-to-validation loop. The useful lesson is not the throughput headline; it is how much infrastructure Theo built to make verification cheap enough to keep merging.
  • Organizing Context in a Multi-Agent Harness — Read the worker/verifier/researcher examples and lift the role-specific routing rules into your own harness instead of passing the full conversation to every subagent.

Editorial take: The winning coding-agent architecture is a remote queue plus role-specific context, deterministic acceptance checks, and a rollout safety net; stronger models increase the value of those controls rather than replacing them.

Astra Raises the Ceiling; the Control Plane Decides What Ships
Summary
Coverage start
1 day ago
Coverage end
5 hours ago
Frequency
Daily
Published
4 hours ago
Reading time
4 min
Research time
2 hrs 40 min
Documents scanned
209
Documents used
17
Citations
28
Sources monitored
110 / 111
Insights
Skipped contexts
Source details
Source Docs Insights Status
Brent Traut 0 0
Lukas Möller 0 0
Jediah Katz 2 1
Aman Karmani 0 0
Jacob Jackson 0 0
Cursor Blog | RSS Feed 0 0
Nicholas Moy 0 0
Mike Krieger 0 0
Sualeh Asif 0 0
Michael Truell 0 0
Google Antigravity 2 1
Aman Sanger 0 0
cat 2 1
Mark Chen 4 1
Greg Brockman 14 0
Tongzhou Wang 2 0
fouad 0 0
Calvin French-Owen 0 0
Hanson Wang 2 0
Ed Bayes 0 0
Alexander Embiricos 0 0
Tibo 8 1
Romain Huet 4 0
DHH 19 4
Jane Street Blog 0 0
Miguel Grinberg's Blog: AI 0 0
xxchan's Blog 0 0
<antirez> 0 0
Brendan Long 0 0
The Pragmatic Engineer 0 0
David Heinemeier Hansson 0 0
Armin Ronacher ⇌ 9 2
Mitchell Hashimoto 0 0
Armin Ronacher's Thoughts and Writings 0 0
Peter Steinberger 0 0
Theo - t3.gg 56 10
Sourcegraph 0 0
Anthropic 0 0
Cursor 0 0
LangChain 0 0
Anthropic 0 0
LangChain Blog 0 0
LangChain 15 6
Cursor 2 1
Riley Brown 0 0
Riley Brown 10 0
Jason Zhou 4 0
Boris Cherny 6 1
Mckay Wrigley 3 0
geoff 12 1
Peter Steinberger 🦞 0 0
AI Jason 0 0
Alex Albert 0 0
Latent.Space 0 0
Logan Kilpatrick 0 0
Fireship 0 0
Fireship 0 0
Kent C. Dodds 🐨 17 3
Practical AI 0 0
Practical AI Clips 0 0
Stories by Steve Yegge on Medium 0 0
Kent C. Dodds Blog 0 0
ThePrimeTime 0 0
Theo - t3․gg 1 1
ThePrimeagen 7 1
Ben Tossell 0 0
swyx 0 0
AI For Developers 0 0
Geoffrey Huntley 0 0
Addy Osmani 1 1
Andrej Karpathy 0 0
Simon Willison 3 2
Matthew Berman 0 0
Changelog 0 0
Simon Willison’s Newsletter 0 0
Agentic Coding Newsletter 0 0
Latent Space 0 0
Simon Willison's Weblog 3 1
Elevate 0 0
Lukas Möller 0 0
Jediah Katz 0 0
Sualeh Asif 0 0
Mike Krieger 0 0
Michael Truell 0 0
Cat Wu 0 0
Kevin Hou 0 0
Aman Sanger 0 0
Nicholas Moy 0 0
Andrey Mishchenko 0 0
Jerry Tworek 0 0
Romain Huet 0 0
Thibault Sottiaux 0 0
Alexander Embiricos 0 0
xxchan 0 0
Salvatore Sanfilippo 1 1
Armin Ronacher 0 0
David Heinemeier Hansson (DHH) 0 0
Alex Albert 0 0
Logan Kilpatrick 0 0
Shawn "swyx" Wang 0 0
Jason Zhou 0 0
Riley Brown 0 0
McKay Wrigley 0 0
Boris Cherny 0 0
Ben Tossell 0 0
Geoffrey Huntley 0 0
Peter Steinberger 0 0
Addy Osmani 0 0
Simon Willison 0 0
Andrej Karpathy 0 0
Harrison Chase 0 0