DSH Plugins Marketplace

DSH Plugins

Plugins

/

odoo-lint

b

odoo-lint

Discovered

Blazing fast Rust-native linter for Odoo modules

odoo-lint logo

odoo-lint

PyPI crates.io Tests OCA parity Documentation License: MIT

Blazing fast Rust-native linter for Odoo modules. The command is called odl.

It checks Python files, manifests, XML and CSV data files and translation (.po) files, with the checks of OCA's pylint-odoo, oca-checks-odoo-module and oca-checks-po: same names, same messages, same results on their own test suites. It also warns about files that do not belong in a module, such as packages or database dumps committed by accident.

Bar chart: linting OCA/sale-workflow takes 0.10s with odoo-lint and 25.8s with pylint-odoo

Linting all of OCA/sale-workflow 18.0, as OCA's pre-commit hook runs pylint-odoo. See benchmarks.

  • ⚡ 250x faster than pylint with pylint-odoo, and still 30x faster on a single core
  • ⚖️ Drop-in for pylint-odoo and OCA's pre-commit checks: same codes, names and messages, 95/95 checks matching on their own test suites (Python, manifests, XML, .po), and # pylint: disable= comments keep working
  • 🔧 Automatic fixes, safe and unsafe as in Ruff, for Python, manifests, XML and .po files (odl check --fix, --diff to preview)
  • ⬆️ Upgrade checks: leftovers of older Odoo versions, such as Bootstrap 4 classes that do nothing since Odoo 15.0, with fixes
  • 🌍 Translation checks that predict Odoo's loader: why Odoo logs "malformed po file", and why a translation does not show up
  • 📦 Installable with pip, uv or pipx: one binary in prebuilt wheels for Linux, macOS and Windows, without Python dependencies
  • 🛠️ Configured in pyproject.toml, including company-specific author rules
  • 📋 Output for CI: GitHub annotations, GitLab Code Quality, SARIF and JSON
  • ✍️ In your editor: a language server (odl server) with quick fixes, and extensions for VS Code and Zed
  • 🤖 For AI coding agents: an MCP server, and plugins for Claude Code, DeepSeek Harness and OpenCode that lint every file the agent edits
  • 🪝 Git hooks: pre-commit and hk

Installation

uv tool install odoo-linter   # or: pipx install odoo-linter
cargo install odoo-lint       # from crates.io

The PyPI package is called odoo-linter, because odoo-lint is too similar to an existing PyPI project. On crates.io it is odoo-lint.

Quick start

odl check path/to/addons   # lint a directory
odl rule                   # list all rules
odl rule C8101             # explain a rule
odl check --fix            # apply the safe fixes (--diff to preview)

Rules ported from pylint-odoo keep its codes, names and messages, and # pylint: disable= comments keep working. Company-specific rules are configured in your pyproject.toml:

[tool.odoo-lint]
target-version = "17.0"

[tool.odoo-lint.rules.manifest-required-author.mapping]
"acme_*" = "Acme Corp"

For AI coding agents there is an MCP server (odl mcp) and a post-edit hook, packaged as plugins for Claude Code (/plugin marketplace add bosd/odoo-lint), DeepSeek Harness and OpenCode.

See the documentation for all commands, configuration options and rules.

Development

uv sync --all-groups   # builds odl into .venv via maturin
uv run nox             # pre-commit, fmt, clippy, cargo tests, CLI tests, docs

See the development guide.

License

MIT

Comments

Loading…

Similar plugins

oh-my-dsh

by LiuMengxuan04

Oh My DSH (DSH Autopilot): durable, bounded autonomous development for DeepSeek Harness

Workflow & AutomationManifest valid

★ 12

MIT

TypeScript

Aug 15, 2026

dsh plugin --profile web add dsh-autopilot

by edge-sky

An OAuth adapter for DSH

Security & AuditManifest valid

★ 6

↓ 184/wk

MIT

TypeScript

Oct 1, 2026

dsh plugin --profile web add @edge-sky/dsh-oauth-adapter

Read-only Odoo tools over JSON-RPC: server info, model field introspection, and a restricted search_read limited to an allow list of models whose domain field names may not contain dots, so related-re

Tools & CapabilitiesManifest valid

★ 0

↓ 116/wk

dsh plugin --profile web add dsh-odoo

by tokentopo-ai

an heterogeneous multi-agent collaboration skill designed for dsh

Agent skillsManifest valid

★ 7

JavaScript

Aug 19, 2026

dsh plugin --profile web add dsh-octo

by sskkde

oh-my-openagent (OmO) core capabilities ported as a DeepSeek Harness plugin: ultrawork, role delegation, rules engine, boulder memory, hooks, Sisyphus main-prompt discipline

Workflow & AutomationManifest valid

★ 0

NOASSERTION

TypeScript

Sep 7, 2026

dsh plugin --profile web add @dsh-external/dsh-oh-my-agent

by telagod

dsh-plugin: OMP-style ingress shaping plus optional local /fast-compact for DeepSeek Harness

Development & InfrastructureManifest valid

★ 3

MIT

JavaScript

Sep 11, 2026

dsh plugin --profile web add dsh-ledger-compact