exe.dev Fleet Management
Parallel SSH probing and reporting across exe.dev VM fleets.
Prerequisites
- SSH access to exe.dev VMs (key configured in
~/.ssh/configor viaEXE_DEV_SSH_KEY) jqinstalled locally (for parsingssh exe.dev ls --json)- VMs accessible as
<vm-name>.exe.xyz
Scripts
All scripts are in the scripts/ directory relative to this skill.
system-resources.sh
Fast resource overview (~10s). Probes all VMs for memory, disk, uptime, processes, and zombies.
# Use default SSH key from config/agent
scripts/system-resources.sh
# With explicit SSH key
EXE_DEV_SSH_KEY=~/.ssh/my-key scripts/system-resources.sh
# TSV output for machine parsing
scripts/system-resources.sh --tsv
Outputs a markdown table sorted by RAM used (descending) with summary totals and alerts for zombies > 5 or disk > 80%.
system-report.sh
Comprehensive status report (~15s). Auto-detects and reports:
- Resources: RAM, disk, uptime, process/zombie counts
- Docker: running containers, images,
init:truestatus - Git repos: branch, revision, clean/dirty status
- Tmux: active sessions
# All VMs
scripts/system-report.sh
# Specific VMs only
scripts/system-report.sh lefant-ctrl lefant-memory
Outputs a summary table plus per-host detail sections for Docker containers and git repos.
fleet-common.sh
Shared library sourced by the other scripts. Provides:
fleet_ssh <host> <cmd>— SSH to a single VMdiscover_vms— list all VM names via exe.dev APIparallel_probe <cmd> [vms...]— run command on VMs in parallel (max 3 concurrent)human_bytes <n>— convert bytes to human-readable
Environment Variables
| Variable | Default | Description |
|---|---|---|
EXE_DEV_SSH_KEY |
(ssh-agent/config) | Path to SSH private key |
EXE_DEV_SSH_USER |
exedev |
Remote SSH username |
EXE_DEV_TIMEOUT |
5 |
SSH connect timeout (seconds) |
EXE_DEV_MAX_PARALLEL |
3 |
Max concurrent SSH connections |
Usage with Claude Code
When the user asks for fleet status or system overview:
- Locate scripts: they are in this skill's
scripts/directory - Run the appropriate script via Bash tool
- Present the markdown output directly — it's already formatted
- Add commentary on any alerts or issues found
- Suggest actions for problems (high disk, zombies, missing init:true, dirty repos)