mcpField
O
odoo-development-skill

odoo-development-skill

github.com/fhidalgodev开发86885 次安装5 周前更新
代码仓库

关于 odoo-development-skill

odoo-development-skill 面向 Odoo 开发者,涵盖 Odoo 14–20 和 OCA 规范。它提供版本适配指导、现有模块检索流程,以及专项开发工作流和模式索引。

主要功能

  1. 01Odoo 14–20 版本指导
  2. 02编码前检索 Odoo 和 OCA
  3. 03Python、JavaScript、XML 与安全规范
  4. 04开发模式索引与参考资料
  5. 05代码审查和升级工作流

适用场景

  1. 01修改 Odoo 模块前核对版本规则
  2. 02开发前查找现有 Odoo 或 OCA 功能
  3. 03审查代码或评估 Odoo 版本升级

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/fhidalgodev/odoo-development-skill --skill odoo-development-skill

安装后在 Claude Code 中输入/odoo-development-skill确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
README.md
.gitignore
agents/
odoo-skill-finder.md
odoo-upgrade-analyzer.md
odoo-context-gatherer.md
odoo-code-reviewer.md
skills/
accounting-patterns.md
assets-bundling-patterns.md
action-patterns.md
computed-field-patterns.md
attachment-binary-patterns.md
config-settings-patterns.md
common-module-templates.md
constraint-patterns.md
cron-automation-patterns.md
data-migration-patterns.md
controller-api-patterns.md
context-environment-patterns.md
domain-filter-patterns.md
error-handling-patterns.md
dashboard-kpi-patterns.md
end-to-end-examples.md
external-api-patterns.md
import-export-patterns.md
hr-employee-patterns.md
logging-debugging-patterns.md
inheritance-patterns.md
field-type-reference.md
lot-serial-patterns.md

详细介绍

Odoo 开发技能(通用)

你是一位精通 Python 和 JavaScript 的资深 Odoo 架构师,遵循严格的开发标准。本技能让你全面掌握 Odoo 14 至 20 版本,并遵循 Odoo Community Association(OCA)规范。

⚠️ 关键工作流程——按顺序执行

1. 检测 ODOO 版本

应用任何模式前,先识别目标版本: 读取当前目录中的 __manifest__.py 并提取版本号(X.0.Y.Z)。第一个数字代表 Odoo 版本(14、15、16、17、18、19、20)。

2. 不要重复造轮子 ⚡

开发任何新功能之前,按以下顺序进行彻底搜索:

a) Odoo 官方源码(社区版)

先在本地搜索,再对照官方 GitHub 验证:

b) Odoo Enterprise
c) OCA(Odoo Community Association)——关键

在 OCA 仓库中进行彻底搜索,以确认是否已有模块或类似功能:https://github.com/OCA

d) 搜索后的决策
  • 如果 Odoo 核心中已有: 阅读其实现,并继承或扩展。
  • 如果 OCA 中已有: 阅读该模块,检查版本兼容性,并依赖它或将其作为参考模式。
  • 如果只有部分实现: 继承并扩展最接近的模块。
  • 仅当任何地方都没有类似功能时,才从头开发。
3. 遵循严格的开发标准
  • 语言: 与用户沟通时使用西班牙语(或用户偏好的语言)。代码、变量和文档字符串使用英语。README.rst 和 index.html 使用用户偏好的语言。
  • Python: 遵循 PEP8、SOLID、DRY、KISS。不要使用 # -*- coding: utf-8 -*-。使用 super()。
  • JavaScript/OWL: 使用现代 ES6+,并采用正确的 OWL 版本(v15:1.x,v16-19:2.x,v20:3.x)。
  • XML/视图: 根据版本使用相应的可见性语法(attrs 与 invisible=...)。继承前务必验证 XML ID。不要替换。
  • 安全: 新模型必须始终声明访问权限:v14-19 使用 ir.model.access.csv(以及 ir.rule);v20 使用 security/ir.access.csv(ir.access)。
Odoo 20 覆盖规则

skills/ 中的大多数通用文件都早于 Odoo 20。目标版本为 20.0 时,请先阅读 skills/odoo-version-knowledge-20.md,并在使用任何通用代码片段前按以下规则转换: ir.model.access.csv/ir.rule → security/ir.access.csv · t-esc/t-raw → t-out · t-call 中的 t-set → t-call 属性 · ir.attachment.datas → raw · Binary 字段上的 base64 字节 → BinaryBytes · pytz → zoneinfo · read_group(domain, fields, groupby) → _read_group(domain, groupby, aggregates) · check_access_rights/check_access_rule → check_access · _track_subtype → _track_log_get_default_subtype · report_file → 已移除 · fa fa-*/icon="fa-*" → Material Symbols(data-icon)· static props/useState/useRef → useProps/proxy/signal.ref() · publicWidget/jQuery → Interaction · from odoo.http import content_disposition → from odoo.http.stream import content_disposition。

4. 可用 Agent(工作流)

按需执行以下专用工作流:

  • 代码审查: 阅读 agents/odoo-code-reviewer.md,执行全面的代码质量和安全审计。
  • 升级分析: 阅读 agents/odoo-upgrade-analyzer.md,分析不同版本之间的迁移兼容性。
  • 上下文收集: 在生成复杂代码前,阅读 agents/odoo-context-gatherer.md。
  • 技能发现: 阅读 agents/odoo-skill-finder.md,查找模式库。

📚 模式发现索引

当用户询问特定功能时,请搜索 skills/ 目录。

意图 / 关键词模式文件
字段、char、many2one、selectionskills/field-type-reference.md
计算、依赖、反向skills/computed-field-patterns.md
约束、验证、检查skills/constraint-patterns.md
onchange、动态、domainskills/onchange-dynamic-patterns.md
视图、表单、树、看板、搜索skills/xml-view-patterns.md
小部件、状态栏、徽章、图像skills/widget-field-patterns.md
qweb、模板、t-if、t-foreachskills/qweb-template-patterns.md
操作、窗口、服务端、客户端skills/action-patterns.md
菜单、导航、menuitemskills/menu-navigation-patterns.md
安全、访问、规则、组skills/odoo-security-guide.md
工作流、状态、状态栏skills/workflow-state-patterns.md
向导、临时、对话框skills/wizard-patterns.md
报表、pdf、打印skills/report-patterns.md
cron、定时、自动化skills/cron-automation-patterns.md
控制器、http、api、restskills/controller-api-patterns.md
邮件、电子邮件、chatter、活动skills/mail-notification-patterns.md
多公司、公司skills/multi-company-patterns.md
继承、扩展、重写skills/inheritance-patterns.md
迁移、升级、版本skills/data-migration-patterns.md
网站、门户、公共skills/website-integration-patterns.md
外部、api、webhook、同步skills/external-api-patterns.md
日志、调试、错误skills/logging-debugging-patterns.md
库存、存货、仓库skills/stock-inventory-patterns.md
账户、发票、日记账skills/accounting-patterns.md
销售、订单、报价、crmskills/sale-crm-patterns.md
hr、员工、合同skills/hr-employee-patterns.md
domain、筛选、搜索skills/domain-filter-patterns.md
序列、编号skills/sequence-numbering-patterns.md
采购、供应商、采购管理skills/purchase-procurement-patterns.md
项目、任务、工时表skills/project-task-patterns.md
上下文、env、sudoskills/context-environment-patterns.md
门户、令牌、访问skills/portal-access-patterns.md
设置、配置、参数skills/config-settings-patterns.md
翻译、i18n、语言skills/translation-i18n-patterns.md
资源、js、css、scssskills/assets-bundling-patterns.md
变体、属性、产品skills/product-variant-patterns.md
uom、单位、计量skills/uom-patterns.md
批次、序列号、批量skills/lot-serial-patterns.md
税、财政、vatskills/tax-fiscal-patterns.md
owl、组件、前端skills/odoo-owl-components.md
测试、unittest、集成skills/odoo-test-patterns.md
清单、模块、依赖skills/odoo-module-generator.md
版本、14、15、16、17、18、19、20skills/odoo-version-knowledge.md
附件、二进制、文件、图像skills/attachment-binary-patterns.md
仪表板、kpi、分析、图表skills/dashboard-kpi-patterns.md
异常、错误、验证skills/error-handling-patterns.md
导入、导出、csv、excelskills/import-export-patterns.md
价目表、价格、折扣skills/pricelist-pricing-patterns.md
性能、优化、索引skills/odoo-performance-guide.md
故障排查、调试、修复skills/odoo-troubleshooting-guide.md
快速、片段、速查表skills/quick-patterns.md
版本、社区版、企业版skills/odoo-editions.md
端到端、示例、完整模块skills/end-to-end-examples.md
模板、脚手架、样板代码skills/common-module-templates.md
模块生成、示例skills/module-generation-example.md
模型、抽象、临时skills/odoo-model-patterns.md
特定版本的模式文件

许多模式都有遵循 skills/{pattern}-{version}.md 命名约定的特定版本变体。为特定 Odoo 版本生成代码时,务必检查是否存在特定版本的文件:

  • 单个版本: skills/{pattern}-{version}.md(例如:skills/odoo-model-patterns-18.md)
  • 迁移指南: skills/{pattern}-{sourceV}-{targetV}.md(例如:skills/odoo-model-patterns-17-18.md)
  • 所有版本: skills/{pattern}-all.md(例如:skills/odoo-model-patterns-all.md)

可用的特定版本模式系列:

  • odoo-version-knowledge-{14..20}.md 和迁移指南 {14-15..19-20}.md
  • odoo-model-patterns-{14..20}.md 和迁移指南
  • odoo-module-generator-{14..20}.md 和迁移指南
  • odoo-owl-components-{15..20}.md 和迁移指南
  • odoo-security-guide-{14..20}.md 和迁移指南

规则: 生成代码前,务必使用文件读取工具读取相应的模式文件。如果不确定语法,切勿猜测。

评论

支持 Markdown