The Whiteboard Guy and Factory Foreman @warpdotdev

Ordering more markers
Joined September 2018
We made a skill for assessing the risk of merging a PR: /merge-risk This addresses the code review bottleneck by helping devs trust the agent for lower risk changes. It grades risk across 5 categories: alignment, impact, verification, rollback cost, and error detection. - Alignment: does code follow the PR description and related tickets? - Impact: what is the blast radius, and does it touch sensitive code paths? - Verification: does the change include end-to-end verification? This means computer use, screen recordings, before/after screenshots... going beyond unit test coverage. - Rollback cost: once it's shipped, how trivial is it to revert? @mattpocockuk calls this a "two-way door" vs. a "one-way door." - Error detection: are errors reported, logged, or simply swallowed? Try it out: > npx skills add warpdotdev/common-skills --skill merge-risk
39
36
7
922
91,790
Ben Holmes retweeted
Want better quality output from your agent? Give it a way to verify its own work. Love what Warp is doing here: every agent gets a computer and brings back a video of what it did. I do something similar in my workflow - on top of E2E tests, Claude gives me recorded videos + screenshots as part of the evidence work is "done". My bet is verification becomes one of the most important problems to work on this year.
verification is the biggest bottleneck for coding agents right now according to @addyosmani. we @warpdotdev have put a lot of thought into building a good computer-use tool for Warp Factories. every agents gets a computer to navigate the apps they built, take screenshots and recordings, and post them back for human review. 3-4mins of activity get edited down to 15 clips stitched together with cursor clicks, mouse animations, and key presses. we've been able to dramatically cut our time to merge and unlocked faster iteration + review cycles, especially for projects that are hard to mock out locally!
28
10
164
8,776
Engineering is now 20% prompting, 80% tuning the agents that execute on the prompts
Position software factories not as a “product,” but as an infra platform upon which everyone is expected to do “factory engineering.” Factory engineering is work to make internal factories better. That means improving the skills, models, and context that drive engineering throughput. It means encouraging engineers to build automations for their chore work. It means giving them the tools to score and benchmark factory workflows, and empowering them to use agents to build self-improvement loops. It means that everyone owns lowering factory costs and improving factory ROI. If you use a platform like Warp Factories, all of this tooling comes built-in, but beyond the tooling “factory engineering” is really a mindset.
8
2
1
26
1,593
Stop asking agents for text summaries of a PR. They're capable of so much more: - Architecture diagrams to visually explain the change. Could be ascii, mermaid, HTML, or animated walkthroughs. /show-me is a great starting point. - Screen recordings verifying the change end-to-end. Most harnesses can do this now with Chrome DevTools or computer use. Warp Factories will auto-edit video and highlight cursor clicks as well. - Planning documents when humans were in the loop, checked in as code. This is optional, but a product spec explaining the purpose and expected user flow will a) guide the agent to better screen recording verification, and b) help the reviewer when looking at another engineer's work. Warp Factories shows all artifacts connected to an agent session to make these easy to find.
22
2
2
155
12,797
I met a team of devs regularly zipping up Claude and Codex sessions from their computers and shipping them to a shared S3 bucket. Why? Because collecting data on agent convos is that valuable. I think shared cloud sandboxes are the way though to avoid all the zipping 😄
We should stop keeping all of our agent conversations local. They should be stored in a shared place. This lets you do some powerful things: - Schedule self-improvement agents to review runs and pull out failure modes worth fixing - Replay past conversations against different models for benchmarking I met a team of devs zipping up Claude and Codex sessions from their computers and shipping them to a shared S3 bucket. That's... a start 😄 But really, all agent sessions should happen on a single source (like a cloud runner) so that conversation traces are stored together by default. It's why Warp Factories uses cloud sandboxes and makes sessions available via API. We also added an inbox view to see which conversations need your attention, which is quite convenient:
7
25
2,317
Stop reviewing agent PRs without verification! If there isn't a screenshot or screen recording, it's not worth your time. 10x more important than optimizing your CI checks.
verification is the biggest bottleneck for coding agents right now according to @addyosmani. we @warpdotdev have put a lot of thought into building a good computer-use tool for Warp Factories. every agents gets a computer to navigate the apps they built, take screenshots and recordings, and post them back for human review. 3-4mins of activity get edited down to 15 clips stitched together with cursor clicks, mouse animations, and key presses. we've been able to dramatically cut our time to merge and unlocked faster iteration + review cycles, especially for projects that are hard to mock out locally!
15
8
1
204
11,329
We've been running our software factory out of this config format. Calling it "Terraform for agents." I feel like this should become a standard?
Software factories should be configured as code. With Warp, your factory lives in a repo as markdown and YAML files, so your agents, automations, runners, benchmarks, and even custom model routers are all in one place. Here, I walk through a typical Warp factory config and show how it lays the foundation for self improvement! It's pretty awesome DX.
6
1
62
5,412
More on the config format if you're curious: warp.dev/factories#configura… 🔖
4
579
We should stop keeping all of our agent conversations local. They should be stored in a shared place. This lets you do some powerful things: - Schedule self-improvement agents to review runs and pull out failure modes worth fixing - Replay past conversations against different models for benchmarking I met a team of devs zipping up Claude and Codex sessions from their computers and shipping them to a shared S3 bucket. That's... a start 😄 But really, all agent sessions should happen on a single source (like a cloud runner) so that conversation traces are stored together by default. It's why Warp Factories uses cloud sandboxes and makes sessions available via API. We also added an inbox view to see which conversations need your attention, which is quite convenient:
32
3
8
114
12,015
If you're looking for a good factory automation, start here: Have an agent pick up one idle issue, once per day. Heck, once per week. And if the PRs are bad, don't pause the automation! Make it better. Add UI verification, set better test guidelines, or add static checks.
Have an automation set up to explore and work on issues/PRs that haven’t been touched in a while There’s some stuff I’ve opened up weeks ago and never ended up driving to completion, but it’s nice to have your factory pick it up without asking A little bit of proactive magic goes a long long way
7
3
56
3,836
Code diffs aren't the only measure of agent quality. Efficiency matters too! Ex: We found agents spinning their wheels working around problems in our test harness. This silently wasted hundreds of tool calls in aggregate. I presented a system to detect this at @aiDotEngineer
9
3
38
2,899
I think "factory engineering" will be the next skillset that developers focus on. That means tuning the agent orchestration, the automations, the skills, and everything else driving your agents. We apply this mindset to our own factory, and we're seeing real results:
Three months since adopting software factories, we’re at 40% more PRs merged and 67% lower cost per PR. We got there by measuring agent quality, benchmarking models, and using self-improvement loops to make our factory better. Here's how you can do this too in Warp Factories:
11
1
2
59
7,515
Here are a couple samples from our own projects, where we've made /merge-risk into a PR automation. In the first, /merge-risk flagged a PR with wide-ranging impact and missing e2e verification. The fix was to break into manageable stacked PRs and to include before/after screenshots of the app. In the second, /merge-risk caught a driveby fix made by the agent that fell outside the PR's scope. Documenting this could make the change low-risk without line-by-line code review. Curious to fine-tune these dimensions across more PRs. It's open source, so please try it out and share your findings! github.com/warpdotdev/common…
2
8
4,085
There are some really interesting ideas in here for software factory devs: scoring, self-improvement, and benchmarking. - Scoring: measure *everything* agents are doing. Quantitative numbers like cost-per-PR, and qualitative scores like efficiency and code quality via LLM as a judge. These flip agents from vibes-driven to metrics-driven. - Self-improvement: have agents watch all of the scores you're measuring and suggest improvements. Are agents always inefficient due to wasteful tool calling in your test harness? Have an agent PR a fix to the code. Is cost-per-PR higher than expected? Have the agent propose a model change, which brings me to... - Benchmarking: change the model for one agent in your setup, and replay a sample of previous tasks to see how that model change performs. Most of our 67% reduction in cost-per-PR came from tweaking model selections! And yes, Warp Factories includes all of these as part of the platform :)
Three months since adopting software factories, we’re at 40% more PRs merged and 67% lower cost per PR. We got there by measuring agent quality, benchmarking models, and using self-improvement loops to make our factory better. Here's how you can do this too in Warp Factories:
10
2
1
174
10,663
Great livestream for software factory developers 👀
3
37
3,588
i'm live chatting software factories with @dexhorthy -- come check it out
1
2
15
1,848
I like @hudaman's framing on software factories from our recent discussion. It's systems-level engineering to tune agents to write better software. They call it a "code machine"
2
3
4
50,873
At @aiDotEngineer, I presented our skill called /skill-doctor. It's a skill to improve your agent skills. It aggregates your past agent sessions, grades their quality, and propose improvements to fix common failures.
12
10
117
6,098
My main takeaway: An engineer's job is at the team level, not the personal level. We should be working together to tune the code architecture, skills, model selections, and everything else to make agents write better code. It's not about personal setups and prompting hacks
Software engineers have been through a lot of change in the past two years, transitioning from writing code by hand to steering agents via local interactive prompting, the current paradigm. The next paradigm, software factories (where agents do more and more autonomous work) is particularly challenging. The metaphor of “factory” is kind of a bummer. It feels like your job as an engineer is either working on an assembly line, or building the assembly line that obviates the need for your talents. If you use the “AI teammate” metaphor (which I also dislike), then it feels like engineers are becoming managers of sycophantic and somewhat inept junior engineers. For folks who take pride in the craft of building, this all feels like commoditization of software creation. I disagree with this outlook. On our team, engineering involves two very important challenges today: building the product, and now, building the factory that builds the product. First, our engineering team is still responsible for the quality and usefulness of the product – this cannot be delegated to agents. Humans are uniquely positioned to know what to build, how the pieces should fit together, what the product experience ought to be, what constitutes good design. There are two caveats: Some types of product work that don’t need any human input at all and can be purely automated. (Fixing server crashes, simple bugs, dependency upgrades, etc.) The second caveat is that product engineering will work differently. Rather than engineers working locally with their own bespoke setups, they will hand off as much of the software lifecycle as possible to the factory. All of this work will be inherently visible and measurable, and that’s a feature, not a bug. Developers should expect to measure and iterate on other aspects of how they use the factory, including how much their agents ship and at what cost. Engineers could view this as a drag, but they also can view it as a game, and winning that game means shipping more for less, using an engineering mindset to improve. This brings me to the second job of the engineer, which is to design the factory itself. We call this factory engineering. It consists of measuring the performance of your factory. This needs to be done with an engineering mindset – you don’t adjust your factory on vibes; you measure, test, benchmark and then improve. At Warp we make it explicit that the expectation of engineers is not just to build products, but to improve factories. We envision both jobs as being the responsibility of all engineers to make it clear that factory engineering is now part of software engineering. On our team, the folks who like it most are senior engineers who love hard systems problems, who enjoy optimizing and debugging performance issues. It requires a lot of thought and testing and patience. We lean into it as a new skill to learn. Ultimately, this lets us ship better products more quickly, which has always been our mission.
12
16
1
216
9,704