Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add Viindoo/odoo-mcp-client/plugin install odoo-ai-agentsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/viindoo/odoo-mcp-client/odoo-modules-upgrade)<a href="https://agentmods.dev/skills/viindoo/odoo-mcp-client/odoo-modules-upgrade"><img src="https://agentmods.dev/badge/skills/viindoo/odoo-mcp-client/odoo-modules-upgrade/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/viindoo/odoo-mcp-client/odoo-modules-upgrade"><img src="https://agentmods.dev/badge/skills/viindoo/odoo-mcp-client/odoo-modules-upgrade.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00250 | $0.10538 |
| Opus 5 | $0.00125 | $0.05269 |
| Sonnet 5 | $0.00050 | $0.02108 |
| Haiku 4.5 | $0.00025 | $0.01054 |
Grade C, and why
odoo-modules-upgrade scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
`find <ISOLATE_DIR>/modules-upgrade/ -mindepth 1 -maxdepth 1 -type d -mmin +43200 -exec rm -rf {} +` How it starts
The opening of the file, as written. The whole thing — 553 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Role
Module-upgrade conductor. Move a whole cluster across MAJOR series in ONE PR, reviewed in
dependency order (lowest dependency first). Delegate every diff read and custom-vs-core
comparison to subagents. Decide per module what target core now ABSORBS: module wholly absorbed
-> DELETE it + record the reason in the commit message; KEEP / REWRITE / MERGE / SPLIT the rest.
The upgrade is CODE-LEVEL - make each module installable + working on the new series. NO data
migration is assumed and NO migration scripts are written (modules are typically
installable: False with no users; a genuine data-bearing case routes to odoo-data-migration,
never inline). The manifest version is NOT bumped (see § P4). No cluster-squash; per-module
consolidation to ONE clean commit per module IS allowed (see references/upg-phase-detail.md
§ Commit consolidation). Human sign-off before the PR merges.
First principle: the orchestrator parses nothing it can delegate, reads no diff, and compares no behavior inline - it dispatches subagents, reads their structured output, enforces gates, runs Plan Mode, drives the dep-order adapt loop, opens the PR, and stops for human confirm.
Out of Scope
| Situation | Route to | Discriminator |
|---|---|---|
| Transport ONE commit across majors/cross-series | odoo-forward-port |
different series = forward-port, never asks "still needed?"; same-series single-commit replay = odoo-git-rebase |
| Rebase a branch onto another branch, SAME series | odoo-git-rebase |
same series, no version bump, no core-absorption question |
| Risk + deprecation + diff PLAN only (no code) | /odoo-plan-upgrade |
plan-upgrade writes NO code; upgrade EXECUTES (may take its plan as optional --plan input) |
| Scan deprecated symbols only | odoo-deprecation-audit |
detection only; upgrade INVOKES it in recon then fixes |
| Diff two versions' APIs only | odoo-version-diff |
detection only; upgrade calls it in recon |
| Write fresh upgrade-safe code, no module to carry | odoo-coding |
nothing to upgrade |
What ships with it
5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 553 lines · 250 tokens per session scan C d518959fdffb
odoo-modules-upgrade is a skill published in the GitHub repository Viindoo/odoo-mcp-client (7 stars, last pushed 3d ago), licensed MIT. It adds 250 tokens to every session and 10,538 once invoked, about $0.0013 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
recipe-create-meet-space
Create a Google Meet meeting space and share the join link.
workthreads
SpecStory Workthreads - a weekly work-thread rollup across a team's repos from SpecStory coding histories (any agent - Claude Code, Codex, Cursor, Gemini, and more). It groups the window's sessions into threads of work per project and labels each new / open / recently closed, so a lead sees what shipped, what is still…
atmos-config
Atmos root configuration: atmos.yaml discovery, precedence, deep merging, basepath, imports, minimal bootstrap, and routing to narrower Atmos skills.
story-readiness
Validate that a story file is implementation-ready. Checks for embedded GDD requirements, ADR references, engine notes, clear acceptance criteria, and no open design questions. Produces READY / NEEDS WORK / BLOCKED verdict with specific gaps. Use when user says 'is this story ready', 'can I start on this story', 'is…
autotask-creator
Rules for automation CRUD from the group-chat commander. The commander does not call mutation tools and does not edit cloud/autotasks files directly. It emits one or more top-level ... containers in its final text; the bus parses and applies them after the turn.
remove
Remove a deployed framework or addon from the current workspace.