b82ce152bb
Workflow currently has Claude API nodes that need removal. Added to Phase 5 scope along with keyword routing replacement. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
116 lines
3.0 KiB
Markdown
116 lines
3.0 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
|
|
|
|
- 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
|
|
|
|
**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*
|