8e620c0935
Phase 02: Docker Integration - Implementation decisions documented - Phase boundary established
1.9 KiB
1.9 KiB
Phase 2: Docker Integration - Context
Gathered: 2026-01-29 Status: Ready for planning
## Phase BoundaryConnect n8n to Docker and return container information to Telegram. Users can query container status by name or view summaries. Container actions (start/stop/restart) are Phase 3.
## Implementation DecisionsContainer Identification
- Fuzzy matching for container names — "plex" matches "plex-server"
- Case-insensitive matching — "Plex", "plex", "PLEX" all work
- Strip common prefixes like "linuxserver-" before matching
- When multiple containers match, list all matches and ask user to clarify
Query Patterns
- Default "status" (no container name) shows running containers only
- Support filtered queries: "show stopped containers", "what's unhealthy"
- For many containers: summarize first ("25 running, 3 stopped"), then offer to list
- When listing many, paginate results
- Conversation context tracking deferred to Phase 4 (Claude API handles NLU)
Connection Approach
- Clear error message on Docker connection failure: "Can't reach Docker — check if n8n has socket access"
- No silent retries — fail fast with helpful message
Status Response Format
- Emoji + text format: "✅ plex-server: Running (2 days)"
- Single container check shows: name, state, uptime, health status, resource usage
- Summary view info density left to Claude's discretion
Claude's Discretion
- Docker connection method (socket mount vs TCP API)
- Whether to use helper container or direct n8n calls
- Emoji mapping for container states
- Info density in summary/list views
No specific requirements — open to standard approaches that work well on Unraid.
## Deferred IdeasNone — discussion stayed within phase scope.
Phase: 02-docker-integration Context gathered: 2026-01-29