Files
unraid-docker-manager/.planning/ROADMAP.md
T
Lucas Berger 21e888c1ce docs: remove NLU from v1.0 scope
- Remove Claude API integration and intent parsing (04-02-PLAN)
- REQ-08 (conversational queries) moved to out of scope
- Phase 4 renamed from "Logs & Intelligence" to "Logs" (complete)
- v1.0 now focuses on keyword-based container control

Simple substring matching works well for container management.
NLU adds complexity without proportional value for v1.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 14:52:37 -05:00

115 lines
2.9 KiB
Markdown

# 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
- 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
**Status:** 🔲 Not started
---
## 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*