File size: 3,316 Bytes
ee9fcd0 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | # 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.
|