251.md
July 13, 2026 · View on GitHub
Episode 251: Desktop MVP Spec
Video Transcript
[00:00] Speaker: Happy Monday! Let’s ship some product. So this is coming along—our new desktop app.
[On-screen text from terminal/IDE]:
- One mutating AFK lane with an active owner, two disjoint mutating lanes plus two read-only.
- One active mutation lease per work-packet.
- Progress Visibility: ui updates, OpenAgents completion, redefined and rerun-completion, blocked work, and non-codex-only execution.
- OpenAgents and Pylons as separately claimed lanes—not silent same-packet fallbacks.
- Dogfood collision/fallback metrics and per-packet receipts.
- Project catch-up on-intersection: do not overclaim: exact-thread resume requires pinned compatibility proof, otherwise the workroom records a repository-state and halts.
Validation passed:
docs/mvpspec validationdocs/mvproot validationProductSpectests: 18 passed, 0 failedv-nativetypecheck:- Main pre-push policy checks
[00:03] Speaker: And before we get too fancy with all the voice and stuff that I want to add, I want to just do a base hit, get out something basic that provides immediate value, and we can iterate on and get some user feedback, you know, today-ish.
[On-screen text from X (formerly Twitter) post by @OpenAgents]:
OpenAgents (@OpenAgents) Using Codex/Sol in OpenAgents to improve OpenAgents feels_good_man Now planning voice mode: no start/stop/wait-for-transcription, just one toggle on bidirectional stream so you just talk and see the right actions happen I've got a ton of edits to make to the UI and want to just rattle them off and have it update live May do basic free version of this and paid version with best TTS/STT for high-quality Jarvis-y replies Video soon
[00:21] Speaker: So we're going to do a version of this focused just on Codex—it's a wrapper for Codex only, phase one. And we did a bunch of research, which you're welcome to look through in our OpenAgents mono-repo: docs/teardowns. Just basically little reverse engineering docs of a bunch of different apps, like the ChatGPT app, Claude Code, Claude Desktop, how they use sub-agents, OpenCode, Cursor, Executor, and OpenChamber. Just stuff that's kind of in the ballpark of what we're building.
[00:56] Speaker: And one thing I really like is this product called OpenChamber. It’s like an opinionated desktop app over OpenCode. So OpenCode now has its own desktop app; it’s not quite at full parity with the terminal. But these guys went ahead and built their own app to kind of wrap OpenCode, and it’s a solid product that you can use with mobile sync and all this stuff. So I basically want to do this exact thing but for Codex. I just don't want to have to be following Thibault and people on Twitter to see what’s going on with the sub-agents and stuff—I just want to build my own opinions about how things should go into the product.
[01:31] Speaker: So essentially, like, an easy, good version of Codex which can support my own rapid product build-out ambitions. One tool for this that I want to add as sort of first-class support for is this new Product Specification from this AI builder/investor guy, Gokul. Just kind of his improved version of a PRD for agentic product development.
[On-screen text from X post by @gokulr]:
PRODUCTSPEC: OPEN STANDARD FOR SOFTWARE INTENT tl;dr ProductSpec is the open standard for software intent before implementation. The core sections are simple:
- Problem
- Hypothesis
- Scope
- User Experience
- Acceptance Criteria
- Success Metrics
[02:00] Speaker: And so we’re kind of adding support for that in our specification. So I went ahead and created our own ProductSpec meeting that standard. So we’re like really dog-fooding this from day one. We are going to have the OpenAgents MVP that we build today-ish use this Product Specification, and then within the actual product, it’s going to be basically like a Codex wrapper plus helping chew through, like define and rapidly implement product specs like this. That’s a good starting point because that’ll let us rapidly build essentially everything else.
[02:40] Speaker: So we have right now in our open-source OpenAgents repo one open issue for like the entire thing, the epic, with some suggested execution order. So this is what I’ll have my agents doing for the rest of today.
[On-screen text from GitHub Issue #8756]:
MVP-01 — Ship and prove the ProductSpec-native OpenAgents Desktop Codex Workroom Execution order:
- MVP-0: ProductSpec authority: guided valid ProductSpec, exact revision/digest and criterion IDs, accepted plan, durable criterion-addressed packets, and the hash-pinned product-owned productspec-work skill with no skill/model approval or verification authority.
- MVP-1: useful local workroom: signed local-first Desktop app, explicit repository grant, named isolated Codex session, causal typed timeline, questions/approvals/control signals, complete child graph, and bounded file/Git review.
- MVP-2: recovery and truth: durable admission, exact retry, gap repair, renderer reload, app restart, explicit fault-tolerant diagnostics, and no duplicate work; silent retargeting, flattened topology, folder-wise reporting, etc.
- MVP-3: exact release journey: satisfy CW-AC-01 through CW-AC-18 on the exact signed artifact, including update, rollback, reinstall, cleanup, and public-safe evidence.
[02:58] Speaker: And let’s kind of step through a little bit about what we've designed thus far. So—and this is a one of the examples of the ProductSpec. All right: Author OpenAgents, linked repo, custom sections, tool metadata, the epic... this is all super cool.
[On-screen text from openagents-codex-workroom-mvp.product-spec.md]:
Problem: Codex is a capable local agent engine, but its execution power does not by itself provide the OpenAgents product: one signed, durable place to find work, understand typed turns and child agents, resolve blockers, inspect repository effects, and return after restart without guessing what is authoritative. It also lacks an easy native path from product intent to systematic agent work: users should be able to define a ProductSpec, approve a plan derived from its acceptance criteria, and see agents work those criteria through evidence.
Hypothesis: If OpenAgents ships a signed, local-first Desktop workroom that uses Codex's app-server as its only model/tool engine and surrounds it with metadata-first session navigation, a typed causal timeline, durable controls and blockers, complete child-agent topology, adjacent file/Git review, and honest restart recovery—and makes ProductSpec the native unit for guided authoring, accepted decomposition, agent allocation, and evidence-backed completion—then developers will complete and resume consequential Codex tasks inside OpenAgents without needing an OpenAgents account or falling back to another Codex interface.
[04:40] Speaker: But don't forget also: sexy, cool StarCraft UI, okay? With clicky things like—hold down—ooh, ooh, ooh! I’m holding down command 1, 2, 3, 4, 5... I just want to like, grrr, clicky-clicky, you know? StarCraft clicky-clicky. Gotta add that here.
[04:55] Speaker: All right, Scope: In... ooh, we don’t need to read all this, but yeah: signed and notarized OpenAgents Desktop artifact for the first supported macOS target. This is all Electron, so I can add support for the other systems, I think, pretty easily. Local-first use without—so this first version, there’s no OpenAgents account. Data’s not going anywhere; it’s all local to you. We'll get creative later with what connects into the data market, all opt-in, but just local, basic, no bullshit, no account. You open it up, it works.
[05:26] Speaker: All right, one compatible host-owned Codex app server and one named isolated Codex account. It'll just work with your existing Codex, whatever you have logged in—that's what we'll start with. Blah blah blah, create an artifact, digest the product spec and spec revision, edit diff, user confirmation for intent revisions... yeah, and there's a lot here, but we'll probably try to err on the side also of having it feel as automatic as possible. Like, I want there to be sort of power-user full dashboard where I can dive in to see exactly what decisions the sub-agents are making about things, but overall I should be able to just literally voice-vibe to my OpenAgents app the stuff that I want, see the product spec get created, and then see the agents go do it and give me—and then ideally give me some levers around: do I want to just connect all of my connected accounts? Like, if I have multiple ChatGPT accounts, multiple Claude Code accounts, do I want to go like super-fast, burn tokens? Just a few dials about, you know, cost-efficiency things wrapping Codex—I think that would be a great first deliverable.
[06:30] Speaker: Okay, so we're not going to do Claude, Grok, or any other generic providers yet. We'll add those or explore adding those in a second pass, probably based on user demand. If our first users say "Hey, add Claude," then we'll prioritize that. But let's see what people actually want.
[06:47] Speaker: Cut all this stuff. Okay, User Experience: A developer installs OpenAgents Desktop and reaches a useful local workroom without creating an OpenAgents account. The app either shows ready-named Codex capacity or one precise prerequisite. The developer grants a repository, then creates a product spec conversationally or opens an existing one. The workroom shows validation at the relevant section, an exact revision/digest, and a reviewable plan derived from the acceptance criteria. After the developer accepts that plan, its work packets become the units Codex agents execute.
[07:18] Speaker: Blah blah blah, looks good. Acceptance Criteria for the different sub-issues... mm-hm. Success metrics! Ooh. Metric: opted-in first launches creating or opening a valid spec, accepting a plan, and starting its first criterion within 15 minutes. Metric: qualifying Codex tasks reaching one reviewed diff and terminal outcome without opening another Codex interface. Metric: accepted ProductSpec plans whose work packets all retain exact revision criterion and terminal evidence links. Metric: activated developers starting a second durably admitted Codex task within seven days. Metric: confirmed incidents where the workroom showed completed without the matching terminal outcome and review post-image—target: zero. Hey, metrics!
[08:09] Speaker: Risks: Blah blah blah, you figure that out, agents. Open questions: is a bundled pinned Codex binary the only supported MVP posture, or may a separately installed compatible app-server...? Yeah, I'm not going to think about that stuff right now. Owner gates, sure sure sure, receipts, promise links... we'll do that later.
[08:31] Speaker: Okay, this is great. We’re going to feed this to the agents. You’re going to watch it in the repo as they go over the course of today. Fingers crossed later this afternoon or at the latest late tonight, we’ll do a first build, I think, of all of this and get y’all’s feedback. See ya soon!