Context
Epic #13012 and ADR 0020 define the Agent Harness as three ordered product pillars:
- Fleet Manager / operate-your-fleet.
- Conversational app creation.
- Deploy plane.
Live decomposition now has strong H1 coverage: Fleet Manager is tracked by #13015, Electron shell/build-root is #13033, Extended-NL coordination is #13056, QT-grade docking is #13158, and multiple H1/docking leaves have already landed. The H2 product slice — a user chats with the harness and gets a live Neo widget by default — is still mostly present only in the parent epic and ADR prose.
This epic exists to give H2 its own coordination surface without stuffing #13012 with stale pseudo-subs.
Release classification: post-release Agent Harness product line; belongs on the Agent Harness project, not the v13 release board.
Problem Scope
The harness cannot stop at fleet operation. H1 proves the institution can be operated; H2 proves why a new user installs the product: they ask for a useful UI and receive a live Neo app surface rather than a generated artifact blob.
The canonical H2 demo from #13012 / ADR 0020 is deliberately small and high-signal: chat pane -> "build me a neo grid" -> a separate pane, capable of becoming its own window, containing a dummy grid such as five columns by N rows. The widget remains live-mutable afterward. That one gesture demonstrates the impedance match: LLM JSON output becomes Neo Body input, and the user gets co-inhabited runtime state instead of code pasted into an editor.
This is epic-shaped because it spans at least chat orchestration, blueprint emission, live component/window placement, transcript/evidence presentation, and persistence/write-through boundaries. Each deliverable leaf should still be one-PR-sized and linked natively under this epic.
Intended Solution Shape
H2 should produce the first end-to-end conversational creation path for the Agent Harness:
- A user-facing chat/work surface accepts a natural-language request and preserves transcript context without using unsafe rendered HTML.
- The agent output path emits a constrained, inspectable Neo component blueprint rather than arbitrary code execution.
- The first widget target is intentionally narrow: a basic Neo grid or grid-like table with deterministic sample data, theme-compatible visual treatment, and stable dimensions.
- The created widget appears in a harness pane that can participate in the existing dock / popup / multi-window model instead of being a static preview card.
- The live object remains editable by subsequent agent/user interaction, with persistence/write-through handled by leaf tickets that can cite the appropriate Agent OS, Neural Link, and Node-git boundaries.
- Evidence must distinguish a rendered demo from a genuine live component instance that can be inspected or mutated through Neo substrate.
The epic body intentionally does not enumerate the leaf list. Subs will be created and linked incrementally as the shape converges.
Architectural Reality
- ADR 0020 names conversational app creation as pillar 2 and defines the canonical chat -> grid -> own-window demonstration.
- #13012 carries the product bar: Claude-Desktop-class single-agent UX is the floor; the category bet is the flat-peer institution and co-inhabited live instances.
- #13018 / streaming markdown VDOM already constrains transcript rendering toward safe VDOM, not
innerHTML.
- #13022 / the harness visual system seeded theme and state tokens for settings, chat, transcript, and grid-pane surfaces.
- The docking/multi-window substrate has been decomposed separately through #13025, #13028, #13030, #13158, and the dock-zone contract; H2 should consume that work rather than inventing another pane/window model.
- Neural Link and the Agent OS already provide mutation and runtime-introspection substrates; H2 leaves must route through those boundaries rather than building a parallel app generator.
Source Mapping
| Source authority |
H2 disposition |
| #13012 pillar ordering |
This epic owns pillar 2: conversational app creation after the Fleet Manager foundation. |
| ADR 0020 canonical demo |
The first proof is the chat -> Neo widget -> live pane/window path. |
| #13022 visual system |
H2 surfaces consume the shared settings/chat/transcript/grid-pane visual contract. |
| Dock/multi-window line |
H2 panes consume existing dock/popup/window substrate instead of forking layout semantics. |
| Topological Locking guardrail |
H2 starts single-writer unless a leaf explicitly introduces multi-writer Scenario-C work and names its lock boundary. |
Decision Record impact
Aligned with ADR 0020. No ADR amendment expected unless the H2 implementation changes the product ordering, source placement, or live-object/co-habitation model.
Out of Scope
- Fleet Manager H1 implementation; that remains #13015 and its linked leaves.
- Electron shell/build-root work; that remains #13033.
- Deploy plane / monetization; that is pillar 3 and should get its own coordination surface when activated.
- Public performance/endurance claims; those remain bound by the benchmark guardrail.
- Partner-private workflows or client-specific UI. Public H2 work must serve a second unrelated team.
Avoided Traps / Rejected Shapes
- Artifact preview instead of live component: rejected. H2 must prove a live Neo object, not a screenshot or static generated code block.
- Arbitrary code generation as the first path: rejected. The first widget should use constrained component blueprints so the substrate remains inspectable and safe.
- A second docking/window model: rejected. H2 consumes the existing dashboard/dock/popup line.
- Bundling the whole assistant product into one leaf: rejected. This epic coordinates leaves; individual PRs close leaf tickets, not the epic.
Related
Duplicate / Claim Sweep
Live latest-open sweep: checked the latest 20 open issues immediately before creation on 2026-06-15T14:07Z; no equivalent H2 / first-widget / conversational-creation epic was present. Adjacent open issues included #13012, #13015, #13033, #13056, #13158, #13247, #13287, and active Fleet Manager / Neural Link leaves.
Targeted live GitHub searches: "first Neo widget", "First Neo Widget", "chat grid", and "Conversational app creation" found the parent epic / adjacent historical surfaces but no dedicated current H2 sub-epic.
A2A in-flight sweep: the mailbox MCP is not exposed in this Codex surface, so I queried the repo-local Memory Core graph read-only for the latest 30 MESSAGE nodes by sentAt. No [lane-claim] or [lane-intent] for H2 conversational app creation / first widget was present. The only relevant fresh coordination message was Grace's #13347 peer-role validation, which supported the already-closed one-shot Codex harness disposition and does not overlap this H2 scope.
Semantic KB sweep: ask_knowledge_base(query='first Neo widget conversational app creation chat grid Agent Harness H2 ticket duplicate', type='ticket') returned no H2 duplicate; the answer surfaced only older unrelated assistant-memory/grid history.
Exact repo/content sweep: rg for first-widget / chat-grid / conversational-creation terms found #13012 / ADR 0020 / #13022 references and no dedicated current sub-epic.
Origin Session ID: 019ec8a7-1f8e-75a3-b223-fe59cc444776
Retrieval Hint: "Agent Harness H2 conversational app creation first Neo widget chat grid live blueprint pane own window"
Context
Epic #13012 and ADR 0020 define the Agent Harness as three ordered product pillars:
Live decomposition now has strong H1 coverage: Fleet Manager is tracked by #13015, Electron shell/build-root is #13033, Extended-NL coordination is #13056, QT-grade docking is #13158, and multiple H1/docking leaves have already landed. The H2 product slice — a user chats with the harness and gets a live Neo widget by default — is still mostly present only in the parent epic and ADR prose.
This epic exists to give H2 its own coordination surface without stuffing #13012 with stale pseudo-subs.
Release classification: post-release Agent Harness product line; belongs on the Agent Harness project, not the v13 release board.
Problem Scope
The harness cannot stop at fleet operation. H1 proves the institution can be operated; H2 proves why a new user installs the product: they ask for a useful UI and receive a live Neo app surface rather than a generated artifact blob.
The canonical H2 demo from #13012 / ADR 0020 is deliberately small and high-signal: chat pane -> "build me a neo grid" -> a separate pane, capable of becoming its own window, containing a dummy grid such as five columns by N rows. The widget remains live-mutable afterward. That one gesture demonstrates the impedance match: LLM JSON output becomes Neo Body input, and the user gets co-inhabited runtime state instead of code pasted into an editor.
This is epic-shaped because it spans at least chat orchestration, blueprint emission, live component/window placement, transcript/evidence presentation, and persistence/write-through boundaries. Each deliverable leaf should still be one-PR-sized and linked natively under this epic.
Intended Solution Shape
H2 should produce the first end-to-end conversational creation path for the Agent Harness:
The epic body intentionally does not enumerate the leaf list. Subs will be created and linked incrementally as the shape converges.
Architectural Reality
innerHTML.Source Mapping
Decision Record impact
Aligned with ADR 0020. No ADR amendment expected unless the H2 implementation changes the product ordering, source placement, or live-object/co-habitation model.
Out of Scope
Avoided Traps / Rejected Shapes
Related
learn/agentos/decisions/0020-agent-harness-concept.md.Duplicate / Claim Sweep
Live latest-open sweep: checked the latest 20 open issues immediately before creation on 2026-06-15T14:07Z; no equivalent H2 / first-widget / conversational-creation epic was present. Adjacent open issues included #13012, #13015, #13033, #13056, #13158, #13247, #13287, and active Fleet Manager / Neural Link leaves.
Targeted live GitHub searches:
"first Neo widget","First Neo Widget","chat grid", and"Conversational app creation"found the parent epic / adjacent historical surfaces but no dedicated current H2 sub-epic.A2A in-flight sweep: the mailbox MCP is not exposed in this Codex surface, so I queried the repo-local Memory Core graph read-only for the latest 30
MESSAGEnodes bysentAt. No[lane-claim]or[lane-intent]for H2 conversational app creation / first widget was present. The only relevant fresh coordination message was Grace's #13347 peer-role validation, which supported the already-closed one-shot Codex harness disposition and does not overlap this H2 scope.Semantic KB sweep:
ask_knowledge_base(query='first Neo widget conversational app creation chat grid Agent Harness H2 ticket duplicate', type='ticket')returned no H2 duplicate; the answer surfaced only older unrelated assistant-memory/grid history.Exact repo/content sweep:
rgfor first-widget / chat-grid / conversational-creation terms found #13012 / ADR 0020 / #13022 references and no dedicated current sub-epic.Origin Session ID: 019ec8a7-1f8e-75a3-b223-fe59cc444776
Retrieval Hint: "Agent Harness H2 conversational app creation first Neo widget chat grid live blueprint pane own window"