CtrlK
BlogDocsLog inGet started
Tessl Logo

dockerfile-generator

Generates production-ready Dockerfiles with multi-stage builds, layer caching, security hardening (non-root users, minimal base images), health checks, and automatic .dockerignore creation. Validates output using devops-skills:dockerfile-validator with iterative error fixing. Use when a user wants to create, generate, write, or build a Dockerfile or docker image, containerize an app, set up a container, or needs a Dockerfile for Node.js, Python, Go, Java, or another language. Also applies when the user says 'containerize my app', 'docker-compose setup', 'container setup', or 'optimize my Docker build'.

72

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body delivers a genuinely actionable, well-sequenced seven-stage workflow with explicit validation and iteration loops, and its external references are real and clearly navigable. Its weaknesses are redundancy — the inlined .dockerignore template plus three checklist/notes sections that restate Stage 3 rules — and an assets/ directory that is entirely orphaned from the body, with the inline template diverging from the asset copy.

Suggestions

Replace the ~70-line inline .dockerignore template in Stage 4 with a pointer to assets/example.dockerignore (keeping only the language-specific customization notes), eliminating the duplication and the drift between the two copies.

Delete or merge the 'Notes', 'Quick Security Checklist', and 'Quick Optimization Checklist' sections into the Stage 3 Core Principles — they restate the same rules nearly verbatim and cost tokens on every invocation.

Reference the six example Dockerfiles in assets/ from the Language-Specific Templates section (e.g. 'Working example: assets/nextjs-production.Dockerfile') so the bundle files are discoverable instead of orphaned.

DimensionReasoningScore

Conciseness

The core workflow is efficient and project-specific, but there is real padding: the full ~70-line .dockerignore template is inlined in Stage 4 even though assets/example.dockerignore already exists, and the 'Quick Security Checklist', 'Quick Optimization Checklist', 'Always Include', and 'Notes' sections largely restate the Stage 3 Core Principles verbatim. Fits the 3 anchor ('mostly efficient but includes some unnecessary... could be tightened'); it is not the 2 anchor because the padding is redundant repetition of genuine guidance rather than explanations of concepts Claude already knows, and not the 4 anchor because roughly a fifth of the body is duplicate content that should be trimmed.

3 / 5

Actionability

Fully executable guidance throughout: exact MCP tool names ('mcp__context7__resolve-library-id', 'mcp__context7__get-library-docs' with parameters), a concrete search-query pattern, the required syntax directive '# syntax=docker/dockerfile:1', real hadolint codes with fixes ('Error: DL3006 - Missing version tag / Fix: Change FROM node:alpine to FROM node:20-alpine'), copy-paste bash usage commands, and BAD/GOOD anti-pattern pairs. Matches the 5 anchor (copy-paste ready, covers common cases).

5 / 5

Workflow Clarity

Seven clearly sequenced stages each with an Objective, an explicit validation checkpoint (Stage 5: 'REQUIRED: Always validate after generation' invoking devops-skills:dockerfile-validator), and a documented feedback loop (Stage 6: 'Iterate at least ONCE if validation finds errors... Repeat until clean OR maximum 3 iterations') with a worked iteration example and a dedicated Error Handling section. Matches the 5 anchor (explicit validation steps, error-recovery loops, checklists).

5 / 5

Progressive Disclosure

Good structure: all five references/ files cited are real, one level deep, and clearly signaled by topic ('Security: references/security_best_practices.md - Non-root users, minimal images, secrets management'), and scripts/ are listed with purpose and an explicit 'when using this skill' boundary. Falls short of the 5 anchor because the 7 files in assets/ (six example Dockerfiles and example.dockerignore) are never referenced from the body, and the inlined Stage 4 .dockerignore template duplicates — and drifts from — assets/example.dockerignore, i.e. content that belongs in a bundle file is inlined. Comfortably above the 3 anchor, whose references would be unclear or un-signaled.

4 / 5

Total

17

/

20

Passed

Description

96%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it states concrete capabilities in third person, gives an explicit 'Use when...' clause rich with natural trigger synonyms, and even names the downstream validation skill. The only weakness is mild conflict risk from the 'docker-compose setup' and 'container setup' triggers, which point at adjacent work this skill does not itself perform.

DimensionReasoningScore

Specificity

Lists multiple concrete actions with comprehensive coverage: 'multi-stage builds, layer caching, security hardening (non-root users, minimal base images), health checks, and automatic .dockerignore creation', plus 'Validates output using devops-skills:dockerfile-validator with iterative error fixing'. This matches the 5 anchor (multiple specific concrete actions) and exceeds the 4 anchor, which expects minor coverage gaps; no capability here is vague or generic.

5 / 5

Completeness

Explicitly answers both questions: 'what' via 'Generates production-ready Dockerfiles with...' and 'when' via a concrete 'Use when...' clause with trigger phrases and an 'Also applies when...' extension. Matches the 5 anchor exactly; not the 4 anchor, whose 'when' would be less explicit or specific.

5 / 5

Trigger Term Quality

Covers natural synonyms and phrasings users would actually say: 'create, generate, write, or build a Dockerfile or docker image, containerize an app, set up a container', language names (Node.js, Python, Go, Java), and quoted phrases like 'containerize my app', 'docker-compose setup', 'optimize my Docker build'. Matches the 5 anchor (comprehensive natural terms including synonyms); the 4 anchor would require a few natural terms to be missing, which is not the case.

5 / 5

Distinctiveness Conflict Risk

Dockerfile generation is a clear niche with distinct triggers, but there is minor overlap risk: the trigger 'docker-compose setup' invites invocation for compose work the skill does not perform, and the description names the sibling 'devops-skills:dockerfile-validator' without a generation-vs-validation boundary in the description itself. Fits the 4 anchor ('mostly distinct; minor overlap risk') rather than 5, which requires minimal conflict risk.

4 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
pantheon-org/tekhne
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.