A terminal dashboard for Docker. Manage containers, Compose projects, images, volumes, and networks — all from a single, keyboard-driven TUI. Includes scriptable ps, logs, images, volumes, networks, stats, df and inspect commands for non-interactive use.
npm install -g sidekick-dockerPrerequisites: Node.js >= 22.12, Docker running.
# Launch the interactive dashboard
sidekick-docker
# List containers (non-interactive)
sidekick-docker ps
sidekick-docker ps --all
sidekick-docker ps --format json | jq # machine-readable output
sidekick-docker ps -q # container IDs only
# Stream container logs
sidekick-docker logs <container>
sidekick-docker logs <container> --no-follow --tail 50
# Inventory (all support --format json; images also supports -q)
sidekick-docker images
sidekick-docker volumes
sidekick-docker networks
# One-shot resource usage, like `docker stats --no-stream`
sidekick-docker stats
# Disk usage, including build cache — like `docker system df`
sidekick-docker df
# Raw inspect payload for a container (name, full ID, or ID prefix)
sidekick-docker inspect <container> | jq .State.Health| Flag | Description |
|---|---|
--socket <endpoint> |
Docker endpoint: socket path, unix:// or tcp://host[:port] URL |
--no-color |
Disable colored output (also honors NO_COLOR / FORCE_COLOR) |
--verbose |
Show full error details |
--version |
Show version |
--help |
Show help |
The dashboard has 5 panels, each mapped to a number key:
| # | Panel | Shows | Detail Tabs |
|---|---|---|---|
| 1 | Containers | All containers with state, image, ports, uptime | Logs, Stats, Env, Config, Labels, Files, Patterns |
| 2 | Services | Compose projects and their services | Info, Logs |
| 3 | Images | Local images with tags, size, age | Info, Layers |
| 4 | Volumes | Named volumes with driver, mount path, usage status | Info |
| 5 | Networks | Docker networks with driver, scope, connected containers | Info |
| Key | Action |
|---|---|
j / Down |
Move down |
k / Up |
Move up |
g |
Jump to top |
G |
Jump to bottom (resumes log follow) |
PgUp / PgDn |
Page up / down |
Ctrl+U / Ctrl+D |
Half page up / down |
Tab |
Toggle focus between side list and detail pane |
Enter / l / Right |
Focus detail pane |
Esc |
Back to side list / close overlay / clear filter |
h / Left |
Back to side list (when in detail pane) |
| Key | Action |
|---|---|
1-5 |
Switch to panel |
[ / ] |
Cycle detail tab left / right |
| Key | Action |
|---|---|
x |
Open context menu (actions for selected item) |
f |
Open log filter (when on Logs tab) |
/ |
Open filter |
a |
Toggle all/running containers (Containers panel) |
o |
Open sort menu (Containers panel) |
R |
Reverse sort direction (Containers panel) |
m |
Pin/unpin item for log comparison (Containers/Services) |
J / K |
Scroll compare pane (when in detail focus) |
z |
Cycle layout (Normal → Wide → Expanded) |
? |
Show help overlay |
V |
Show version |
q / Ctrl+C |
Quit |
| Key | Action |
|---|---|
s |
Start |
S |
Stop |
r |
Restart |
p / u |
Pause / Unpause |
d |
Remove (with confirmation) |
e |
Exec into container |
P |
Prune — remove all stopped containers (with confirmation), reporting space reclaimed |
c |
Copy logs to clipboard |
| Key | Action |
|---|---|
u |
Up (start project) |
D |
Down (stop project, with confirmation) |
r |
Restart |
S |
Stop |
c |
Copy logs to clipboard |
Click to select items, switch panels/tabs, and press overlay buttons; right-click
opens the actions menu; wheel scrolls (scrolling up in logs pauses follow — jump
to the bottom or press G to resume).
- Real-time log streaming — follows container logs with token-level syntax highlighting (HTTP methods, status codes, URLs, IPs, timestamps, JSON keys)
- Dual-log compare — pin a second container or service with
mto view both log streams side by side - Log search & filter — press
fon the Logs tab to search within log output with exact or fuzzy matching and match highlighting - Log analytics — severity count badges, severity sparkline over time, and pattern clustering that groups similar logs into templates with
<*>wildcards - Live stats with sparklines — CPU, memory, network I/O, block I/O, and log severity charted as inline sparklines (60-sample history)
- Filesystem inspector — view all filesystem changes inside containers (added/changed/deleted files)
- Image layer explorer — inspect image layer history with sizes and Dockerfile instructions
- Interactive exec — open a shell inside any running container
- Compose detection — automatically discovers projects from container labels, merges with compose file config
- Filter — press
/to filter any list by name - Confirmation modals — destructive actions always ask before executing
- Mouse support — click items to select, scroll to navigate
- Toast notifications — non-blocking feedback for actions
--socket accepts a socket path, a unix:// URL, or a tcp://host[:port] URL (port defaults to 2375; TLS is used for https:// URLs or tcp:// on port 2376, while an explicit http:// stays plain HTTP):
sidekick-docker --socket /var/run/docker.sock
sidekick-docker --socket unix:///run/user/1000/docker.sock
sidekick-docker --socket tcp://192.168.1.100:2375When --socket is not given, the standard DOCKER_HOST environment variable is honored (including ssh:// endpoints), along with DOCKER_TLS_VERIFY and DOCKER_CERT_PATH:
DOCKER_HOST=tcp://192.168.1.100:2375 sidekick-docker ps
DOCKER_HOST=ssh://user@remote-host sidekick-dockerFull documentation is available at the docs site.
Sidekick Agent Hub — Multi-provider AI coding agent monitor. Real-time visibility into Claude Code, OpenCode, and Codex CLI sessions with token tracking, context management, and session intelligence. Available as a TUI on npm and a VS Code extension.
Contributions are welcome! See CONTRIBUTING.md for setup instructions and guidelines.
