when code becomes cheap, verification becomes the work.
tests, constraints, and one-off checks that once weren’t worth the time can now be added almost as quickly as the code they verify.
abundant code requires abundant proof.
I’m significantly older than you. I started coding in the late 60s. My current strategy is to not read any of the code written by my agents. That’s the only way I can take advantage of their productivity. What I do instead is to surround the agents with extreme constraints. Unit tests, gherkin tests, QA procedures, quality metrics, mutation testing, test coverage, and a plethora of others. In the end, I have very high confidence in the code they produce because they’ve had to run the gauntlet of all of my constraints and tests.
went from warp → ghostty → cmux
warp had too many performance issues for me. cmux's vertical tabs and performance are just really good.
think i've found my agent terminal of choice.
Honestly, this is the most accurate diagram I've seen.
Waterfall: You plan for 18 months and deliver exactly what nobody needs anymore.
Agile: You deliver something usable at every step, but the CEO keeps asking, "Where's the car?"
AI: You get the car on day one. It has six wheels, the doors are on backwards, and it has a rocket launcher. You spend more time making it yours than actually "building"; it's shaping. owning. verifying. That's what the best AI developers do now. They don't build. They shape and own.
most people don’t need better prompts.
they need better context architecture.
prompting is a sentence.
context engineering is a system:
• memory that actually persists
• retrieval that doesn’t hallucinate relevance
• tools with clear boundaries
• feedback loops that improve outputs over time
if your ai works once but not reliably,
you don’t have a prompting problem.
you have a context problem.
build an agent that speaks your UI.
your charts. your forms. your seat maps.
multi-turn, streaming, interactive.
introducing tambo 1.0, the open-source generative UI toolkit for react.
getting pushback from a coding agent after giving it an explicit directive feels like collaborating with a teammate in a way i haven't felt with AI before. just happened with opus 4.5.
to be clear: i've gotten pushback when asking about solution paths or thinking through a problem, but not when i'm in the driver seat telling the agent to execute.
@addyosmani@forgebitz i've come around a lot to using MCPs alongside Agent Skills. when they work well together, it's so easy to stay in flow while doing several tasks in parallel on the terminal.
psa: if you're using mcp servers in claude code, check if tool search is actually on.
it's supposed to auto-enable but wasn't for me.
before: 3 mcp servers eating 53.6k tokens (27% of my context window). with the compaction buffer, nearly 50% gone.
after: 12% total usage. 87% free. tools load on demand.
in ~/.claude/settings.json:
"env": { "ENABLE_TOOL_SEARCH": "true" }
run /context to see where your tokens are going.
i use @evernote for all my notes and wanted it inside @AnthropicAI claude code, so i built an agent skill to search/read/create/update notes. check out the link in the thread.
The better the plan, the better your agents perform.
Long-horizon agents break not because they can't plan. They break because they plan over entangled contexts.
The default approach to LLM agent planning falls into two camps.
Step-wise planning (like ReAct) interleaves reasoning and acting but makes short-sighted decisions. One-shot planning generates complete plans upfront but becomes brittle when execution errors occur.
But both share the same flaw: a single, growing execution history that mixes information across multiple sub-tasks.
This new research introduces Task-Decoupled Planning (TDP), a training-free framework that replaces entangled reasoning with explicit task decoupling.
How does it work?
A Supervisor decomposes tasks into a directed acyclic graph (DAG) of sub-goals. A Planner and Executor then operate with scoped contexts, reasoning only over the active sub-task.
This reminds me of the new blog published by Cursor, which uses a similar tactic where planning is decoupled.
When something goes wrong, replanning stays local. Independent decisions remain untouched.
Isolating context, decisions, and error correction at the sub-task level prevents local failures from cascading across the entire workflow.
On TravelPlanner, TDP achieves the highest hard-constraint micro pass rate (32.5%) under DeepSeek-V3.2. On HotpotQA, it reaches 85.88% delivery accuracy.
On ScienceWorld, it matches or exceeds strong baselines across both GPT-4o and DeepSeek models.
TDP reduces token consumption by up to 82% compared to Plan-and-Act while improving task outcomes. On HotpotQA, it uses just 1,747 output tokens versus 9,929 for the baseline. Fewer tokens, better results.
Sub-task decoupling offers a unified mechanism that works across heterogeneous demands like multi-hop reasoning, interactive environments, and constraint-heavy tool planning. You get all of this without sacrificing performance or efficiency.
Paper: https://t.co/0hOsV3wFsZ
Learn to build effective AI agents in our academy: https://t.co/JBU5beIoD0
@kieranklaassen do you commit every single plan into source control?
i’m hesitant to do that because i feel like it would bloat up the repo.
i’ve found a good middle ground by committing feature-level plans.
wondering if there’s a better place for lower level plans? perhaps github issues?