# Roadmap — Unraid Docker Manager v1.0 ## Milestone: v1.0 — Docker Control via Telegram ### Phase 1: Foundation **Goal:** Basic Telegram ↔ n8n communication working - Set up n8n workflow with Telegram trigger - Configure Telegram bot via BotFather - Echo messages back to verify round-trip - Implement user ID verification (single-user auth) **Delivers:** REQ-01 (send/receive messages), REQ-09 (user ID auth) **Plans:** 2 plans Plans: - [x] 01-01-PLAN.md — Create Telegram bot and n8n workflow - [x] 01-02-PLAN.md — Verify echo and authentication **Status:** ✅ Complete (2026-01-28) --- ### Phase 2: Docker Integration **Goal:** n8n can query Docker and return container info - Connect n8n to Unraid Docker socket - Implement container listing endpoint - Parse container status (running, stopped, health) - Format status responses for Telegram **Delivers:** REQ-02 (container status queries) **Plans:** 2 plans Plans: - [x] 02-01-PLAN.md — Configure n8n container for Docker socket access - [x] 02-02-PLAN.md — Add Docker query workflow with container matching **Status:** ✅ Complete (2026-01-29) --- ### Phase 3: Container Actions **Goal:** Control containers through conversation - Implement start container by name - Implement stop container by name - Implement restart container by name - Implement update container (pull + recreate) - Handle fuzzy name matching ("plex" → "plex-server") **Delivers:** REQ-03, REQ-04, REQ-05, REQ-06 **Plans:** 4 plans Plans: - [x] 03-01-PLAN.md — Single-match container actions (start/stop/restart) - [x] 03-02-PLAN.md — Callback infrastructure and no-match suggestions - [x] 03-03-PLAN.md — Batch confirmation for multiple matches - [x] 03-04-PLAN.md — Container update action (pull + recreate) **Status:** ✅ Complete (2026-01-30) --- ### Phase 4: Logs **Goal:** View container logs via Telegram - Implement log retrieval with configurable line count - Handle long log output (truncation for Telegram limits) **Delivers:** REQ-07 (logs) **Plans:** 1 plan Plans: - [x] 04-01-PLAN.md — Container log retrieval with configurable lines **Status:** ✅ Complete (2026-01-31) --- ### Phase 5: Polish & Deploy **Goal:** Production-ready deployment on Unraid - Remove NLU/Claude nodes from workflow (replace with keyword routing) - Error handling and user-friendly error messages - Create Docker container for any custom components - Write deployment instructions for Unraid - End-to-end testing of all scenarios **Delivers:** Production readiness **Plans:** 3 plans Plans: - [x] 05-01-PLAN.md — Remove NLU nodes and add keyword routing with persistent menu - [x] 05-02-PLAN.md — Standardize error messages and migrate credentials - [x] 05-03-PLAN.md — Write deployment README and end-to-end testing **Status:** ✅ Complete (2026-02-02) --- ## Requirements Mapping | REQ | Description | Phase | |-----|-------------|-------| | REQ-01 | Send/receive messages | 1 | | REQ-02 | Container status queries | 2 | | REQ-03 | Start container | 3 | | REQ-04 | Stop container | 3 | | REQ-05 | Restart container | 3 | | REQ-06 | Update container | 3 | | REQ-07 | View logs (configurable lines) | 4 | | REQ-08 | ~~Conversational queries~~ | Out of scope | | REQ-09 | User ID authentication | 1 | --- *Created: 2026-01-28*