Daily updates from Odoo
Tuesday, June 16, 2026
2 changes
Code cleanup and technical improvements
This update introduces a new 'card' view type to standardize the display of records across different Odoo views like kanban, gantt, and calendars. This improves consistency and simplifies development by creating a single, reusable template for compact record representations, ultimately enhancing the user experience.
Original PR description
This PR is the first part of a larger effort to unify the API and appearance of cards across view types (kanban records, gantt popovers, calendar popovers, map popovers, activity records, hierarchy…
This PR is the first part of a larger effort to unify the API and appearance of cards across view types (kanban records, gantt popovers, calendar popovers, map popovers, activity records, hierarchy records). All of these views share the same need: displaying a compact representation of a record. Until now, each of these cases had its own implementation, resulting in inconsistent arch APIs (poor developer experience) and an inconsistent look across the UI (poor user experience). As a first step toward this goal, this PR introduces the card view type and allows it to be referenced from other views via the card_id attribute. When this attribute is set on the root node of an arch, the corresponding card view is automatically inlined into the arch. The kanban view has been refactored: its core card rendering logic has been extracted into a dedicated view/component. The gantt popover API has been updated to use the new card API. The kanban_view_id attribute has been removed in favor of card_id, so it is no longer possible to reference a kanban view inside a popover. The popover template API has also been reworked to align with the card API (which is basically the well-known old kanban templates API). Concretely, one can now either reference a card view via the card_id attribute, or directly inline the popover-header, popover-body, and popover-footer templates, which follow the same API as cards. Part of task~5262907
This update simplifies access to AI tools within the AI App by introducing a dedicated 'Tools' menu. Previously, users had to manually filter AI tools from other server actions. This change clarifies the distinction between 'Executable' and 'Guidance' skills, improving the overall AI experience.
Original PR description
The previous naming implied a divergence from the standard, and the old type field distinction wasn't expressive enough. Skills are now differentiated as: **Executable** - a skill that relies on tools to perform its action **Guidance** - a skill that provides reusable instructions or logic without tool invocation Alongside this, a dedicated Tools menu is introduced in the AI App, replacing the need for manual custom filters to isolate AI tools from other server actions. This gives a clearer entry point for viewing and creating AI tools.