Guides creating custom Odoo modules: scaffolding, model inheritance, ORM patterns, security, and manifest configuration for Community/Enterprise editions.
How this skill is triggered — by the user, by Claude, or both
Slash command
/agentic-bundle-odoo-erp:odoo-module-developerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill transforms your AI into an expert Odoo custom module developer. It guides you through scaffolding new modules, defining models, setting up security, and following Odoo's coding conventions for both Community and Enterprise editions.
This skill transforms your AI into an expert Odoo custom module developer. It guides you through scaffolding new modules, defining models, setting up security, and following Odoo's coding conventions for both Community and Enterprise editions.
sale.order).onchange, compute, and constraint methods correctly.@odoo-module-developer and describe the module you want to build.__manifest__.py, __init__.py, models, views, and security files.Prompt: Create a module called "hospital_management" with a model for patients
Generated structure:
hospital_management/
├── __manifest__.py
├── __init__.py
├── models/
│ ├── __init__.py
│ └── hospital_patient.py
├── views/
│ └── hospital_patient_views.xml
├── security/
│ ├── ir.model.access.csv
│ └── security.xml
└── data/
__manifest__.py:
{
'name': 'Hospital Management',
'version': '17.0.1.0.0',
'category': 'Healthcare',
'depends': ['base', 'mail'],
'data': [
'security/ir.model.access.csv',
'views/hospital_patient_views.xml',
],
'installable': True,
'license': 'LGPL-3',
}
models/hospital_patient.py:
from odoo import models, fields, api
class HospitalPatient(models.Model):
_name = 'hospital.patient'
_description = 'Hospital Patient'
_inherit = ['mail.thread', 'mail.activity.mixin']
name = fields.Char(string='Patient Name', required=True, tracking=True)
birth_date = fields.Date(string='Birth Date')
doctor_id = fields.Many2one('res.users', string='Assigned Doctor')
state = fields.Selection([
('draft', 'New'),
('confirmed', 'Confirmed'),
('done', 'Done'),
], default='draft', tracking=True)
_name with a namespace (e.g., hospital.patient)._inherit = ['mail.thread'] to add chatter/logging automatically.version in manifest as {odoo_version}.{major}.{minor}.{patch}.'author' and 'website' in __manifest__.py so your module is identifiable in the Apps list._inherit.ir.model.access.csv or users will get access errors.@odoo-xml-views-builder for view XML.__manifest__.py auto-loading) — this skill targets v14+.company_id, website_id).@odoo-automated-tests for that.207plugins reuse this skill
First indexed Jun 2, 2026
Showing the 6 earliest of 207 plugins
npx claudepluginhub sickn33/agentic-awesome-skills --plugin agentic-bundle-odoo-erpGuides creating custom Odoo modules: scaffolding, model inheritance, ORM patterns, security, and manifest configuration for Community/Enterprise editions.
Provides Odoo 17 development references for Python models, ORM, XML views/data, OWL/JS client code, QWeb reports, security, cron actions, migrations, tests, and performance. Ideal for building, fixing, refactoring, or reviewing custom addons.
Guides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.