Files
unraid-docker-manager/.planning/PROJECT.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

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:

  1. Get update notification → open Telegram → "update plex" → done
  2. Notice service not responding → "check sonarr logs" → see errors → "restart sonarr"
  3. 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