CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

docker-compose-generator

Generate multi-service Docker Compose files with common stacks (app + DB + Redis + Nginx), volumes, networks, healthchecks, depends_on, environment variables, and profiles.

Quality

76%

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

Fix and improve this skill with Tessl

tessl review fix ./infrastructure/docker-compose-generator/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

72%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.

A highly actionable, example-driven generator skill whose body is almost entirely executable code with no knowledge padding. Its weaknesses are the missing validation/verification checkpoints (including an unguarded destructive 'down -v') and the monolithic single-file layout that inlines variant patterns a reference file could hold.

Suggestions

Add explicit validation steps to the workflow, e.g. 'After writing the compose file, validate with docker compose config' and 'Verify health with docker compose ps after up', and warn that 'docker compose down -v' permanently deletes data volumes.

Split DB variants (MySQL, MongoDB) and the full reference stack into references/ files (e.g., references/variants.md) linked from a short overview section, keeping SKILL.md to the core pattern and command cookbook.

Fix the 'rediscommander/redis-commander:latest' example to use a pinned tag, consistent with the skill's own 'never use latest' convention.

DimensionReasoningScore

Conciseness

The body is dominated by copy-paste YAML and commands with almost no prose explaining concepts Claude already knows (no 'what is Docker' padding), matching 'efficient; minor instances of over-explanation that could be trimmed'. It falls short of the lean 5 anchor because the full .env.example block, both DB variant sections, and some comments restate obvious information, and one example (redis-commander) uses 'image: rediscommander/redis-commander:latest' against the skill's own 'pin image tags' convention.

4 / 5

Actionability

Fully executable, copy-paste-ready artifacts throughout: a complete multi-service compose file, a production override, a .env.example, a worker pattern, MySQL/MongoDB variants, and a full command cookbook covering the common cases. This squarely matches the 'fully executable; copy-paste ready code or commands; specific examples cover the common cases' anchor.

5 / 5

Workflow Clarity

The sections imply a rough sequence (scaffold → write compose → up → operate) but there is no explicit step sequence and no validation checkpoints (e.g., 'docker compose config' to validate the generated file, or 'docker compose ps' to confirm health after up). Notably, the destructive 'docker compose down -v' (volume removal) command is listed with no warning or verification step, and per the judging guideline missing validation around destructive operations caps workflow clarity at 3 — it cannot reach 4.

3 / 5

Progressive Disclosure

The single SKILL.md is ~300 lines with no bundle files (references/, scripts/, assets/ are absent) — the entire pattern library is inlined. Section headers are clear, but content that would naturally live one level deep (MySQL/MongoDB variants, the full reference compose file) is inline with no reference-file navigation, matching 'some structure but could be better organized; content that should be separate is inline' rather than the well-split 4 anchor.

3 / 5

Total

15

/

20

Passed

Description

70%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, specific description with excellent domain scoping and good trigger keywords, held back only by the complete absence of a 'when to use' clause. Adding an explicit 'Use when...' sentence with natural file-name triggers would raise it to top tier.

Suggestions

Add an explicit trigger clause, e.g. 'Use when the user asks to containerize an app with Docker Compose, mentions docker-compose.yml, or needs a local dev stack with a database or cache.'

Include natural file-name and synonym triggers such as 'docker-compose.yml', 'compose file', or 'containerize' alongside 'Docker Compose'.

Mention override/multi-environment support (docker-compose.prod.yml, .env) in the capability list to round out coverage.

DimensionReasoningScore

Specificity

The description names one concrete action ('Generate multi-service Docker Compose files') and enumerates specific covered constructs ('volumes, networks, healthchecks, depends_on, environment variables, and profiles') plus named stacks ('app + DB + Redis + Nginx'). This matches the 'lists several specific actions; minor gaps in coverage' anchor rather than the 5 anchor, whose examples show multiple distinct action verbs (extract, fill, merge, convert) — here coverage is feature-list-based with one primary verb.

4 / 5

Completeness

The 'what' is clear and concrete, but there is no 'Use when...' clause or equivalent explicit trigger guidance anywhere in the description. Per the judging guideline, a missing 'Use when...' clause caps completeness at 3 ('when' missing or only weakly implied); it cannot reach 4, which requires both 'what' and 'when'.

3 / 5

Trigger Term Quality

'Docker Compose' and 'multi-service' are strong natural triggers, and named components (DB, Redis, Nginx) match what users say. A few natural terms are missing — no file-name forms like 'docker-compose.yml' or 'compose file', nor synonyms like 'containerize' or 'container' — which fits the 'good keyword coverage; a few natural terms missing' anchor rather than the comprehensive-synonyms anchor at 5.

4 / 5

Distinctiveness Conflict Risk

'Docker Compose files' with named stacks and compose-specific constructs (healthchecks, depends_on, profiles) carves out a clear niche distinct from adjacent Dockerfile/Kubernetes skills, with minimal wrong-skill trigger risk. It clearly matches the 'clear niche with distinct triggers; minimal conflict risk' anchor rather than 4, whose example involves overlapping sibling formats.

5 / 5

Total

16

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

achreftlili/deep-dev-skills

Path

infrastructure/docker-compose-generator/SKILL.md

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.