Loading...
Loading...
Generate an offline-first dependency overview across services in a Docker-compose monorepo. Reports image tags & pinning quality, Dockerfile base images, runtime hints (Node/Python via .nvmrc, .python-version, package.json engines, pyproject.toml), and lockfile presence. Use when you want a single report of "what am I running and where are my update surfaces?" — no network calls, no pulls.
npx skill4agent add jwa91/agentskills vps-dependency-overviewservices/image:floatingimplicit-latestmajorminorsemverdigestcustomFROM.nvmrc.node-version.python-versionpackage.jsonpyproject.tomlpnpm-lock.yamlpackage-lock.jsonpoetry.lockuv.lock<service>/.agents/skills/*-update-check/docker composepython3 .agents/skills/vps-dependency-overview/scripts/vps_dependency_overview.py \
--format markdown \
--output /tmp/dependency-overview.mdpython3 .agents/skills/vps-dependency-overview/scripts/vps_dependency_overview.py --format markdownpython3 .agents/skills/vps-dependency-overview/scripts/vps_dependency_overview.py --only n8n --only postgrespython3 .agents/skills/vps-dependency-overview/scripts/vps_dependency_overview.py --format json| Flag | Default | Description |
|---|---|---|
| | Workspace root |
| | Subdirectory containing per-service folders |
| | |
| stdout | Write to a file instead of stdout |
| all | Restrict to specific service folder names (repeatable) |
<root>/
<services-dir>/ # default: services/
<service-a>/
docker-compose.yml # required for the service to be inventoried
Dockerfile # optional, parsed if present
.nvmrc / .python-version / package.json / pyproject.toml # optional, parsed for runtime hints
.agents/skills/<svc>-update-check/SKILL.md # optional, surfaced in the report
<service-b>/
...docker-compose.ymltomllibdockerdocker compose -f … config --format jsonssh <vps-host> "docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}'"<vps-host>~/.ssh/config| Pinning class | What it means | Reproducibility |
|---|---|---|
| | Best — content-addressed |
| | Good — explicit version |
| | Major+minor pinned, patches float |
| | Major pinned, minor+patch float on rebuild |
| | Bad — non-reproducible |
| no tag at all | Bad — equivalent to |
| anything else | Worth a manual look |
node_containerpython_containerFROMnode_repopython_repo.nvmrc.python-versionnode_enginepython_requirespackage.jsonpyproject.tomlnode_container=18node_repo=22