From c6d1008810f7f47d266a623eeebb2b005a1b1ae9 Mon Sep 17 00:00:00 2001 From: gsinghpal Date: Sat, 18 Apr 2026 21:27:55 -0400 Subject: [PATCH] feat(fusion_accounting_ai): add empty sub-module skeleton Made-with: Cursor --- fusion_accounting_ai/__init__.py | 4 ++ fusion_accounting_ai/__manifest__.py | 41 +++++++++++++++++++ fusion_accounting_ai/controllers/__init__.py | 0 fusion_accounting_ai/models/__init__.py | 0 .../security/ir.model.access.csv | 1 + fusion_accounting_ai/services/__init__.py | 0 .../services/adapters/__init__.py | 0 .../services/data_adapters/__init__.py | 0 .../services/prompts/__init__.py | 0 .../services/tools/__init__.py | 0 fusion_accounting_ai/tests/__init__.py | 0 fusion_accounting_ai/wizards/__init__.py | 0 12 files changed, 46 insertions(+) create mode 100644 fusion_accounting_ai/__init__.py create mode 100644 fusion_accounting_ai/__manifest__.py create mode 100644 fusion_accounting_ai/controllers/__init__.py create mode 100644 fusion_accounting_ai/models/__init__.py create mode 100644 fusion_accounting_ai/security/ir.model.access.csv create mode 100644 fusion_accounting_ai/services/__init__.py create mode 100644 fusion_accounting_ai/services/adapters/__init__.py create mode 100644 fusion_accounting_ai/services/data_adapters/__init__.py create mode 100644 fusion_accounting_ai/services/prompts/__init__.py create mode 100644 fusion_accounting_ai/services/tools/__init__.py create mode 100644 fusion_accounting_ai/tests/__init__.py create mode 100644 fusion_accounting_ai/wizards/__init__.py diff --git a/fusion_accounting_ai/__init__.py b/fusion_accounting_ai/__init__.py new file mode 100644 index 00000000..6311ca4b --- /dev/null +++ b/fusion_accounting_ai/__init__.py @@ -0,0 +1,4 @@ +from . import models +from . import controllers +from . import services +from . import wizards diff --git a/fusion_accounting_ai/__manifest__.py b/fusion_accounting_ai/__manifest__.py new file mode 100644 index 00000000..d1b473ca --- /dev/null +++ b/fusion_accounting_ai/__manifest__.py @@ -0,0 +1,41 @@ +{ + 'name': 'Fusion Accounting AI', + 'version': '19.0.1.0.0', + 'category': 'Accounting/Accounting', + 'sequence': 26, + 'summary': 'AI Co-Pilot for Odoo accounting (Claude/GPT) with conversational interface, dashboard, rules.', + 'description': """ +Fusion Accounting AI +==================== +Conversational AI co-pilot for Odoo Accounting. Embeds Claude/GPT with +native tool-calling for bank reconciliation, HST management, AR/AP analysis, +journal review, month-end close, payroll, ADP reconciliation, financial +reporting, and auditing. + +Works on three install profiles via the data-adapter pattern: +1. Pure Odoo Community + fusion_accounting_ai +2. Odoo Community + fusion_accounting_ai + fusion native sub-modules (bank_rec, reports, ...) +3. Odoo Enterprise + fusion_accounting_ai (legacy mode) + +Built by Nexa Systems Inc. + """, + 'icon': '/fusion_accounting_ai/static/description/icon.png', + 'author': 'Nexa Systems Inc.', + 'website': 'https://nexasystems.ca', + 'support': 'support@nexasystems.ca', + 'maintainer': 'Nexa Systems Inc.', + 'depends': ['fusion_accounting_core'], + 'external_dependencies': { + 'python': ['anthropic', 'openai'], + }, + 'data': [ + # Populated as files move in (Tasks 5, 7, 11) + 'security/ir.model.access.csv', + ], + 'installable': True, + 'application': True, + 'license': 'OPL-1', + 'assets': { + # Populated as static moves in (Task 5) + }, +} diff --git a/fusion_accounting_ai/controllers/__init__.py b/fusion_accounting_ai/controllers/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/models/__init__.py b/fusion_accounting_ai/models/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/security/ir.model.access.csv b/fusion_accounting_ai/security/ir.model.access.csv new file mode 100644 index 00000000..97dd8b91 --- /dev/null +++ b/fusion_accounting_ai/security/ir.model.access.csv @@ -0,0 +1 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink diff --git a/fusion_accounting_ai/services/__init__.py b/fusion_accounting_ai/services/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/services/adapters/__init__.py b/fusion_accounting_ai/services/adapters/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/services/data_adapters/__init__.py b/fusion_accounting_ai/services/data_adapters/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/services/prompts/__init__.py b/fusion_accounting_ai/services/prompts/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/services/tools/__init__.py b/fusion_accounting_ai/services/tools/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/tests/__init__.py b/fusion_accounting_ai/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/fusion_accounting_ai/wizards/__init__.py b/fusion_accounting_ai/wizards/__init__.py new file mode 100644 index 00000000..e69de29b