CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

odoo-docker-deployment

Production-ready Docker and docker-compose setup for Odoo with PostgreSQL, persistent volumes, environment-based configuration, and Nginx reverse proxy.

Quality

71%

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 ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/odoo-docker-deployment/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 is strongly actionable with near-complete, copy-paste-ready configuration and commands, undermined by two executable gaps (missing PostgreSQL healthcheck; uninterpolated env placeholders in odoo.conf) and a lack of validation checkpoints around risky operations like backups and module updates. Structure and disclosure are good for a single-file skill, with mild padding in the Overview and How It Works sections.

Suggestions

Add a PostgreSQL healthcheck to the db service (e.g., "test: [\"CMD-SHELL\", \"pg_isready -U odoo\"]") so the `service_healthy` dependency in Example 1 actually resolves and the compose file runs as written.

Fix the odoo.conf secrets: `${VAR}` placeholders are not interpolated in a mounted INI file — document a concrete mechanism (entrypoint env substitution or a sed/secure-copy step) instead of the placeholder syntax.

Add validation checkpoints around risky operations: verify `docker compose ps`/logs show a healthy Odoo after `up -d`, confirm the pg_dump file is non-empty after backup, and check module update logs before considering the update successful; trim the redundant Overview and How It Works sections.

DimensionReasoningScore

Conciseness

The code blocks are lean with high-value comments (worker formula, memory thresholds, deprecated 'version' key note), but the Overview restates the frontmatter description almost verbatim and "How It Works" ("Mention @odoo-docker-deployment and describe your deployment scenario") is conversational filler. This is mostly efficient with some unnecessary explanation that could be tightened, rather than the minor-only over-explanation of anchor 4.

3 / 5

Actionability

Highly concrete: a complete docker-compose.yml, a tuned odoo.conf with explicit values ("workers = 9", "limit_memory_hard = 2147483648"), and six copy-paste commands including backup and module update. Two gaps keep it from 5: the db service defines no healthcheck yet odoo uses "depends_on: db: condition: service_healthy" (so Example 1 will not start as written), and "${POSTGRES_PASSWORD}" / "${ODOO_MASTER_PASSWORD}" placeholders in odoo.conf will not be interpolated in a mounted INI file, making that config non-functional as written.

4 / 5

Workflow Clarity

The three-step "Activate/Generate/Debug" sequence is loose and conversational rather than operational, and there are no validation checkpoints: no post-`up` health verification, no check that the pg_dump backup is non-empty, and no post-update verification. Because the operations involved (restarts, DB backups, module updates) are batch/risk-bearing, the missing validation steps cap this dimension at 3 per the judging guidelines.

3 / 5

Progressive Disclosure

A single-file skill with no bundle files, organized into clear sections (When to Use, Examples, Best Practices, Limitations), and the Nginx reverse proxy detail appropriately deferred one level deep to the official Odoo deployment docs. It does not reach 5 because at ~130 lines it exceeds the simple-skill exception, and material like the full Nginx/SSL configuration or worker-tuning guidance could justify a separate reference file rather than being absent entirely.

4 / 5

Total

14

/

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 concrete, distinct description that clearly states what the skill delivers, but it lacks any explicit "Use when..." trigger clause, capping completeness and leaving natural trigger phrases like "deploy Odoo" unstated. Trigger term coverage is otherwise strong thanks to the named technologies.

Suggestions

Append an explicit trigger clause, e.g., "Use when deploying or self-hosting Odoo with Docker, docker-compose, or PostgreSQL, or when troubleshooting an Odoo container that won't start."

Include natural user phrasings such as "deploy Odoo", "self-hosted Odoo", and "SSL/Let's Encrypt" to round out trigger term coverage.

Optionally mention the troubleshooting and database-backup capabilities the body already covers so the description's capability list is more comprehensive.

DimensionReasoningScore

Specificity

The description names the domain and several concrete deliverables — "Docker and docker-compose setup for Odoo with PostgreSQL, persistent volumes, environment-based configuration, and Nginx reverse proxy" — with only minor gaps (e.g., troubleshooting and backup support from the body are not mentioned). It does not reach 5 because coverage is not comprehensive and capabilities are framed as components rather than actions.

4 / 5

Completeness

The "what" is explicit (production-ready Docker/docker-compose setup for Odoo with named components), but there is no "Use when..." clause or equivalent explicit trigger guidance — the "when" is only weakly implied by the deployment framing, which caps this dimension at 3 per the judging guidelines.

3 / 5

Trigger Term Quality

Strong natural keywords users would actually say: "Odoo", "Docker", "docker-compose", "PostgreSQL", "Nginx reverse proxy", "volumes". A few common terms are missing ("deploy/deployment", "self-hosted", "SSL"), keeping it below anchor 5, but coverage clearly exceeds the partial coverage of anchor 3.

4 / 5

Distinctiveness Conflict Risk

"Odoo" is a highly distinct niche trigger, and the full stack (Docker + PostgreSQL + Nginx for Odoo) carves out a clear deployment niche with minimal overlap risk against other skills.

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

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/AI-Agents-Safe-Coding-Skills-claude/skills/odoo-docker-deployment/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.