Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/greglas75/zuvo/container-auditnpx skills add greglas75/zuvo --skill container-auditgit clone --depth 1 https://github.com/greglas75/zuvoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/greglas75/zuvo/container-audit)<a href="https://agentmods.dev/skills/greglas75/zuvo/container-audit"><img src="https://agentmods.dev/badge/skills/greglas75/zuvo/container-audit.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00225 | $0.06929 |
| Opus 5 | $0.00112 | $0.03465 |
| Sonnet 5 | $0.00045 | $0.01386 |
| Haiku 4.5 | $0.00022 | $0.00693 |
Grade B, and why
container-audit scanned grade B with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Recursive force deletemediumDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
| Package-manager cache | `--no-cache` / `rm -rf /var/lib/apt/lists` | apt/apk cache left in a layer | MEDIUM | Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
| No dev/debug tools in final | prod image has no `curl`/`nc`/shell (distroless) | debug tooling shipped to prod | MEDIUM | How it starts
The opening of the file, as written. The whole thing — 513 lines — stays where its author put it; the contents beside it link to each section on GitHub.
zuvo:container-audit
Audit container artifacts (Dockerfile, Containerfile, docker-compose) as code for
security defects — running as root, mutable :latest bases, secrets baked into layers,
bloated attack surface, known CVEs, and docker.sock mounts. Single-pass, read-only.
When to use: before shipping a Dockerized service, after editing a Dockerfile or
compose file, periodic container hardening review, pre-deploy gate.
When NOT to use: auditing the live Docker daemon on a remote host over SSH
(zuvo:infra-audit IS9); Docker build speed / cache in CI (zuvo:ci-audit CI8);
application-code vulnerabilities (zuvo:security-audit).
Mandatory File Loading
Read every file below before starting. Print the checklist.
CORE FILES LOADED:
1. ../../shared/includes/codesift-setup.md -- [READ | MISSING -> STOP]
2. ../../shared/includes/env-compat.md -- [READ | MISSING -> STOP]
3. ../../shared/includes/report-output-location.md -- [READ | MISSING -> STOP]
4. ../../shared/includes/severity-vocabulary.md -- [READ | MISSING -> STOP]
5. ../../shared/includes/run-logger.md -- [READ | MISSING -> STOP]
6. ../../shared/includes/retrospective.md -- [READ | MISSING -> STOP]
If any file is MISSING, STOP. Do not proceed from memory.
Argument Parsing
| Token | Behavior |
|---|---|
(empty) or full |
All applicable dimensions, scope = project root |
[path] |
Scope to a directory (monorepo package / service) |
--static |
Force pure-static: skip live Trivy/Grype even if present (K5 via trivy config or N/A) |
--scan |
Force live CVE scan; missing scanner OR declined image pull → exit non-zero (scan aborted), never a silent downgrade |
--dockerfile <path> |
Audit a single Dockerfile |
--compose <path> |
Audit a single compose file |
--quick |
Critical gates only (K1 + K2 + K3) |
--k8s |
Activate reserved dimensions K7-K10 (Kubernetes manifest/RBAC/Pod-Security/network-policy) |
--persist-backlog |
Push findings to zuvo:backlog |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 513 lines · 225 tokens per session scan B e8ff150aefe8
container-audit is a skill published in the GitHub repository greglas75/zuvo (6 stars, last pushed today), licensed MIT. It adds 225 tokens to every session and 6,929 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it B with 2 findings (recursive force delete, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
ring:applying-composition-patterns
React composition patterns that scale. Avoid boolean prop proliferation by using compound components, lifting state, and composing internals. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or during architecture review. Skip for simple components with 1-2 props…
ring:searching-code
Forensic code search and analysis with optional Chain of Draft (CoD) ultra-concise mode. Five-phase methodology (clarification, planning, execution, analysis, synthesis) with severity assessment. Use for targeted investigation of specific patterns, bugs, or vulnerabilities. Skip for broad architecture mapping (use…
ring:exploring-codebases
Exploring a codebase across phases: scopes the target, detects architecture, components, and layers, deep-dives each discovered perspective, then synthesizes findings into actionable guidance with file:line evidence. Use to understand how a feature or system works before planning changes, or to orient on an unfamiliar…
ring:auditing-dependency-security
Auditing a dependency for supply-chain risk before install (pip/npm/go/cargo): checks typosquatting, maintainer/age risk, vulnerability DBs (OSV, GHSA, Socket), and lockfile hash pinning, then emits a risk score and approve/conditional/escalate/block decision. Use when adding or updating a dependency, reviewing a…
ring:creating-helm-charts
Creating Helm charts to Lerian conventions via ring:helm: standardized chart structure, full env-var coverage from .env.example, security defaults (runAsNonRoot, readOnlyRootFilesystem), ClusterIP-only services, and health probes; validates helm lint and template render. Use when creating, modifying, or reviewing a…
add
Register a deferred decision in the debt registry. Trigger by judgment, not a marker scan, whenever a future reader would ask "why this way?": an unmade decision, stub, loosened type, bypassed check, swallowed error, a default picked "for now", or a TODO/FIXME/HACK/XXX marker. Trigger immediately whenever you defer…