docker

docker is a skill for Claude Code, Codex from andresquirogadev/skillsense. It costs 0 tokens per session (493 once invoked), scanned A, original, MIT.

A set of conventions for building Docker images and local development environments. Docker packages an application and its dependencies into a portable container.

In plain words
What is it for?
Use it when writing Dockerfiles or Docker Compose configurations for Node.js, Python, or Go applications. It covers base images, multi-stage builds, users, volumes, and ignored files.
Why use it?
It helps keep builds smaller, safer, and more predictable across machines. It also avoids common problems with caching, stored data, and process shutdown.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it when writing Dockerfiles or Docker Compose configurations for Node.js, Python…

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/andresquirogadev/skillsense/docker
Install

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.

Any agent
npx skills add andresquirogadev/skillsense --skill docker
Clone the repo
git clone --depth 1 https://github.com/andresquirogadev/skillsense

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for docker

README.md
[![agentmods](https://agentmods.dev/badge/skills/andresquirogadev/skillsense/docker.svg)](https://agentmods.dev/skills/andresquirogadev/skillsense/docker)
Your own site
<a href="https://agentmods.dev/skills/andresquirogadev/skillsense/docker"><img src="https://agentmods.dev/badge/skills/andresquirogadev/skillsense/docker.svg" alt="Measured on agentmods" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 493 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00000 $0.00493
Opus 5 $0.00000 $0.00246
Sonnet 5 $0.00000 $0.00099
Haiku 4.5 $0.00000 $0.00049

Measured 6d ago against content hash a7817c197fe7, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

docker scanned grade A with 0 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 6d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

packages/catalog/skills/docker/SKILL.md · 59 lines

What it actually says

Docker Skill

You are working with Docker. Apply these conventions.

Dockerfile Best Practices

  • Use official minimal base images: node:22-alpine, python:3.12-slim, golang:1.23-alpine.
  • Use multi-stage builds to keep the final image small:
    FROM node:22-alpine AS builder
    WORKDIR /app
    COPY package*.json ./
    RUN npm ci
    COPY . .
    RUN npm run build
    
    FROM node:22-alpine AS runner
    WORKDIR /app
    ENV NODE_ENV=production
    COPY --from=builder /app/dist ./dist
    COPY --from=builder /app/node_modules ./node_modules
    CMD ["node", "dist/index.js"]
    
  • Copy package.json and lock file before source code so Docker layer caching isn't invalidated by source changes.
  • Run as a non-root user: RUN addgroup -S app && adduser -S app -G app && USER app.
  • Use CMD (JSON array form) with explicit entry points — avoid shell form to prevent PID 1 signal issues.

.dockerignore

Always include a .dockerignore:

node_modules
dist
.git
*.md
.env
coverage

Compose

  • Use docker-compose.yml for local development; docker-compose.override.yml for dev-only overrides.
  • Use named volumes for persistent data (databases); use bind mounts for source code in dev.
  • Define depends_on with condition: service_healthy to wait for database readiness.
  • Use healthcheck on database services so dependent services wait for them.

Security

  • Scan images with docker scout cves or trivy in CI.
  • Never store secrets in image layers; use Docker secrets or runtime environment injection.
  • Pin base image digests in production: node:22-alpine@sha256:….
  • Use --read-only flag and --cap-drop ALL for distroless production containers when possible.

Layer Optimization

  • Order Dockerfile instructions from least to most frequently changed.
  • Use RUN --mount=type=cache (BuildKit) to cache package manager caches between builds.
  • Combine RUN commands with && to minimize layers.
Changes

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.

  1. 6d ago First seen · 59 lines · 0 tokens per session scan A a7817c197fe7

Subscribe to this mod's changes

docker is a skill published in the GitHub repository andresquirogadev/skillsense (2 stars, last pushed 5mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 493 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

rework-rate

Measure and interpret PR rework rate — the emerging 5th DORA metric.

bradygaster/squad · 20 tokens

My Skill

Content here.

bradygaster/squad · 2 tokens

harness

To build an AI harness: run, observe, validate, automate repeated work faster — CLI/MCP actions, devcontainers, skills, subagents, hooks, pipelines, automations.

griddynamics/rosetta · 40 tokens

ralphctl-test-driven-development

Execute-phase skill — write the failing test before the code that makes it pass; for bug fixes, this is the reproduction test itself. Use for any logic change, bug fix, or behavioural modification; for the full root-cause triage pipeline around an unexpected failure, see ralphctl-debugging-and-error-recovery.

lukas-grigis/ralphctl · 72 tokens

ralphctl-code-review-and-quality

Multi-phase code-quality skill — primary frame for the evaluator role in Execute, the architecture axis in Plan, and correctness/readability in Refine. Multi-axis code review with severity vocabulary. Use when you are the evaluator assessing a generator's output, and when reviewing any change before signalling…

lukas-grigis/ralphctl · 76 tokens

ralphctl-idea-refinement

Ideation skill — refine a raw, unshaped idea into a sharp, buildable concept through divergent expansion (variation lenses like inversion, simplification, audience shift) followed by convergent stress-testing (user value, feasibility, differentiation), ending in a one-pager with explicit assumptions and a "Not Doing"…

lukas-grigis/ralphctl · 121 tokens