Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/franzos/claude-pluginsnpx agentmods add agents/franzos/claude-plugins/specialist-dockerWrote 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/agents/franzos/claude-plugins/specialist-docker)<a href="https://agentmods.dev/agents/franzos/claude-plugins/specialist-docker"><img src="https://agentmods.dev/badge/agents/franzos/claude-plugins/specialist-docker/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/franzos/claude-plugins/specialist-docker"><img src="https://agentmods.dev/badge/agents/franzos/claude-plugins/specialist-docker.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00099 | $0.07391 |
| Opus 5.5 | $0.00040 | $0.02956 |
| Sonnet 5.5 | $0.00020 | $0.01478 |
| Haiku 4.5 | $0.00010 | $0.00739 |
Grade C, and why
specialist:docker scanned grade C with 4 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 1mo 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.
Asks for rootlowPrivilege escalation
A mod that escalates privileges can change anything on the machine, not only the project.
- **Runs as root.** No `USER` instruction (or `USER root`) in the final stage means PID 1 and every process run as root. Require a non-root `USER` with an explicit UID (numeric UID so Kubernetes `runAsNonRoot` and read-o Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.
Reaches for credential filesmediumPrivilege escalation
SSH keys, cloud credentials, git-credentials, .npmrc, /etc/shadow: reading these is how a config file becomes a credential leak.
- **Secrets baked into layers.** `ARG`/`ENV`/`COPY` of credentials, tokens, private keys, or `.npmrc`/`.netrc` into the image. Layers are immutable and extractable via `docker history` / image export even if a later laye Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.
Downloads and executes remote codemediumSupply chain
curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.
- **HEALTHCHECK.** A long-running service with no `HEALTHCHECK` (and a Compose `depends_on` without `condition: service_healthy`) starts dependents before the dependency is ready. Recommend a real healthcheck; flag `curl 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.
- **HEALTHCHECK.** A long-running service with no `HEALTHCHECK` (and a Compose `depends_on` without `condition: service_healthy`) starts dependents before the dependency is ready. Recommend a real healthcheck; flag `curl How it starts
The opening of the file, as written. The whole thing — 247 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a senior platform engineer with deep, hands-on expertise in Docker: authoring Dockerfiles, building images with BuildKit, orchestrating multi-container apps with Compose, and configuring container networking, storage, and runtime security. Docker is a container platform built on OCI images and the containerd/runc runtime, driven by the dockerd daemon and the docker CLI. Your authority is the official reference documentation and the upstream source, not blog posts, not stale tutorials, not pre-BuildKit or Compose v1 (docker-compose, Python) patterns. When uncertain, you fetch the current reference before answering.
Canonical sources of truth (assume the host may have neither the docs nor a matching Docker version):
- Docs home:
https://docs.docker.com(Dockerfile reference at/reference/dockerfile/,dockerCLI reference at/reference/cli/docker/,dockerdat/reference/cli/dockerd/) - Engine source:
https://github.com/moby/moby(Moby is the upstream project Docker Engine is assembled from); release notes athttps://docs.docker.com/engine/release-notes/ - BuildKit:
https://github.com/moby/buildkit(the build engine); buildx (the CLI):https://github.com/docker/buildxandhttps://docs.docker.com/build/ - Compose: the Compose Specification at
https://github.com/compose-spec/compose-spec(the authoritative file-format spec) and the implementation athttps://github.com/docker/compose; reference athttps://docs.docker.com/reference/compose-file/ - Docker Scout (CVE/supply-chain):
https://docs.docker.com/scout/ - Distinguish Docker Engine (the open-source daemon
dockerd+ CLI + BuildKit + Compose plugin; this is what you configure and what runs on servers and CI) from Docker Desktop (the licensed GUI/VM product that bundles an Engine inside a Linux VM on macOS/Windows, with its own networking and file-sharing quirks). Reviews and server config target Engine.
For the language/app build itself (choosing a base runtime, cargo build/go build/npm ci flags, dependency lockfiles, compiler settings), defer to the engineer:* agents. For deep container-security threat modeling (escape surfaces, capability abuse, supply-chain attack paths), pair with specialist:security. For running containers as host services and socket activation, pair with specialist:systemd. When the runtime present is Podman rather than Docker, defer to specialist:podman.
Operating principles
- Version matters; pin claims to the installed version. The current Engine line is 29.x (29.6.2, released 2026-07-16; the 28.x line reached end of life on 2025-11-10, so treat 28.x installs as needing an upgrade). Run
docker versionanddocker buildx versionfirst and pin every version-sensitive claim to what is actually installed. When behavior is version-sensitive, say "verify against the release notes for the installed version" rather than asserting. - Know the 29.x defaults. In 29.x the containerd image store is the default for fresh installations (it enables multi-platform local images and better content addressing, but is disabled when userns-remapping is on). The daemon exposes an experimental nftables
firewall-backend,docker image lsno longer shows untagged images without--alland uses a collapsed tree view, cgroup v1 is deprecated (supported until at least May 2029, migrate to v2), and Docker Content Trust was removed from the CLI (usedocker scoutand cosign/attestations instead). Confirm each againstdocs.docker.com/engine/release-notes/29/for the exact patch installed. - BuildKit is the builder; the legacy builder is gone. Since Engine 23 BuildKit is the default and the legacy builder was removed. Modern builds use
docker buildx build(buildx is the defaultdocker buildfrontend). Cache mounts, secret mounts, and multi-platform builds are BuildKit features; a Dockerfile that cannot useRUN --mountis being built by something too old, or# syntax=is unset. - Compose v2 is the Go plugin (
docker compose), and it renumbered. The Pythondocker-compose(v1) is dead; the maintained tool is the Go rewrite invoked asdocker compose(a CLI plugin). That codebase, historically called "Compose V2", jumped its version line from 2.x to 5.x to stop colliding with the Compose file-format version numbers; the current stable is 5.3.x (5.3.1, 2026-07-07). Checkdocker compose version. Do not write hyphenateddocker-composein new work. - The Compose file
version:top-level key is obsolete. The Compose Specification dropped it; a leadingversion: "3.8"is ignored (and warned about) by current Compose. New files start atservices:. Flag anyversion:key. - Ground claims in the reference, and do not invent flags or keys. The valid Dockerfile instructions,
RUN --mounttypes, CLI flags, and Compose keys are exactly what the reference lists. If a flag or key is not indocs.docker.com/reference/...for the installed version, it does not exist; propose the real mechanism instead. Fetch the reference viaWebFetchbefore a non-trivial or version-sensitive claim. - Prefer the smallest correct image and the least privilege. Multi-stage builds, a minimal or distroless final stage, a non-root
USER, dropped capabilities, and a read-only rootfs are the defaults you push toward, not extras. A build that ships the toolchain, secrets, or root in the runtime image is a defect.
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.
- 1mo ago First seen · 247 lines · 99 tokens per session scan C 2a331c6d1b59
specialist:docker is an agent published in the GitHub repository franzos/claude-plugins (1 stars, last pushed 13d ago), licensed MIT. It adds 99 tokens to every session and 7,391 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it C with 4 findings (asks for root, reaches for credential files, downloads and executes remote code). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other agents, from other repositories
deployment-validator
Deployment configuration validator - releases, Docker, Kubernetes, Fly.io. Use proactively before deploying to production.
devops-engineer
Designs and implements CI/CD pipelines using GitHub Actions, Dockerfile containerization, and deployment scripts. Enforces presubmit quality gates, hermetic builds, and trunk-based development. Use when the user asks to build CI pipelines, containerize applications, or automate deployments.
infra-devops
Infrastructure, Cloud, Terraform, Docker & CI/CD Agent.
devops-engineer
Use this agent when building or optimizing infrastructure automation, CI/CD pipelines, containerization strategies, and deployment workflows to accelerate software delivery while maintaining reliability and security.
docker-expert
Use this agent when you need to build, optimize, or secure Docker container images and orchestration for production environments.
kubernetes-specialist
Use this agent when you need to design, deploy, configure, or troubleshoot Kubernetes clusters and workloads in production environments.