agent-launcher-orchest…
Use when someone wants to build, launch, grade or schedule a Claude Managed Agent in their own Anthropic account ('build me an…
Use for any Dockerfile or docker-compose file to write, optimize or review, before editing it. Checks layers, caching, size and security with dockerfile_analyzer.py and validates compose files with compose_validator.py.
Claude Code
$ npx -y skills add alirezarezvani/claude-skills --skill docker-development --agent claude-code
Codex
$ npx skills add alirezarezvani/claude-skills --skill docker-development -a codex -y
Cursor
$ npx skills add alirezarezvani/claude-skills --skill docker-development -a cursor -y
Gemini CLI
$ npx skills add alirezarezvani/claude-skills --skill docker-development -a gemini-cli -y
GitHub Copilot
$ npx skills add alirezarezvani/claude-skills --skill docker-development -a github-copilot -y
OpenCode
$ npx skills add alirezarezvani/claude-skills --skill docker-development -a opencode -y
Windsurf
$ npx skills add alirezarezvani/claude-skills --skill docker-development -a windsurf -y
name: "docker-development" description: "Use for any Dockerfile or docker-compose file to write, optimize or review, before editing it. Checks layers, caching, size and security with dockerfile_analyzer.py and validates compose files with compose_validator.py." license: MIT metadata: version: 1.0.0 author: Alireza Rezvani category: engineering updated: 2026-03-16
> Smaller images. Faster builds. Secure containers. No guesswork.
Opinionated Docker workflow that turns bloated Dockerfiles into production-grade containers. Covers optimization, multi-stage builds, compose orchestration, and security hardening.
Not a Docker tutorial — a set of concrete decisions about how to build containers that don't waste time, space, or attack surface.
---
| Command | What it does | |---------|-------------| | `/docker-development optimize` | Analyze and optimize a Dockerfile for size, speed, and layer caching | | `/docker-development compose` | Generate or improve docker-compose.yml with best practices | | `/docker-development security` | Audit a Dockerfile or running container for security issues |
---
Recognize these patterns from the user:
If the user has a Dockerfile or wants to containerize something → this skill applies.
---
1. **Analyze current state**
2. **Apply optimization checklist**
BASE IMAGE ├── Use specific tags, never :latest in production ├── Prefer slim/alpine variants (debian-slim > ubuntu > debian) ├── Pin digest for reproducibility in CI: image@sha256:... └── Match base to runtime needs (don't use python:3.12 for a compiled binary) LAYER OPTIMIZATION ├── Combine related RUN commands with && \ ├── Order layers: least-changing first (deps before source code) ├── Clean package manager cache in the same RUN layer ├── Use .dockerignore to exclude unnecessary files └── Separate build deps from runtime deps BUILD CACHE ├── COPY dependency files before source code (package.json, requirements.txt, go.mod) ├── Install deps in a separate layer from code copy ├── Use BuildKit cache mounts: --mount=type=cache,target=/root/.cache └── Avoid COPY . . before dependency installation MULTI-STAGE BUILDS ├── Stage 1: build (full SDK, build tools, dev deps) ├── Stage 2: runtime (minimal base, only production artifacts) ├── COPY --from=builder only what's needed └── Final image should have NO build tools, NO source code, NO dev deps
3. **Generate optimized Dockerfile**
4. **Validate**
python3 scripts/dockerfile_analyzer.py Dockerfile
1. **Identify services**
2. **Apply compose best practices**
SERVICES
├── Use depends_on with condition: service_healthy
├── Add healthchecks for every service
├── Set resource limits (mem_limit, cpus)
├── Use named volumes for persistent data
└── Pin image versions
NETWORKING
├── Create explicit networks (don't rely on default)
├── Separate frontend and backend networks
├── Only expose ports that need external access
└── Use internal: true for backend-only networks
ENVIRONMENT
├── Use env_file for secrets, not inline environment
├── Never commit .env files (add to .gitignore)
├── Use variable substitution: ${VAR:-default}
└── Document all required env vars
DEVELOPMENT vs PRODUCTION
├── Use compose profiles or override files
├── Dev: bind mounts for hot reload, debug ports exposed
├── Prod: named volumes, no debug ports, restart: unless-stopped
└── docker-compose.override.yml for dev-only config3. **Generate compose file**
1. **Dockerfile audit**
| Check | Severity | Fix | |-------|----------|-----| | Running as root | Critical | Add `USER nonroot` after creating user | | Using :latest tag | High | Pin to specific version | | Secrets in ENV/ARG | Critical | Use BuildKit secrets: `--mount=type=secret` | | COPY with broad glob | Medium | Use specific paths, add .dockerignore | | Unnecessary EXPOSE | Low | Only expose ports the app uses | | No HEALTHCHECK | Medium | Add HEALTHCHECK with appropriate interval | | Privileged instructions | High | Avoid `--privileged`, drop capabilities | | Package manager cache retained | Low | Clean in same RUN layer |
2. **Runtime security checks**
| Check | Severity | Fix | |-------|----------|-----| | Container running as root | Critical | Set user in Dockerfile or compose | | Writable root filesystem | Medium | Use `read_only: true` in compose | | All capabilities retained | High | Drop all, add only needed: `cap_drop: [ALL]` | | No resource limits | Medium | Set `mem_limit` and `cpus` | | Host network mode | High | Use bridge or custom network |
411 production-ready skills for Claude Code and 12 other coding agents, covering engineering, product, marketing, compliance, finance and the C-suite. We test whether each skill loads when you ask in plain words, and publish the results.
Use when someone wants to build, launch, grade or schedule a Claude Managed Agent in their own Anthropic account ('build me an…
Use when a launched managed agent needs grading against a rubric and improving ('grade my agent', 'is it good enough'). Builds…
Use when someone has an agent idea to scope before launch ('help me scope an agent'). Interviews them about the one job and…
Use when a graded managed agent should run on a schedule, on an event trigger or on demand ('run it every morning'). Validates…
Use when a managed-agent build sheet is ready to launch ('launch it', 'deploy the agent'). Generates and validates API payloads…
Use when closing out a launched managed agent ('wrap up', 'what do I own now'). Inventories primitives with…
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid…
Design and build AI agents for any domain. Use when users: (1) ask to "create an agent", "build an assistant", or "design an AI…