Odoo锻造
面向Odoo 18的AI首个ERP配置引擎
   
CLI工具包+ MCP服务器 这给了人工智能助手 完全控制 奥多18。
79个工具。6技能。4名专业代理。领域知识。规划。代码生成。
______________________________________________________________________
它能做什么?
"I run a bakery with 3 locations and delivery — set up my Odoo"
"Show me how sales are doing this month compared to last month"
"Import my product catalog from this CSV file"
"Add a custom loyalty tier field to contacts as a selection"
"Generate a custom addon for recipe management with ingredient tracking"
"Something broke after that module install — help me fix it"
"Create an automation that sends a welcome email for new contacts"
"Run the restaurant recipe to set up a full POS system"Odoo Forge将自然语言转化为Odoo操作。这不是一个一次性的设置工具,而是一个 正在进行的AI层 它可以帮助您发现、构建、填充、分析、修复和改进您的Odoo实例。
快速开始
1.安装
pip install odooforge2.初始化工作区
mkdir my-odoo-project && cd my-odoo-project
odooforge init这为您提供了所需的一切:
.
├── CLAUDE.md # AI assistant context
├── .env # Connection settings (fill in your details)
├── .claude/
│ ├── skills/ # 6 Claude Code skills
│ │ ├── odoo-brainstorm/ # /odoo-brainstorm — explore ideas
│ │ ├── odoo-architect/ # /odoo-architect — design models
│ │ ├── odoo-debug/ # /odoo-debug — fix issues
│ │ ├── odoo-setup/ # /odoo-setup — deploy business
│ │ ├── odoo-data/ # /odoo-data — import & manage data
│ │ └── odoo-report/ # /odoo-report — dashboards & analytics
│ └── agents/ # 4 specialist subagents
│ ├── odoo-explorer.md # Read-only instance scout
│ ├── odoo-executor.md # Plan execution engine
│ ├── odoo-reviewer.md # Post-execution validator
│ └── odoo-analyst.md # Business data analyst
├── docker/
│ ├── docker-compose.yml # Odoo 18 + PostgreSQL 17
│ └── odoo.conf
├── addons/ # Your custom Odoo modules
├── .cursor/mcp.json # Cursor MCP config
├── .windsurf/mcp.json # Windsurf MCP config
└── .gitignore3.启动Odoo
# Edit .env with your connection details, then:
cd docker && docker compose up -d4.开始编码
在AI编辑器中打开工作区。MCP配置已经设置好了——您的助手可以访问所有79个Odoo Forge工具。
让你的AI助手运行 odoo_diagnostics_health_check 以验证所有内容是否已连接。更新您的工作区
升级Odoo Forge后(pip install --upgrade odooforge),将工作区模板文件更新为最新版本:
odooforge init --update这会用最新版本覆盖技能、代理、配置和Docker文件。你的 .env 是 从不 覆盖。
Odoo Forge生命周期
Odoo Forge不仅适用于初始设置,它还会随着您的业务发展而与您同在:
Discover → Plan → Build → Populate → Analyze → Fix → Evolve
↑ │
└────────────────────────────────────────────────────┘| 阶段 | 发生了什么 | 技能和代理人 |
|---|---|---|
| 发现 | “奥多能为我的面包店做什么?” | /odoo-brainstorm + odoo-explorer |
| 计划 | “这是一个分三个阶段的分阶段设置计划” | 规划工具 |
| 构建 | 安装模块、自定义字段、视图、自动化 | /odoo-setup + odoo-executor + odoo-reviewer |
| 填充 | 进口产品、联系人、期初余额 | /odoo-data |
| 分析 | “按地点显示本月收入” | /odoo-report + odoo-analyst |
| 修复 | “为什么我不能创建发票?” | /odoo-debug |
| 进化 | “我们增加了交付——我们需要什么?” | 返回发现 |
20个类别中的79个工具
| 类别 | # | 工具 | 文档 |
|---|---|---|---|
| 例子 | 5 | start · stop · restart · status · logs | → |
| 数据库 | 6 | create · list · backup · restore · drop · run_sql | → |
| 记录 | 6 | search · read · create · update · delete · execute | → |
| 快照 | 4 | create · list · restore · delete | → |
| 模块 | 6 | list_available · list_installed · info · install · upgrade · uninstall | → |
| 模型 | 3 | list · fields · search_field | → |
| 模式 | 5 | field_create · field_update · field_delete · model_create · list_custom | → |
| 视图 | 5 | list · get_arch · modify · reset · list_customizations | → |
| 报告 | 6 | list · get_template · modify · preview · reset · layout_configure | → |
| 自动化 | 5 | list · create · update · delete · email_template_create | → |
| 网络 | 3 | expose · status · stop | → |
| 导入 | 3 | preview · execute · template | → |
| 电子邮件 | 4 | configure_outgoing · configure_incoming · test · dns_guide | → |
| 设置 | 4 | settings_get · settings_set · company_configure · users_manage | → |
| 知识 | 3 | module_info · search · community_gaps | → |
| 食谱 | 2 | list · execute | → |
| 诊断 | 1 | health_check | → |
| 规划 | 3 | analyze_requirements · design_solution · validate_plan | → |
| 工作流 | 4 | setup_business · create_feature · create_dashboard · setup_integration | → |
| 代码生成 | 1 | generate_addon | → |
领域知识与人工智能指导
Odoo Forge内置了领域知识,可帮助AI助手做出明智的决策:
MCP资源(6)
结构化知识可通过以下方式访问 odoo:// URI:
| 资源 | 描述 |
|---|---|
odoo://knowledge/modules | 35个Odoo 18个模块映射到商业语言 |
odoo://knowledge/blueprints | 9个行业蓝图(餐厅、电子商务等) |
odoo://knowledge/dictionary | 商业条款→ Odoo模型/字段映射 |
odoo://knowledge/best-practices | 命名约定、字段设计、安全模式 |
odoo://knowledge/patterns | 常见的定制模式(可跟踪模型、工作流) |
odoo://knowledge/blueprints/{industry} | 特定行业的详细蓝图 |
MCP提示(4)
提供分步说明的指导性工作流程:
| 提示 | 描述 |
|---|---|
business-setup | 根据需求进行全面业务部署 |
feature-builder | 自定义功能创建与验证 |
module-generator | 完整的附加脚手架 |
troubleshooter | 系统性问题诊断和解决 |
克劳德代码技能(6)
为Claude Code用户提供大量命令技能(安装到 .claude/skills/ 通过 odooforge init):
| 技能 | 阶段 | 描述 |
|---|---|---|
/odoo-brainstorm | 发现 | 探索定制想法,发现模块,匹配蓝图 |
/odoo-architect | 规划 | 设计具有命名约定和安全性的数据模型 |
/odoo-setup | 构建 | 从自然语言进行全面业务部署 |
/odoo-data | 填充 | 导入、创建和管理业务数据 |
/odoo-report | 分析 | 构建仪表板,定义KPI,分析业务数据 |
/odoo-debug | 修复 | 诊断错误映射和快照回滚问题 |
专业代理(4)
Claude为集中任务派遣的子代理(安装到 .claude/agents/ 通过 odooforge init):
| 代理 | 角色 | 描述 |
|---|---|---|
odoo-explorer | Scout | 只读实例发现——模块、模式、自定义、数据 |
odoo-executor | Builder | 在每次突变之前,通过自动快照逐步执行计划 |
odoo-reviewer | 验证器 | 执行后健康检查、回归检测、验证 |
odoo-analyst | 分析师 | SQL分析、业务洞察、仪表板创建 |
代理具有受限的工具访问权限(最小特权原则)。只读代理不能写;执行器总是在更改之前进行快照。
行业食谱
常见业务类型的一个命令设置:
| 配方 | 模块 | 它设置了什么 |
|---|---|---|
| 餐厅 | POS、厨房、库存、人力资源 | 餐桌管理、厨房打印、食品类别 |
| 电子商务 | 网站、付款、配送、CRM | 在线商店、购物车、结账、愿望清单 |
| 制造 | MRP、质量、维护 | 工作中心、物料清单、生产计划 |
| 服务 | 项目、时间表、CRM、销售 | 可计费项目、任务阶段、发票 |
| 零售 | POS、库存、忠诚度 | 条形码扫描、库存提醒、忠诚度计划 |
"Run the restaurant recipe in dry-run mode first, then execute it"配置
Odoo Forge可以通过环境变量进行配置。当作为MCP服务器运行时,请将这些传递到您的 mcp.json 或 claude_desktop_config.json.
| 变量 | 描述 | 默认值 |
|---|---|---|
ODOO_URL | Odoo实例的URL | http://localhost:8069 |
ODOO_DEFAULT_DB | 默认情况下要连接的数据库 | odoo |
ODOO_ADMIN_USER | 管理员用户名(用于RPC) | admin |
ODOO_ADMIN_PASSWORD | 管理员密码 | admin |
ODOO_MASTER_PASSWORD | 主密码(用于创建数据库) | admin |
POSTGRES_HOST | PostgreSQL主机 | localhost |
POSTGRES_PORT | PostgreSQL端口 | 5432 |
POSTGRES_USER | PostgreSQL用户 | odoo |
POSTGRES_PASSWORD | PostgreSQL密码 | odoo |
DOCKER_COMPOSE_PATH | 通往 docker-compose.yml (可选) | _自动检测_ |
MCP客户端配置(mcp.json)
选项1:使用 uvx (推荐)
这将运行与您的系统隔离的最新发布版本的Odoo Forge。
{
"mcpServers": {
"odooforge": {
"command": "uvx",
"args": ["odooforge"],
"env": {
"ODOO_URL": "http://localhost:8069",
"ODOO_DEFAULT_DB": "odoo",
"ODOO_ADMIN_USER": "admin",
"ODOO_ADMIN_PASSWORD": "my_admin_password",
"ODOO_MASTER_PASSWORD": "my_master_password",
"POSTGRES_HOST": "localhost",
"POSTGRES_PORT": "5432",
"POSTGRES_USER": "odoo",
"POSTGRES_PASSWORD": "my_postgres_password"
}
}
}
}方案2:利用当地项目(开发)
如果您在本地虚拟环境中自定义了Odoo Forge:
{
"mcpServers": {
"odooforge": {
"command": "/path/to/your/venv/bin/odooforge",
"args": [],
"env": {
"ODOO_ADMIN_PASSWORD": "secure_password"
}
}
}
}建筑
graph TB
AI[AI Assistant
Claude / Cursor / etc.] -->|MCP Protocol| MCP[OdooForge MCP Server
79 tools · 6 resources · 4 prompts]
AI -->|Skills & Agents| CC[Claude Code Integration
6 skills · 4 agents]
MCP --> Planning[Planning Layer]
MCP --> Workflows[Workflow Layer]
MCP --> Tools[Core Tool Layer]
MCP --> Knowledge[Knowledge Layer]
subgraph CC[Claude Code]
direction LR
Skills[6 Skills
brainstorm · architect · setup
data · report · debug]
Agents[4 Agents
explorer · executor
reviewer · analyst]
end
subgraph Planning[Layer 3: Planning]
direction LR
P1[Requirement Analysis]
P2[Solution Design]
P3[Plan Validation]
end
subgraph Workflows[Layer 2: Workflows]
direction LR
W1[Business Setup]
W2[Feature Builder]
W3[Dashboard]
W4[Integration]
end
subgraph Tools[Layer 0: Core Tools]
direction LR
T1[Records]
T2[Modules]
T3[Schema]
T4[Views]
T5[+ 13 more]
end
subgraph Knowledge[Layer 1: Domain Knowledge]
direction LR
K1[Module KB]
K2[Blueprints]
K3[Patterns]
end
subgraph Codegen[Code Generation]
direction LR
C1[Model Gen]
C2[View Gen]
C3[Security Gen]
end
Workflows --> Codegen
Tools --> Conn[Connections]
subgraph Conn[Connections]
direction LR
RPC[XML-RPC]
Docker[Docker]
PG[PostgreSQL]
end
Conn --> Odoo[Odoo 18
Docker Container]
Conn --> DB[(PostgreSQL 17
Docker Container)]
style AI fill:#5A67D8,color:#fff
style MCP fill:#714B67,color:#fff
style Odoo fill:#714B67,color:#fff
style DB fill:#336791,color:#fffsrc/odooforge/
├── cli.py # CLI — server, init, init --update
├── init.py # Workspace initializer — skills, agents, configs, Docker
├── server.py # MCP server — 79 tools, 6 resources, 4 prompts
├── config.py # Environment configuration
├── data/ # Bundled templates for odooforge init
│ ├── skills/ # 6 skill definitions (SKILL.md)
│ ├── agents/ # 4 agent definitions (.md)
│ └── ... # .env.example, docker, mcp configs
├── connections/
│ ├── docker_client.py # Docker Compose management
│ ├── xmlrpc_client.py # Odoo XML-RPC interface
│ └── pg_client.py # PostgreSQL direct connection
├── tools/ # One file per tool category (20 files)
├── knowledge/ # Domain knowledge (Layer 1)
├── planning/ # Planning engine (Layer 3)
├── workflows/ # Workflow orchestration (Layer 2)
├── codegen/ # Code generation engine
├── utils/ # Shared utilities
└── verification/ # Post-operation verification安全特性
Odoo Forge旨在为AI驱动的操作提供安全保障:
- 快照 --在危险操作之前创建备份。立即恢复。这
odoo-executor代理会自动执行此操作。 - 确认警卫 --破坏性操作(删除、删除、卸载)需要
confirm=true. - 命名空间强制 --自定义字段必须以开头
x_,定制型号x_没有意外的堆芯修改。 - 术后验证 --模块安装、字段创建和视图修改在执行后进行验证。
- 干运行模式 --执行前可以预览食谱和进口。
- 输入验证 --模型名称、字段名称、SQL查询和域在执行前会经过验证。
- 代理隔离 --只读代理(资源管理器、审阅者、分析师)无法修改您的实例。执行器代理具有受限的工具访问权限。
发展
# Clone and install
git clone https://github.com/hamzatrq/odoo-forge.git
cd odooforge
uv sync --group dev
# Run tests (567 tests)
uv run pytest tests/ -v
# Run the server locally
uv run odooforge看 贡献.md 详细的开发指南。
文档
| 文档 | 描述 |
|---|---|
| 入门指南 | 安装、工作区设置、第一步 |
| 配置 | 环境变量,Docker设置 |
| 工具参考 | 所有79个带有参数和示例的工具 |
| 规划工具 | 需求分析和解决方案设计 |
| 工作流工具 | 业务设置、功能、仪表板 |
| 代码生成 | 自定义附加脚手架 |
| 建筑 | 系统设计和数据流 |
| 行业食谱 | 常见业务类型的预构建设置 |
| 贡献 | 开发设置和指南 |
| 更新日志 | 版本历史 |
