## 1. Manifest Definition - [x] 1.1 Create apps/api/app/tools/manifests/opencode.yml with web terminal config - [x] 1.2 Add Docker image (ghcr.io/opencode-ai/opencode:latest), ports (3000), volumes - [x] 1.3 Add health check configuration to manifest - [x] 1.4 Validate manifest against ToolManifest schema ## 2. Container Setup - [x] 2.1 Verify OpenCode image availability and configuration - [x] 2.2 Document web terminal access pattern - [x] 2.3 Configure environment variables for terminal support - [x] 2.4 Test container locally with docker run - [x] 2.5 Verify web terminal accessibility ## 3. Spawn Integration - [x] 3.1 Verify SpawnService (FN-010) can spawn OpenCode instances - [x] 3.2 Add OpenCode-specific volume mounts (config) - [x] 3.3 Test spawn via API endpoint - [x] 3.4 Verify Traefik routing to OpenCode container ## 4. Frontend Integration - [x] 4.1 Add OpenCode to tool selection dropdown - [x] 4.2 Display OpenCode-specific options in spawn form - [x] 4.3 Show OpenCode instance status in detail page ## 5. Testing & Verification - [x] 5.1 Test terminal availability in spawned container - [x] 5.2 Test web interface accessibility - [x] 5.3 Test health endpoint response - [x] 5.4 Verify workspace mount is accessible - [x] 5.5 Run full test suite: `make test` - [x] 5.6 Run linters: `make lint` ## 6. Documentation - [x] 6.1 Document OpenCode setup in docs/development.md - [x] 6.2 Add OpenCode usage guide - [x] 6.3 Document terminal configuration and AI features