coding-agents
Trace Odoo Code Execution End-to-End with This Agent Skill
Learn how odoo-code-tracer helps developers and AI agents follow Odoo execution flows, overrides, and callbacks without missing a step.
Where this fits
You're mid-refactor on an Odoo 17 module. A custom sale.order method calls a dozen inherited overrides from other modules, and you need to know exactly which one changes the final price. Manually jumping between files and _inherit declarations is slow and error-prone. That's where odoo-code-tracer steps in—it traces the entire execution path from entry point to end, so you can see every override, mixin, and callback that actually runs.
Why agents benefit
- Follows inheritance chains automatically – resolves
_inheritand_nameacross modules, including multi-level and mixin patterns, without you mapping them by hand. - Tracks method overrides precisely – identifies which implementation wins when multiple modules override the same method, and explains why based on
super()call order. - Maps callbacks and signals – traces
onchange,compute,constraint, and@api.onchangetriggers, so you don't miss side effects that only fire during specific events. - Version-aware – automatically detects the target Odoo version (16–19) from config or manifest, then uses the correct reference pack for accurate API signatures.
- Read-only and non-blocking – runs in the background, reads only existing code, and doesn't modify anything, making it safe to invoke proactively during planning or review.
Practical scenarios
Understanding a complex business flow before touching it
You're asked to add a discount to the sale order line total. Instead of guessing which field to override, the agent traces _compute_amount from sale.order.line through all inherited modules, showing you each super() call and where the final value is set. You see exactly where to hook in your change without breaking existing logic.
Debugging why a custom field isn't stored as expected
A field you added in a previous sprint suddenly returns False after an upgrade. The tracer walks the create() and write() methods, revealing that a later module's override resets the field. You find the culprit in minutes instead of hours.
Auditing a third-party module before integration
You're evaluating a community module. The agent traces its main entry point—a button method on res.partner—and lists every function it calls, including private helpers and ORM hooks. You quickly judge whether it's safe to adopt or if it has hidden side effects.
Add it to your agent workflow
Install with:
npx skills add unclecatvn/agent-skills --skill odoo-code-tracer
Then invoke it with a clear entry point and optional version hint:
Trace the execution flow of `action_confirm` on `sale.order` in this repo. Odoo version: 17.0
The agent will resolve version, load the reference pack, and produce a step-by-step trace with file:line references.
Compare before adopting
Before relying on this skill, check a few things: quality signals – read the README and recent commits to see if the author keeps up with Odoo releases; maintenance freshness – confirm it supports your target version (16–19); alternatives – other tracing skills may focus on static analysis or specific frameworks, so verify this one covers inheritance and callbacks; and workflow fit – ensure it integrates with your agent's invocation pattern (e.g., explicit version argument) and doesn't require extra setup.
Why it is worth tracking
With 130 stars and active maintenance from unclecatvn, this skill shows real community momentum. It solves a painful, recurring problem for Odoo developers—understanding cross-module execution—and it's read-only, so it's safe to run on any codebase. Evaluate it the next time you or your agent needs to trace a feature end-to-end; it might become a permanent part of your Odoo toolkit. For more context, see the skill page on OpenAgentSkill.
Featured Skill
odoo-code-tracer
Skill by unclecatvn