feat(native): add OpenCode terminal agent - #5562
Conversation
1c8e58c to
f8900bd
Compare
There was a problem hiding this comment.
All reported issues were addressed
Tip: cubic can generate docs of your entire codebase and keep them up to date. Try it here.
Re-trigger cubic
f8900bd to
292cd8f
Compare
There was a problem hiding this comment.
All reported issues were addressed across 50 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
All reported issues were addressed across 9 files (changes from recent commits).
You’re at about 91% of the monthly reviewed-line limit. You may want to disable incremental reviews to conserve quota. Reviews will continue until that limit is exceeded. If you need help avoiding interruptions, please contact contact@cubic.dev.
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
286d2bc to
62cc545
Compare
7088d66 to
a5e9757
Compare
|
@cubic-dev-ai review this |
@tlgimenes I can't start this review because your workspace has reached its free monthly review limit. cubic has reviewed 42,059 of the 40,000 allowed lines of code this month. Reviews resume on 1 September 2026 (in 29 days). Paid plans include much higher monthly review limits. Upgrade now to resume reviews. To help optimise your usage, you can tune cubic to get the most out of your usage limits:
|
62cc545 to
be2a639
Compare
1ca9589 to
2279a39
Compare
2279a39 to
3846114
Compare
|
Consolidation note: this PR was automatically marked merged when its exact validated head (3846114) was fast-forwarded into the base branch for #5557. No separate change landed on main; #5557 is now the sole open PR and contains the full three-agent implementation. This PR remains as review-history traceability. |
Summary
Stacked on #5557. Adds OpenCode as the third native-only xterm/PTY coding agent and hardens the shared native terminal experience for Claude Code, Codex, and OpenCode.
Dependency: review and merge #5557 first. This PR's review diff is
feat/native-terminal-agents...feat/native-opencode-agent.What changed
cmsMCP, exact--sessionresume, provider-owned model selection, and provider-owned titles.Hosted/native boundary
All CLI-agent renderer behavior is selected only by the native Tauri runtime. Hosted web continues to use structured Decopilot chat; it never exposes OpenCode or ships the terminal protocol in its production bundle.
Validation
Completed on the final rebased stack:
bun run test— 5,689 passed, 0 failed across 617 files.cargo test --workspaceandcargo clippy --workspace --all-targets -- -D warnings.bun run check,bun run lint,bun run knip,bun run fmt:check, andcargo fmt --all -- --check.Tauri DevTools acceptance exercised the final three-agent picker, keyboard wrapping, backgrounds, real Claude prompt/title/status/replay, and real Codex YOLO startup without trust/hook/Desktop notices. OpenCode's installed 1.18.10 binary was correctly marked
try anywaybecause its existing pre-1.18 user database has an incomplete upstream migration; a fresh isolated 1.18.10 state enters the real TUI, while the product's fail-closed probe prevents a broken blank session.Review feedback
All 23 existing review threads are resolved. The four hosted-selector findings became obsolete under the strict Decopilot-hosted / terminal-native split; the remaining findings have fixes and regression coverage in the final commits.
Migration notes
Native SQLite migrates from schema version 11 to 12 by adding
rejected_provider_session_id. The migration clears legacy null-checkpoint barriers while preserving confirmed provider checkpoints. There is no hosted Postgres migration or hosted chat contract expansion.Architecture and detailed validation evidence are in
apps/native/docs/terminal-agents-plan.md.