Roadmap
Everything below is dated by priority, not calendar. If a feature has a date, that's because the release plan is real. Everything else moves when it's ready.
Legend: shipping
experimentalplannedNow
Work we're actively simplifying or tightening.
- Remove interaction modes and plan-mode UI. The
code/architect/askmode selector and the plan-mode panel both go away. One surface, one tool-approval policy. shipping - Model catalog as a first-class file.
docs/reference/models.yamlbecomes the single source the CLI and website both read.experimental - TUI behavior contract. Pin down scrollback, resize, tool-state rendering, and ASCII fallback in a single document so the behavior doesn't drift between releases. planned
- Session JSONL event schema. Typed events covering tool state transitions, file edits, runtime events, and errors.planned
Next
The shape is clear; the work isn't in main yet.
- Provider adapter contract.
ProviderAdapter+ProviderConfig+ModelConfig+CredentialStore. Custom providers viaadapter: openai+compatibility: <profile>. planned - Runtime boundary.
RunningCommandHandleinterface, runtime events in session logs, workspace path mapping docs. Prep work for cloud runtimes. planned - Docker sandbox polish. Mount ergonomics, background job handling, state preservation across sessions. experimental
- Web extraction flows. First-class pipelines for page → structured data, built on top of the existing web tools. experimental
Later
Directions we want to head once the foundations land.
- Cloud runtimes. E2B, Modal, Daytona, custom SSH or container workers. Same
CommandExecutorsurface; different backends.planned - Replay UI. A dedicated surface that reads
conversation.jsonland renders it step-by-step with diffs, tool-call collapse, and time scrubbing. planned - Provider marketplace / catalog refresh. Optional remote catalog fetch, user-submitted providers, bundled-vs-remote merge semantics.planned
Removed
These were in the tree and are coming out — don't plan around them.
- Interaction modes.
code/architect/askselector. - Plan-mode UI. The separate
/planssurface andPlanStore. - OTEL / Langfuse observability. JSONL sessions are the single durable log.