21e888c1ce
- 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>
3.0 KiB
3.0 KiB
Unraid Docker Manager
What This Is
A Telegram bot that lets you manage Docker containers on your Unraid server. Control containers from your phone without needing to open a laptop — check status, view logs, start/stop/restart/update containers via simple keyword commands.
Core Value
When you get a container update notification or notice a service is down, you can immediately investigate and act from your phone through a natural conversation.
Requirements
Validated
(None yet — ship to validate)
Active
- Send a message to the bot and receive a response
- Ask about container status ("how's Plex doing?")
- Start a container by name
- Stop a container by name
- Restart a container by name
- Update a container (pull new image, recreate)
- View container logs with configurable line count (default 50)
- Bot only responds to your Telegram user ID
Out of Scope
- Taking over Unraid notifications — keep existing notification system, this bot is for control
- Deploying new containers — manage existing only, not create new ones
- Natural language understanding — simple keyword matching sufficient for v1, Claude API adds complexity
- Proactive monitoring/notifications — bot is reactive (you ask, it answers) for v1
- Resource queries — "what's using the most memory?" deferred to future version
Context
Environment:
- Unraid server with Intel N100 CPU, 32GB RAM
- n8n already running and mostly unused — will use as orchestration layer
- Multiple Docker containers running various services (Plex, Sonarr, etc.)
Current workflow:
- Unraid sends notifications when container updates are available
- Currently need laptop/desktop to act on updates or troubleshoot
- Want to be able to respond immediately from phone
User scenarios:
- Get update notification → open Telegram → "update plex" → done
- Notice service not responding → "check sonarr logs" → see errors → "restart sonarr"
- Curious about system → "what containers are running?" or "what's using the most resources?"
Constraints
- Platform: Must run on Unraid (Docker-based deployment)
- Orchestration: Use n8n for workflow orchestration (already running)
- Matching: Keyword/substring matching for container names
- Auth: Single user only — verify Telegram user ID
- Logs: Support configurable line count, default to 50 lines
Key Decisions
| Decision | Rationale | Outcome |
|---|---|---|
| Use keyword matching over NLU | Simple substring matching works well, Claude API adds complexity for v1 | ✓ Good |
| Use n8n for orchestration | Already running, handles Telegram webhooks, reduces new infrastructure | — Pending |
| Manage existing containers only | Keeps scope focused, deployment is complex and rarely needed from mobile | — Pending |
| Single user auth via Telegram ID | Simple security model, only one person needs access | — Pending |
Last updated: 2026-01-31 after removing NLU from v1.0 scope