Skip to content
Back to skills

Odoo

ASecurity

Version-aware Odoo engineering: build, review, debug, and migrate addons, modules, themes, and full projects across Odoo 17.0, 18.0, and 19.0. Use when the user mentions Odoo, an addon/module, __manifest__.py, models/ORM, XML views, ir.model.access.csv or record rules, QWeb/OWL/assets, controllers, wizards, reports, migrations, or when an Odoo codebase is detected. Detects the target version first, then applies version-specific deltas — never mixing conventions across versions.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 24, 2026
ai-agentspythongitsecurity

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned September 24, 2026

npx -y skills add dr-spook/master-odoo --skill odoo --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Odoo?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Odoo
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/dr-spook-odoo/badge)](https://www.skillsdirectory.com/skills/dr-spook-odoo)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: odoo
description: >-
  Version-aware Odoo engineering: build, review, debug, and migrate addons,
  modules, themes, and full projects across Odoo 17.0, 18.0, and 19.0. Use when
  the user mentions Odoo, an addon/module, __manifest__.py, models/ORM, XML
  views, ir.model.access.csv or record rules, QWeb/OWL/assets, controllers,
  wizards, reports, migrations, or when an Odoo codebase is detected. Detects the
  target version first, then applies version-specific deltas — never mixing
  conventions across versions.
---

# Odoo (version-aware core)

Architecture : **un noyau agnostique + des deltas par version**. On écrit le savoir
stable une fois (`core/`, `reference/`), et on ne surcharge que les écarts réels
par version (`deltas/`). Ajouter une future version = écrire un seul fichier delta.

> Langue : la description (frontmatter) est en anglais pour un déclenchement fiable ;
> le corps est en français, langue de travail de l'utilisateur. Bascule possible en EN
> si tu veux une diffusion plus large des guides `reference/`.

## Protocole d'exécution — dans cet ordre, à chaque tâche

1. **Détecter la version cible AVANT tout.** Sources, par priorité :
   - `__manifest__.py` → clé `version` (`"18.0.1.0.0"` → série **18.0**) ;
   - nom de branche git (`17.0` / `18.0` / `19.0`) ;
   - `$ODOO_SOURCE` → `odoo/release.py` (`version_info`) ;
   - dépendances/config du repo.
   Si la version reste indéterminable **et** que ça bloque → poser **une** question.
   Ne jamais deviner une version.
2. **Toujours appliquer** `core/00-identity-and-protocol.md` et
   `core/01-security-baseline.md`. Ce sont des invariants (vrais de 17 à 19+).
3. **Charger la connaissance de fond** utile à la tâche depuis `reference/`
   (socle dédupliqué, en cours de construction).
4. **Charger `deltas/odoo-<série>.md`** et le traiter comme **surcharge
   autoritaire** : quand un delta contredit le socle, **le delta gagne** pour
   cette version. Si un point n'est pas dans le delta, le socle s'applique.
5. **Livrer** : architecture d'abord, puis code chirurgical, sécurisé par défaut,
   en citant la source du fait quand il découle d'un choix de version.

## Règle d'or anti-hallucination

Hors des sources ci-dessus (specs runtime > `reference/` > `deltas/`), **tu ne sais
pas**. Tu ne inventes ni champ, ni signature, ni option de manifest, ni comportement
de version. Dans les deltas, toute zone marquée `⚠️ À VÉRIFIER` n'est **pas**
confirmée sur la source officielle : ne l'affirme pas, propose de vérifier.

## Versions couvertes

| Série | Statut delta | Python | Note structurelle |
|-------|--------------|--------|-------------------|
| 17.0  | vérifié (noyau) | ≥3.10 | ORM dans `odoo/models.py`, `odoo/fields.py` |
| 18.0  | vérifié (noyau) | ≥3.10 | idem |
| 19.0  | vérifié (noyau) + zones à compléter | ≥3.10 (max 3.14) | ORM déplacé dans `odoo/orm/` |

Ajouter la v20/21/… : créer `deltas/odoo-<série>.md`, ne toucher ni au noyau ni au socle.

Files in this skill

  • SKILL.md3 KB
  • core/00-identity-and-protocol.md3.4 KB
  • core/01-security-baseline.md2 KB
  • deltas/odoo-17.md1.6 KB
  • deltas/odoo-18.md1.7 KB
  • deltas/odoo-19.md3.1 KB
  • reference/README.md2.1 KB
  • reference/actions.md1.9 KB
  • reference/controllers.md1.8 KB
  • reference/data.md1.6 KB
  • reference/decorators.md1.6 KB
  • reference/fields.md2.1 KB
  • reference/manifest.md2.1 KB
  • reference/migration.md1.7 KB
  • reference/mixins.md1.6 KB
  • reference/models.md2.6 KB
  • reference/owl.md2.2 KB
  • reference/performance.md1.5 KB
  • reference/reports.md1.9 KB
  • reference/security.md2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…