Deploy To Temps
gotempsh/temps
Deploy applications to the Temps platform with automatic framework detection, Dockerfile generation, and container orchestration.
Writing optimized, secure, multi-stage Dockerfiles with language-specific patterns (Python, Node.js, Go, Rust), BuildKit features, and distroless images.
$ npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ancoleman/ai-design-components writing-dockerfiles --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ancoleman/ai-design-components.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/writing-dockerfiles .claude/skills/writing-dockerfiles && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "writing-dockerfiles" agent skill from https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfiles into .claude/skills/writing-dockerfiles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-dockerfiles", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfilesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ancoleman/ai-design-components writing-dockerfiles --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ancoleman/ai-design-components.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/writing-dockerfiles .agents/skills/writing-dockerfiles && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "writing-dockerfiles" agent skill from https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfiles into .agents/skills/writing-dockerfiles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-dockerfiles", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ancoleman/ai-design-components writing-dockerfiles --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ancoleman/ai-design-components.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/writing-dockerfiles .cursor/skills/writing-dockerfiles && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "writing-dockerfiles" agent skill from https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfiles into .cursor/skills/writing-dockerfiles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-dockerfiles", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ancoleman/ai-design-components.git --path skills/writing-dockerfiles--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ancoleman/ai-design-components writing-dockerfiles --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ancoleman/ai-design-components.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/writing-dockerfiles .gemini/skills/writing-dockerfiles && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "writing-dockerfiles" agent skill from https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfiles into .gemini/skills/writing-dockerfiles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-dockerfiles", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ancoleman/ai-design-components writing-dockerfilesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ancoleman/ai-design-components.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/writing-dockerfiles .github/skills/writing-dockerfiles && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "writing-dockerfiles" agent skill from https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfiles into .github/skills/writing-dockerfiles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-dockerfiles", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ancoleman/ai-design-components writing-dockerfiles --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ancoleman/ai-design-components.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/writing-dockerfiles .opencode/skills/writing-dockerfiles && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "writing-dockerfiles" agent skill from https://github.com/ancoleman/ai-design-components/tree/main/skills/writing-dockerfiles into .opencode/skills/writing-dockerfiles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "writing-dockerfiles", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
writing-dockerfilesWriting optimized, secure, multi-stage Dockerfiles with language-specific patterns (Python, Node.js, Go, Rust), BuildKit features, and distroless images.
Writing Dockerfiles is an agent skill from ancoleman/ai-design-components. Writing optimized, secure, multi-stage Dockerfiles with language-specific patterns (Python, Node.js, Go, Rust), BuildKit features, and distroless images. Use when containerizing applications, optimizing existing Dockerfiles, or reducing image sizes.
Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 18 other files, including scripts and reference files (for example `outputs.yaml`, `references/base-image-selection.md` and `references/buildkit-features.md`).
It sits in DevOps & Cloud, covering Containers. It works with Python, Node.js, Rust and Docker. The repository describes itself as: Comprehensive UI/UX and Backend component design skills for AI-assisted development with Claude. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 76551b7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Shell and Python), which the agent can run.
Shell commands in SKILL.md call:
dockertrivynpmpythonbashFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GITHUB_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Writing Dockerfiles loads about 3.2k tokens when it runs, and up to ~31k if it reads all its reference files. Until then it costs about 67 tokens; SKILL.md has 793 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
.env.env.localAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from ancoleman/ai-design-components at commit 76551b7, republished under its MIT licence (© ancoleman). 793 words, ~3,210 tokens.
.claude/skills/writing-dockerfiles/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.Create production-grade Dockerfiles with multi-stage builds, security hardening, and language-specific optimizations.
Invoke when:
Ask three questions to determine the approach:
1. What language?
references/python-dockerfiles.mdreferences/nodejs-dockerfiles.mdreferences/go-dockerfiles.mdreferences/rust-dockerfiles.mdreferences/java-dockerfiles.md2. Is security critical?
references/security-hardening.md)3. Is image size critical?
Separate build environment from runtime environment to minimize final image size.
Pattern:
# Stage 1: Build
FROM build-image AS builder
RUN compile application
# Stage 2: Runtime
FROM minimal-runtime-image
COPY --from=builder /app/binary /app/
CMD ["/app/binary"]Benefits:
Decision matrix:
| Language | Build Stage | Runtime Stage | Final Size |
|---|---|---|---|
| Go (static) | golang:1.22-alpine | gcr.io/distroless/static-debian12 | 10-30MB |
| Rust (static) | rust:1.75-alpine | scratch | 5-15MB |
| Python | python:3.12-slim | python:3.12-slim | 200-400MB |
| Node.js | node:20-alpine | node:20-alpine | 150-300MB |
| Java | maven:3.9-eclipse-temurin-21 | eclipse-temurin:21-jre-alpine | 200-350MB |
Distroless images (Google-maintained):
gcr.io/distroless/static-debian12 → Static binaries (2MB)gcr.io/distroless/base-debian12 → Dynamic binaries with libc (20MB)gcr.io/distroless/python3-debian12 → Python runtime (60MB)gcr.io/distroless/nodejs20-debian12 → Node.js runtime (150MB)See references/base-image-selection.md for complete comparison.
Enable BuildKit for advanced caching and security:
export DOCKER_BUILDKIT=1
docker build .
# OR
docker buildx build .Key features:
--mount=type=cache → Persistent package manager caches--mount=type=secret → Inject secrets without storing in layers--mount=type=ssh → SSH agent forwarding for private reposSee references/buildkit-features.md for detailed patterns.
Order Dockerfile instructions from least to most frequently changing:
# 1. Base image (rarely changes)
FROM python:3.12-slim
# 2. System packages (rarely changes)
RUN apt-get update && apt-get install -y build-essential
# 3. Dependencies manifest (changes occasionally)
COPY requirements.txt .
RUN pip install -r requirements.txt
# 4. Application code (changes frequently)
COPY . .
# 5. Runtime configuration (rarely changes)
CMD ["python", "app.py"]BuildKit cache mounts:
RUN --mount=type=cache,target=/root/.cache/pip \
pip install -r requirements.txtCache persists across builds, eliminating redundant downloads.
Essential security practices:
1. Non-root users
# Debian/Ubuntu
RUN useradd -m -u 1000 appuser && chown -R appuser:appuser /app
USER appuser
# Alpine
RUN adduser -D -u 1000 appuser && chown -R appuser:appuser /app
USER appuser
# Distroless (built-in)
USER nonroot:nonroot2. Secret management
# ❌ NEVER: Secret in layer history
RUN git clone https://${GITHUB_TOKEN}@github.com/private/repo.git
# ✅ ALWAYS: BuildKit secret mount
RUN --mount=type=secret,id=github_token \
TOKEN=$(cat /run/secrets/github_token) && \
git clone https://${TOKEN}@github.com/private/repo.gitBuild with:
docker buildx build --secret id=github_token,src=./token.txt .3. Vulnerability scanning
# Trivy (recommended)
trivy image myimage:latest
# Docker Scout
docker scout cves myimage:latest4. Health checks
HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \
CMD wget --no-verbose --tries=1 --spider http://localhost:8080/health || exit 1See references/security-hardening.md for comprehensive hardening patterns.
Create .dockerignore to exclude unnecessary files:
# Version control
.git
.gitignore
# CI/CD
.github
.gitlab-ci.yml
# IDE
.vscode
.idea
# Testing
tests/
coverage/
**/*_test.go
**/*.test.js
# Build artifacts
node_modules/
dist/
build/
target/
__pycache__/
# Environment
.env
.env.local
*.logReduces build context size and prevents leaking secrets.
Three approaches:
Example: Poetry multi-stage
FROM python:3.12-slim AS builder
RUN --mount=type=cache,target=/root/.cache/pip \
pip install poetry==1.7.1
COPY pyproject.toml poetry.lock ./
RUN poetry export -f requirements.txt --output requirements.txt
RUN --mount=type=cache,target=/root/.cache/pip \
python -m venv /opt/venv && \
/opt/venv/bin/pip install -r requirements.txt
FROM python:3.12-slim
COPY --from=builder /opt/venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
USER 1000:1000
CMD ["python", "-m", "uvicorn", "main:app", "--host", "0.0.0.0"]See references/python-dockerfiles.md for complete patterns and examples/python-fastapi.Dockerfile.
Key patterns:
npm ci (not npm install) for reproducible buildsnode user (UID 1000)Example: Express multi-stage
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN --mount=type=cache,target=/root/.npm \
npm ci
COPY . .
RUN npm run build
RUN npm prune --omit=dev
FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/dist ./dist
USER node
CMD ["node", "dist/index.js"]See references/nodejs-dockerfiles.md for npm/pnpm/yarn patterns and examples/nodejs-express.Dockerfile.
Smallest possible images:
-ldflags="-s -w"/go/pkg/mod and build cacheExample: Distroless static
FROM golang:1.22-alpine AS builder
WORKDIR /app
COPY go.mod go.sum ./
RUN --mount=type=cache,target=/go/pkg/mod \
go mod download
COPY . .
RUN --mount=type=cache,target=/go/pkg/mod \
--mount=type=cache,target=/root/.cache/go-build \
CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w" -o main .
FROM gcr.io/distroless/static-debian12
COPY --from=builder /app/main /app/main
USER nonroot:nonroot
ENTRYPOINT ["/app/main"]See references/go-dockerfiles.md and examples/go-microservice.Dockerfile.
Ultra-small static binaries:
Example: Scratch base
FROM rust:1.75-alpine AS builder
RUN apk add --no-cache musl-dev
WORKDIR /app
# Cache dependencies
COPY Cargo.toml Cargo.lock ./
RUN --mount=type=cache,target=/usr/local/cargo/registry \
mkdir src && echo "fn main() {}" > src/main.rs && \
cargo build --release --target x86_64-unknown-linux-musl && \
rm -rf src
# Build application
COPY src ./src
RUN --mount=type=cache,target=/usr/local/cargo/registry \
cargo build --release --target x86_64-unknown-linux-musl
FROM scratch
COPY --from=builder /app/target/x86_64-unknown-linux-musl/release/app /app
USER 1000:1000
ENTRYPOINT ["/app"]See references/rust-dockerfiles.md and examples/rust-actix.Dockerfile.
BuildKit cache mount locations:
| Language | Package Manager | Cache Mount Target |
|---|---|---|
| Python | pip | --mount=type=cache,target=/root/.cache/pip |
| Python | poetry | --mount=type=cache,target=/root/.cache/pypoetry |
| Python | uv | --mount=type=cache,target=/root/.cache/uv |
| Node.js | npm | --mount=type=cache,target=/root/.npm |
| Node.js | pnpm | --mount=type=cache,target=/root/.local/share/pnpm/store |
| Go | go mod | --mount=type=cache,target=/go/pkg/mod |
| Rust | cargo | --mount=type=cache,target=/usr/local/cargo/registry |
Persistent caches eliminate redundant package downloads across builds.
Validate Dockerfile quality:
# Lint Dockerfile
python scripts/validate_dockerfile.py Dockerfile
# Scan for vulnerabilities
trivy image myimage:latest
# Analyze image size
docker images myimage:latest
docker history myimage:latestCompare optimization results:
# Before optimization
docker build -t myapp:before .
# After optimization
docker build -t myapp:after .
# Compare
bash scripts/analyze_image_size.sh myapp:before myapp:afterSee scripts/validate_dockerfile.py for automated Dockerfile linting.
Upstream (provide input):
testing-strategies → Test application before containerizingsecurity-hardening → Application-level security before Docker layerDownstream (consume Dockerfiles):
building-ci-pipelines → Build and push Docker images in CIkubernetes-operations → Deploy containers to K8s clustersinfrastructure-as-code → Deploy containers with Terraform/PulumiParallel (related context):
secret-management → Inject runtime secrets (K8s secrets, vaults)observability → Container logging and metrics collection1. Static binary (Go/Rust) → Smallest image
gcr.io/distroless/static-debian12 or scratch2. Interpreted language (Python/Node.js) → Production-optimized
3. JVM (Java) → Optimized runtime
4. Security-critical → Maximum hardening
5. Development → Fast iteration
❌ Never:
latest tags (unpredictable builds)✅ Always:
python:3.12.1-slim, not python:3)Base image registries:
gcr.io/distroless/*python:*, node:*, golang:*registry.access.redhat.com/ubi9/*Vulnerability scanners:
trivy image myimage:latestdocker scout cves myimage:latestgrype myimage:latestReference documentation:
references/base-image-selection.md → Complete base image comparisonreferences/buildkit-features.md → Advanced BuildKit patternsreferences/security-hardening.md → Comprehensive security guidereferences/ directoryexamples/ directory© ancoleman, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 15 other files (scripts, references) in skills/writing-dockerfiles of ancoleman/ai-design-components.
Open the folder on GitHubat commit 76551b7
Writing Dockerfiles next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Writing Dockerfiles this skillancoleman/ai-design-components | 526 | — | ~3.2k | Automated safety check: Notes | MIT | |
| Deploy To Tempsgotempsh/temps | 826 | — | ~1.3k | Automated safety check: Notes | Apache-2.0 | |
| Containerization AssistantArabelaTso/Skills-4-SE | 253 | — | ~2.9k | Automated safety check: Notes | Apache-2.0 | |
| GitHub Actions CreatorFNOSP/FlyNarwhal | 495 | 1 repos | ~2.4k | Automated safety check: Pass | AGPL-3.0 | |
| Qdrant Advisorqdrant/skills | 253 | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Oci Functions Deployoracle/skills | 873 | — | ~4.6k | Automated safety check: Pass | UPL-1.0 |
gotempsh/temps
Deploy applications to the Temps platform with automatic framework detection, Dockerfile generation, and container orchestration.
ArabelaTso/Skills-4-SE
Generate Dockerfiles, Docker Compose configurations, and Kubernetes manifests for containerizing applications.
FNOSP/FlyNarwhal
A skill your agent uses when the user wants to create, generate, or set up a GitHub Actions workflow.
qdrant/skills
Diagnose, troubleshoot, and advise on any Qdrant deployment by loading the latest official Qdrant skills live from skills.qdrant.tech.
oracle/skills
Build, configure, scaffold, and deploy OCI Functions from a local machine using a dependency-first, Fn-context-guided flow with argv-safe mutation execution, nonce-scoped confirmations, and a…
ayutaz/piper-plus
Python canonical (src/pythonrun/piperplus/, src/python/pipertrain/, src/python/g2p/piperplusg2p/) を変更した PR で、 ONNX I/O 以外の追随漏れ (phonemizer / config schema / CLI flag / data 形式 / API 変更) を 7 ランタイム +…
ancoleman/ai-design-components
Builds AI chat interfaces and conversational UI with streaming responses, context management, and multi-modal support.
ancoleman/ai-design-components
Builds form components and data collection interfaces including contact forms, registration flows, checkout processes, surveys, and settings pages.
ancoleman/ai-design-components
Builds tables and data grids for displaying tabular information, from simple HTML tables to complex enterprise data grids.
ancoleman/ai-design-components
Creates comprehensive dashboard and analytics interfaces that combine data visualization, KPI cards, real-time updates, and interactive layouts.
ancoleman/ai-design-components
Designs layout systems and responsive interfaces including grid systems, flexbox patterns, sidebar layouts, and responsive breakpoints.
ancoleman/ai-design-components
Displays chronological events and activity through timelines, activity feeds, Gantt charts, and calendar interfaces.
Categories
Writing optimized, secure, multi-stage Dockerfiles with language-specific patterns (Python, Node.js, Go, Rust), BuildKit features, and distroless images. Writing Dockerfiles is an agent skill from ancoleman/ai-design-components.js, Go, Rust), BuildKit features, and distroless images.
Writing Dockerfiles fits situations like: containerizing applications; optimizing existing Dockerfiles; reducing image sizes.
Run `npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a claude-code`. Or copy the skill folder (skills/writing-dockerfiles in ancoleman/ai-design-components) into .claude/skills/writing-dockerfiles in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a codex`. Or copy the skill folder (skills/writing-dockerfiles in ancoleman/ai-design-components) into .agents/skills/writing-dockerfiles in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ancoleman/ai-design-components --skill writing-dockerfiles -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/writing-dockerfiles, .gemini/skills/writing-dockerfiles, .github/skills/writing-dockerfiles and .opencode/skills/writing-dockerfiles in your project.
Going by SKILL.md and its folder, Writing Dockerfiles needs a shell and Python for the scripts in its folder, the command-line tools its instructions call (docker, trivy, npm, python and bash) and credentials named GITHUB_TOKEN. Our summary lists: Python 3; Node.js; A Bash shell; Docker; A credential in GITHUB_TOKEN.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Writing Dockerfiles is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 28k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Writing Dockerfiles: Deploy To Temps (gotempsh/temps, 826 stars), Containerization Assistant (ArabelaTso/Skills-4-SE, 253 stars), GitHub Actions Creator (FNOSP/FlyNarwhal, 495 stars) and Qdrant Advisor (qdrant/skills, 253 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ancoleman (a GitHub user) maintains it in ancoleman/ai-design-components, which has 526 GitHub stars. The repository holds 75 skills in this directory. The repository was last updated on December 11, 2025.
Source: ancoleman/ai-design-components on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.