| # Agent Canvas β Testing Matrix |
|
|
| **Priority key:** P0 = must pass before any release Β· P1 = must pass before GA Β· P2 = best-effort |
|
|
| --- |
|
|
| ## Install Γ OS Γ Agent |
|
|
| Each cell = smoke test: install β onboard β start conversation β agent replies. |
|
|
| | | **macOS** | **Linux** | **Windows** | |
| |---|:---:|:---:|:---:| |
| | **npm β OpenHands** | β | β | β | |
| | **npm β Claude Code** | β | β | β | |
| | **npm β Codex** | β | β | β | |
| | **npm β Gemini CLI** | β | β | β | |
| | **npm β Custom ACP** | β | β | β | |
| | **Docker β OpenHands** | β | β | β | |
| | **Docker β Claude Code** | β | β | β | |
| | **Docker β Codex** | β | β | β | |
| | **Docker β Gemini CLI** | β | β | β | |
| | **Docker β Custom ACP** | β | β | β | |
|
|
| --- |
|
|
| ## Automations Γ Install Γ Agent |
|
|
| Requires full stack (automation backend running). |
|
|
| | | **npm** | **Docker** | |
| |---|:---:|:---:| |
| | **OpenHands** | β
P0 | β
P0 | |
| | **Claude Code** | β
P1 | β
P1 | |
| | **Codex** | β
P1 | β
P1 | |
| | **Gemini CLI** | β
P2 | β
P2 | |
|
|
| Each cell = create automation β dispatch run β run reaches COMPLETED β conversation link works. |
|
|
| --- |
|
|
| ## Auth Modes |
|
|
| | | **npm** | **Docker** | |
| |---|:---:|:---:| |
| | **Local (auto-generated key)** | β
P0 | β
P0 | |
| | **Public (`--public` + user key)** | β
P1 | β
P1 | |
|
|
| --- |
|
|
| ## Feature Checklist |
|
|
| ### npm |
|
|
| | Feature | OpenHands | Claude Code | Codex | Gemini CLI | |
| |---|:---:|:---:|:---:|:---:| |
| | Onboarding | β | β | β | β | |
| | Conversation β start, resume, history | β | β | β | β | |
| | Terminal tool | β | β | β | β | |
| | File editor tool | β | β | β | β | |
| | Browser tool | β | β | β | β | |
| | LLM profiles β create / switch | β | β | β | β | |
| | Secrets β add / delete / forwarded | β | β | β | β | |
| | Automations β create, dispatch, COMPLETED | β | β | β | β | |
| | Files tab + Changes/diff tab | β | β | β | β | |
| | MCP server install | β | β | β | β | |
| | Image upload in chat | β | β | β | β | |
| | Key rotation | β | β | β | β | |
|
|
| ### Docker |
|
|
| | Feature | OpenHands | Claude Code | Codex | Gemini CLI | |
| |---|:---:|:---:|:---:|:---:| |
| | Onboarding | β | β | β | β | |
| | Conversation β start, resume, history | β | β | β | β | |
| | Terminal tool | β | β | β | β | |
| | File editor tool | β | β | β | β | |
| | Browser tool | β | β | β | β | |
| | LLM profiles β create / switch | β | β | β | β | |
| | Secrets β add / delete / forwarded | β | β | β | β | |
| | Automations β create, dispatch, COMPLETED | β | β | β | β | |
| | Files tab + Changes/diff tab | β | β | β | β | |
| | MCP server install | β | β | β | β | |
| | Image upload in chat | β | β | β | β | |
| | Key rotation | β | β | β | β | |
|
|
| --- |
|
|
| ## Automated Coverage |
|
|
| | Suite | Install | OS | Agents | Automations | |
| |---|---|---|---|---| |
| | `vitest` (unit) | β | Linux | β | partial | |
| | `test:e2e:mock-llm` | npm | Linux | OpenHands, ACP (mock) | β
full | |
| | `test:e2e:mock-llm:docker` | Docker | Linux | OpenHands, ACP (mock) | β
full | |
| | `test:e2e:live` | npm | Linux | OpenHands | β | |
|
|
| **Not yet covered by CI:** real ACP credentials (Claude Code / Codex / Gemini), macOS, public auth mode, subscription login paths, Windows. |
|
|