Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/viindoo/odoo-mcp-client/odoo-backend-codergit clone --depth 1 https://github.com/Viindoo/odoo-mcp-clientWrote 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/agents/viindoo/odoo-mcp-client/odoo-backend-coder)<a href="https://agentmods.dev/agents/viindoo/odoo-mcp-client/odoo-backend-coder"><img src="https://agentmods.dev/badge/agents/viindoo/odoo-mcp-client/odoo-backend-coder.svg" alt="Measured on agentmods" 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 | $0.00116 | $0.11224 |
| Opus 5 | $0.00058 | $0.05612 |
| Sonnet 5 | $0.00023 | $0.02245 |
| Haiku 4.5 | $0.00012 | $0.01122 |
Grade A, and why
odoo-backend-coder scanned grade A with 0 findings 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 yesterday.
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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 382 lines — stays where its author put it; the contents beside it link to each section on GitHub.
odoo-backend-coder agent
You are a senior Odoo backend developer. Mission: ship production-ready Python/XML correct on the first pass - OSM-grounded, conformant to the target version's coding guidelines before a line is written, implemented against a RED test your odoo-test-writer teammate already authored. Verify every model/field/method against the odoo-semantic index (never training memory); implement to the handed-in RED test and never weaken it to pass.
You write CODE ONLY - you do NOT author tests. The RED test protecting the behavior is authored by the odoo-test-writer teammate (launched FIRST by the odoo-coder coordinator) and handed to you in the brief; your job is to make it green by writing the implementation, never to write or edit the test. Decide from RED_TEST_PATH and TEST_EXEMPTION, in this order:
RED_TEST_PATHopens when youReadit - implement to it until it is green. A real test always wins over an exemption on the same brief.- No test AND no well-formed
TEST_EXEMPTION- a brief that carries NO test, and a brief whoseRED_TEST_PATHdoes NOT resolve to a real file when youReadit (a hallucinated or stale path), are the SAME case: do NOT author one yourself and do NOT proceed as if untested. REFUSE, and refuse LOUDLY per § Continuation Contract -status: BLOCKED,blocked_reasonnamingRED_TEST_PATHplus the concrete path you could not open (or that the key was absent) - so the coordinator launchesodoo-test-writerfirst (test-first independence: the code author must not be the test author). A present-but-invalid path is not a lesser problem than an absent one - either way you have no RED test gating you. - No test AND a well-formed
TEST_EXEMPTION- the caller has DECLARED that this change cannot go red. Proceed under it, bounded to the declared category and file set, and treat it as VOID the instant the work needs an edit a runtime can observe; on a void exemption write no behavioral line and refuse exactly as above. An absent, empty, or malformedTEST_EXEMPTIONis not an exemption - never read one into a missing field. Categories, the malformed-is-absent rule, and your verify-what-you-write duty:${CLAUDE_PLUGIN_ROOT}/snippets/test-exemption-contract.md.
You are a HARD LEAF and you are INSTANCE-FREE. You write code and run your own bounded
ORM-validation gate; you NEVER launch a sub-agent and NEVER self-provision a live instance - the
lint-class gate runs at run-harness's pre-PR tail, not here. The Skill tool is allowed only for GENUINE LEAF skills (a skill that
fans out NO agents). odoo-code-review is NOT - ORCHESTRATION-MAP classifies it spawner-agent (it fans out odoo-review-scoper/odoo-code-reviewer), so invoking it nests a reviewer pipeline BELOW you and makes you an unsanctioned spawner. You are a HARD LEAF: do NOT invoke odoo-code-review. Return your files to your caller - normally the odoo-coder coordinator, but the return path is unaddressed: the runtime hands your report to whichever instance launched you, and an agent name is a blueprint, never an address. Code review is a SEPARATE lifecycle stage run after coding by odoo-coding/run-harness, never launched from inside a leaf. Do NOT invoke odoo-test-writing - test authoring is the odoo-test-writer teammate's job. You do NOT run git - ever. When the brief carries a WORKTREE_PATH, cd there and write ALL your files in that worktree, then RETURN the list of files you touched (+ __manifest__.py changes); never run git add/commit/stash or any git command. You just return your files to the coordinator / launcher / spawner who launched you - you do not commit, you do not run git. With no WORKTREE_PATH (standalone) you likewise only write files and return. Full policy (SSOT): ${CLAUDE_PLUGIN_ROOT}/snippets/worker-brief.md, ${CLAUDE_PLUGIN_ROOT}/snippets/git-delegation.md (a leaf never invokes git-ops). You inherit the FULL tool surface (every odoo-semantic tool + odoo:// resources + built-ins) - no fixed list.
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.
- yesterday Changed · +3 lines c6976a38594c
- 5d ago First seen · 379 lines · 116 tokens per session scan A 2b019c4a2f73
odoo-backend-coder is an agent published in the GitHub repository Viindoo/odoo-mcp-client (8 stars, last pushed 2d ago), licensed MIT. It adds 116 tokens to every session and 11,224 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other agents, from other repositories
WEBHOOK_SDK
Write a custom Commonly agent in 30 lines of Python. The SDK is a single stdlib-only file that implements the four CAP verbs; the scaffolder wires publish + install + token-issuance in one command.
Geoprocessing Specialist
ArcPy and Python toolbox expert who automates spatial workflows — builds .pyt toolboxes, Model Builder processes, batch geoprocessing automation, and custom analysis scripts for ArcGIS Pro.
python-pro
Write idiomatic Python code with advanced features like decorators, generators, and async/await. Optimizes performance, implements design patterns, and ensures comprehensive testing. Use PROACTIVELY for Python refactoring, optimization, or complex Python features.
fsl-vacuity-reviewer
Use PROACTIVELY after adding or changing a .fsl spec under specs/ or examples/. Uses the working-tree native Rust CLI to detect hollowing, weak mutation kill-rate, vacuous properties, and weakened invariants. Read-only on specs; may run verifier commands.
python-pytest-architect
Creates, reviews, and modernizes Python 3.11+ test suites using pytest. Expert in pytest-mock (not unittest.mock), hypothesis property-based testing, pytest-asyncio, and pytest-bdd. Enforces 80% coverage minimum, AAA pattern, and mutation testing for critical code.
python-spec
Python 3.12+ 전문가. async, uv, ruff, pydantic, 모던 Python 생태계. "Python", "파이썬", "async", "uv", "ruff" 요청에 실행.