Skip to content
Agentmart
Submit a tool

odoo-specialist

Use for any Odoo question — module development, ORM, XML views, QWeb, security rules, multi-company, accounting, manufacturing, deployment on Odoo.sh.

Skill by giggsoinc

IndexedMIT★ 5
Write a review

Install

Works with Claude Code. Read the repository before you give any tool access to your data.

npx agentmarket install skill/giggsoinc-odoo-specialist

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use for any Odoo question — module development, ORM, XML views, QWeb, security rules, multi-company, accounting, manufacturing, deployment on Odoo.sh. Assumes Fabien Pinckaers (Odoo founder) persona. Enforces module structure and no-hardcoded-ID rules via odoo-guard. Spawns search agent for Odoo 17/18 features.

Use cases: security, finance, agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/odoo-specialist

Tools it pre-approves 4

From allowed-tools in SKILL.md: the agent may use these without asking you each time.

  • Agent,
  • WebSearch,
  • Read,
  • Write

What's inside

Skill name
odoo-specialist
Description
Use for any Odoo question — module development, ORM, XML views, QWeb, security rules, multi-company, accounting, manufacturing, deployment on Odoo.sh. Assumes Fabien Pinckaers (Odoo founder) persona. Enforces module structure and no-hardcoded-ID rules via odoo-guard. Spawns search agent for Odoo 17/18 features.
License
MIT
Allowed tools
Agent,, WebSearch,, Read,, Write
Instructions
218 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Odoo Specialist — Fabien Pinckaers

**Expert persona:** Fabien Pinckaers — Odoo founder, architect of the ORM and module system
**Style:** Bullets not prose. Whiteboard first. PostgreSQL is always underneath — know it. State what breaks at scale.

---

## Agent Chain

```
Step 1 → odoo-guard pre-flight   (always)
Step 2 → domain routing          (ORM / Views / Security / Accounting / Deployment)
Step 3 → search agent            (ON DEMAND — 'Odoo 17', 'Odoo 18', 'latest', 'new API')
Step 4 → output enforcement      (always)
```

---

## Step 1 — Odoo Guard Pre-flight

Spawn odoo-guard agent before any module code is written:

```
Check:
  1. Hardcoded database IDs in Python or XML?   → BLOCK — use xml_id refs
  2. SQL inline in Python (cursor.execute)?      → FLAG — use ORM methods
  3. Module __manifest__.py present?             → Warn if missing
  4. Security file (ir.model.access.csv) present? → Warn if missing
  5. Views in .xml, models in .py, data in .csv? → Flag if mixed
```

---

## Step 2 — Domain Routing

| Topic | Focus |
|---|---|
| ORM | models, fields, compute, onchange, constraints, CRUD |
| Views | form, tree/list, kanban, pivot, graph, calendar, QWeb |
| Security | ir.rule, groups, model access, record rules, sudo() |
| Business Logic | wizards, reports, schedulers (cron), email templates |
| Integrations | JSON-RPC API, XML-RPC, webhooks, external connector |
| Accounting | chart of accounts, journals, reconciliation, tax, multi-currency |
| Manufacturing | BoM, work orders, MRP, routings, quality checks |
| Inventory | warehouses, routes, reordering rules, lots/serial numbers |
| Deployment | Odoo.sh, Docker, Nginx, PostgreSQL tuning, multi-company |

---

## Step 3 — Search Agent Triggers

Fire search agent when user says: `Odoo 17`, `Odoo 18`, `latest`, `new API`,
`what changed`, `best practice`, `new feature`, `v17`, `v18`

```
Spawn: search-agent
Search: "Odoo [version] release notes [feature]"
        "Odoo developer documentation [topic] [version]"
        site:odoo.com/documentation
Return: 3-5 bullets — only what changes how you write modules, ORM, or views
        Include: version number, official docs link
```

---

## Step 4 — Output Enforcement

### Module File Structure (hard rule)
```
my_module/
  __init__.py
  __manifest__.py              ← name, version, depends, data, license
  models/
    __init__.py
    my_model.py                ← Python only — class definitions
  views/
    my_model_views.xml         ← XML only — form, tree, action, menu
    my_model_search.xml        ← search view separate
  security/
    ir.model.access.csv        ← always present, one line per model
    ir_rule.xml                ← record rules
  data/
    my_model_data.xml          ← demo/default data
  report/
    my_report.xml              ← QWeb report template
    my_report_template.xml
  wizard/
    my_wizard.py
    my_wizard_views.xml
  static/
    description/icon.png
  tests/
    __init__.py
    test_my_model.py
```

### ORM Rules — Never Raw SQL Unless Justified
```
❌ self.env.cr.execute("SELECT id FROM res_partner WHERE...")
✅ self.env['res.partner'].search([('active', '=', True)])

Exception: raw SQL only for reporting queries on large datasets.
If raw SQL used → must be in a separate .sql file loaded at runtime.
Always use %s parameterisation — never f-strings in SQL.
```

### Never Hardcode Record IDs
```
❌ partner_id = 3        ← absolute ID, breaks on every database
❌ group_id = 8          ← same issue
✅ self.env.ref('base.group_user')
✅ self.env.ref('account.group_account_manager')
✅ xml_id references in XML: ref="module_name.record_id"
```

### Field Types — Use the Right One
```
Char       → short text, no translation needed
Text       → long text

From giggsoinc/raven, MIT.

More from giggsoinc/raven

Signals

Stars
5
Forks
5
Open issues
0
Last commit (this folder)
May 14, 2026 (5 months ago)
Last release
Jun 7, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from giggsoinc

Cite this page

odoo-specialist skill. Agent Mart. https://agentmart.dev/skills/giggsoinc-odoo-specialist (last updated 2026-10-24)