[19.0][WIP] AI Agent Integration Framework for Odoo (Native LLM/vllm OpenAI API compatible) - #61
Draft
petrus-v wants to merge 9 commits into
Draft
[19.0][WIP] AI Agent Integration Framework for Odoo (Native LLM/vllm OpenAI API compatible)#61petrus-v wants to merge 9 commits into
petrus-v wants to merge 9 commits into
Conversation
petrus-v
force-pushed
the
19.0-incubation
branch
from
February 26, 2026 07:54
fffb0ae to
4816802
Compare
Member
|
Hi! Thank you very much for the initiative with this module. To ensure this solution fits the long-term strategy for this repository, here is the Roadmap Issue: #73 Please have a look when you can. It would be ideal to review the open points there to align the design of this PR, avoid duplicating efforts, and make sure we are all on the same page. Let us know what you think! |
petrus-v
force-pushed
the
19.0-incubation
branch
from
September 3, 2026 21:29
4816802 to
7ba281b
Compare
petrus-v
force-pushed
the
19.0-incubation
branch
from
September 3, 2026 21:57
7ba281b to
48e8134
Compare
Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
…gement Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
Assisted-by: Gemini 3.x Flash
petrus-v
force-pushed
the
19.0-incubation
branch
from
September 3, 2026 22:26
48e8134 to
ee1978c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
Side-Project & Incubating MVP
This project is developed on my spare time as an exploratory, incubating MVP to experiment with agentic AI natively embedded into Odoo ERP. Feedback, architecture ideas, and community discussions are warmly welcome in #73! ☕
🎯 Goal & Architecture Vision
This PR introduces the foundational framework for a modular, multi-agent AI system natively integrated within Odoo. Rather than treating AI as an external iframe or standalone chatbot, this framework leverages Odoo’s core architectural strengths:
res.users), strictly respecting native Access Control Lists (ir.model.access) and record rules (ir.rule).queue_jobworkers without freezing UI or blocking worker processes.bus.busand a dedicated global Systray task tracker.ai_tool).🗺️ Roadmap & Current Progress
✅ Phase 1: Core Chatter Integration & UI — DONE
ai_oca_native_llm: Extensible client wrapper for local (Ollama/vLLM) and remote OpenAI-compatible endpoints.ai_oca_native_thread: Data models (ai.thread,ai.message) contextualized per record and user. Integrated OWL tab inside the standard Odoo Chatter.Capture.video.du.2026-02-26.08-41-54.mp4
✅ Phase 2: Asynchronous Execution & Real-Time Bus — DONE
queue_jobtasks (_action_extract_intent).bus.busWebSockets without page reload.processing,done,cancel).✅ Phase 2.1: Global Systray Task Tracker — DONE
ai_oca_native_thread_systray: Top navbar dropdown tracking active/pending background AI tasks for the logged-in user with live counter badge and direct navigation.✅ Phase 3: Modular Orchestrator & Personas — DONE
ai_oca_native_orchestrator: Decoupled orchestration logic from chat threads.ai.persona&ai.prompt.template: Configurable system prompts, wrappers, and agent personas.ai.task.threadandai.task.message.✅ Phase 3.1: Autonomous Agents & Base Tool Engine — DONE
ai_oca_native_agent: Persona domains (ai.agent),res.usersbinding (is_ai_agent), and execution modes (user_contextvsdedicated_agent).ai_oca_native_agent_tool: Integration bridge linking agents to OCAai.toolregistry.🟡 Phase 3.1.1: Tool Calling Loop & Action Plan Proposal — IN PROGRESS
ai.llm.client(OpenAI formattools/tool_calls).ai_oca_native_orchestrator.agent_list_available_tools,agent_list_available_agents).ActionPlanPayload&ActionStep, statusawaiting_approval).🚀 Phase 3.1.2: Sub-Agent Delegation & Async Plan Engine — READY
agent_delegate_task) with isolated, audit-friendlyai.task.thread.queue_job(resolving dependenciesdepends_on, parallel steps, zero busy-waiting workers).💡 Phase 3.2: Human-In-The-Loop Approval UI — BACKLOG
💡 Phase 4+: Self-Evolution & Tool Retrieval (RAG) — BACKLOG
ai.toolauto-discovery on module update).