Odoo
by @ivangdavila
Operate Odoo across CRM, sales, inventory, purchasing, and accounting with module-aware planning, read-before-write checks, and safe execution.
clawhub install odooπ About This Skill
name: Odoo slug: odoo version: 1.0.0 homepage: https://clawic.com/skills/odoo description: "Operate Odoo across CRM, sales, inventory, purchasing, and accounting with module-aware planning, read-before-write checks, and safe execution." changelog: "Turns generic Odoo help into a module-aware workflow for safer reporting, imports, integrations, and business operations." metadata: {"clawdbot":{"emoji":"π’","requires":{"bins":[]},"os":["linux","darwin","win32"],"configPaths":["~/odoo/"]}}
Odoo
Odoo operating workflow for live ERP systems. Use this when the agent must inspect, report on, reconcile, import, configure, or safely change data in Odoo Online, Odoo.sh, or self-hosted environments.
When to Use
Use when the task clearly belongs to Odoo: CRM, quotations, sales orders, invoices, stock moves, purchase orders, manufacturing, projects, subscriptions, or accounting. Best fit when the user needs help across modules, environments, and hosting surfaces instead of only one narrow report or one raw API call.
Use this skill to turn vague business asks into safe, module-aware actions: identify the right records, choose the right interface, preview impact, and only then write or automate.
Architecture
Memory lives in ~/odoo/. If ~/odoo/ does not exist, run setup.md. See memory-template.md for structure.
~/odoo/
βββ memory.md # companies, modules, approval boundaries, and stable preferences
βββ instances.md # instance URLs, environments, versions, and auth lanes
βββ modules.md # custom modules, renamed fields, and local conventions
βββ incidents.md # failed imports, access issues, broken automations, and recoveries
Quick Reference
Use the smallest matching file instead of mentally loading the whole ERP every time.
| Topic | File |
|-------|------|
| Setup guide | setup.md |
| Memory template | memory-template.md |
| Hosting surface map | surfaces.md |
| Operating lanes by module | operations.md |
| Real request translations | examples.md |
| Safe writes and approval ladder | safety.md |
| Reporting and KPI scoping | reporting.md |
| API, imports, and automation choices | integrations.md |
| Common Odoo models and objects | models.md |
| Broken flow and access triage | triage.md |
Requirements
Core Rules
1. Identify the Lane Before Touching Records
2. Resolve Module, Model, and Business Object Precisely
3. Preview Before Any Write
create, write, unlink, or import.4. Respect Finality in Accounting, Inventory, and Procurement
5. Choose the Lowest-Risk Interface
6. Scope Business Context Before Giving Numbers
Quick Start
1. Detect the lane: reporting, operational change, import, config, or integration.
2. Identify the Odoo surface: hosting model, modules involved, environment, version if known, and any customizations.
3. Open the matching file:
- surfaces.md for Odoo Online, Odoo.sh, or self-hosted constraints
- operations.md for day-to-day business flows
- examples.md for fast translation from user request to lane and safe first move
- reporting.md for KPIs and reconciliation
- safety.md for risky writes, corrections, and approvals
- integrations.md for API, import/export, and automation design
- triage.md for access, module, and workflow failures
4. Explain the impact before suggesting an operation that changes records or business state.
Default Moves
Use these defaults when the request is underspecified or when multiple Odoo paths are possible. They are not shortcuts; they are the safest first move for each common situation.
| Situation | First move | Why | |----------|------------|-----| | Vague business request | Translate it into module, model, state, and output format | Prevents acting on the wrong object | | Unknown hosting model | Classify as Odoo Online, Odoo.sh, or self-hosted before suggesting tools | UI, shell, logs, and API access differ sharply | | Bulk update | Preview affected records, duplicates, required keys, and rollback plan | Imports and mass writes are easy to misapply | | Reporting request | Lock company, period, timezone, status filters, and measures | Odoo numbers drift fast without scope | | Automation request | Decide between server action, scheduled action, import, or external API | The cheapest automation is often already inside Odoo | | Access error | Check groups, record rules, company scope, and environment first | Most "broken" actions are permissions or context | | Broken inventory/accounting flow | Preserve traceability, then fix upstream document or post reversal | Direct edits often make audits worse |
Common Traps
product.template when the workflow actually needs variants on product.productExternal Endpoints
| Endpoint | Data Sent | Purpose |
|----------|-----------|---------|
| https:// | browser session data chosen by the user | interactive review and manual operations |
| https:// | database name, username, password | authenticate and resolve user id |
| https:// | model names, domains, field names, record payloads | read and write records via XML-RPC |
| https:// | JSON-RPC payloads for auth or model calls | scripted integrations when JSON-RPC is available |
| user-chosen export target | report data explicitly requested by the user | deliver CSV, Excel, PDF, or downstream sync |
No other external endpoints should be used unless the user asks for a specific connected system.
Security & Privacy
Data that stays local:
~/odoo/Data that may touch external systems:
This skill does NOT:
Related Skills
Install withclawhub install if user confirms:
crm β customer pipeline workflows when the work is mainly around leads, deals, and sales motioninventory β stock-focused operating guidance when warehouse flows become the main problemaccounting β accounting-first workflows for journals, reconciliation, close, and financial controlspowerpoint β executive summaries and deck outputs from Odoo reporting workword β polished SOPs, proposals, and customer-facing documents built from Odoo contextFeedback
clawhub star odooclawhub syncβ‘ When to Use
π‘ Examples
1. Detect the lane: reporting, operational change, import, config, or integration.
2. Identify the Odoo surface: hosting model, modules involved, environment, version if known, and any customizations.
3. Open the matching file:
- surfaces.md for Odoo Online, Odoo.sh, or self-hosted constraints
- operations.md for day-to-day business flows
- examples.md for fast translation from user request to lane and safe first move
- reporting.md for KPIs and reconciliation
- safety.md for risky writes, corrections, and approvals
- integrations.md for API, import/export, and automation design
- triage.md for access, module, and workflow failures
4. Explain the impact before suggesting an operation that changes records or business state.