Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Assista CLI

Developer tooling for Odoo: environment diagnostics, project scaffolding, and module generation.

uv tool install assista-cli      # or: pipx install assista-cli
cd ~/my-odoo-project
assista init
assista doctor

Supports Odoo 12.0 – 19.0. Default target: 19.0.


Why

Odoo tells you it crashed. It does not tell you that your psycopg2 was built for python 3.11 while your venv is 3.12, that your PostgreSQL role lacks CREATEDB, or that your wkhtmltopdf is the unpatched build that silently drops report footers.

assista doctor answers "will my project run, and if not, exactly why" — and every failure it reports ends in a command you can run.

Commands

assista doctor                      # diagnose everything, 38 checks across 4 tiers
assista doctor --db mydb            # include per-database checks
assista doctor --format json        # versioned contract, for CI and editors
assista doctor --explain <check-id> # what a check means

assista init                        # adopt an existing checkout
assista create myproject            # new project: source + venv + odoo.conf

assista env resolve -V 19.0 -p 3.12 # exact dependencies Odoo declares
assista env create -V 13.0          # per-version venv, correct python
assista env sync                    # reconcile against Odoo's pins
assista env list / remove

assista source pull -V 19.0         # shallow clone, shared between projects
assista source list / update

assista module create sale_ext      # models, views, security, tests, i18n, README
assista module create --owl         # with an OWL component
assista module install / upgrade

assista run                         # start the server
assista run --watch --db mydb       # restart on .py, upgrade one module on .xml
assista shell                       # interactive ORM shell

assista db list                     # databases with size and Odoo version
assista db dump / duplicate / drop / neutralize

assista test sale_ext --db mydb     # run module tests
assista doctor --compare prod.json  # diff two environments
assista --install-completion        # shell completion

Note: odoo-bin db only exists from Odoo 16.0. On 12.0-15.0 the db commands refuse with the version that added them and what to use instead, rather than passing through a raw odoo-bin usage error.

What makes it useful

Dependency expectations are derived, never hand-maintained. Odoo's own requirements.txt encodes python-conditional pins as PEP 508 markers. assista evaluates them against your interpreter, so it knows Odoo 19 wants werkzeug==2.0.2 on python 3.10 and 3.0.1 on 3.12 — and stays correct through future Odoo releases with no updates from us.

Checks nothing else performs:

Check Why it matters
wkhtmltopdf patched-qt build Unpatched silently drops headers, footers and logos. No error is raised.
Wheel ABI tags A cp311 wheel in a 3.12 venv at the right version passes a version comparison silently.
Import smoke tests python-ldap installs fine and fails at import when libldap.so is missing.
Duplicate module names Odoo loads whichever addons path comes first; editing the other copy does nothing.
Multiple PostgreSQL clusters Connecting to the wrong one reports a database as missing when it exists.
Schema vs source version The direct cause of "column does not exist" after adding a field.

Version-correct scaffolding. Generated modules use <list> from 17.0, and group_ids / privilege_id from 19.0 — using the old names raises at install. Every generated module is validated in CI: python compiles, XML parses, the manifest is a valid literal, and every declared file exists.

Safe by default. db drop requires typing the database name; --yes is not accepted. Generated odoo.conf gets a random master password at mode 600 and binds to localhost. --dev warns when combined with a non-local bind, because a traceback then exposes an interactive python console.

Version support

Tier Versions Meaning
First-class 17.0, 18.0, 19.0 Odoo-supported. Exercised in CI.
Supported 12.0 – 16.0 Environment, source, run and db work.
Out of scope ≤ 11.0 Needs python 3.7 or 2.7, which cannot be provisioned.

Requirements

  • Python 3.10+ (the CLI runs in its own isolated environment)
  • uv for environment provisioning
  • PostgreSQL client (psql, pg_dump) for database work

Development

uv venv --python 3.12 && uv pip install -e ".[dev]"
uv run pytest -q

Licence

LGPL-3.0-or-later

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

assista_cli-0.1.0a1.tar.gz (146.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

assista_cli-0.1.0a1-py3-none-any.whl (101.3 kB view details)

Uploaded Python 3

File details

Details for the file assista_cli-0.1.0a1.tar.gz.

File metadata

  • Download URL: assista_cli-0.1.0a1.tar.gz
  • Upload date:
  • Size: 146.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for assista_cli-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 8ba0b0be103a0ccfcbef1cca64b437f491f6879ecaeb908138171c2786f6525b
MD5 a30f3d5be9dd8e5346f8c4d0ed530a9c
BLAKE2b-256 5dce416398d76c32228b024f538a5f145f5d1f35a27ff41b58a94827aa13e0e8

See more details on using hashes here.

File details

Details for the file assista_cli-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: assista_cli-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 101.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for assista_cli-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 f71d39ce53e30d1c606a5a16e809ab16b84bcf3bbab320aeb9be9c84e108ba21
MD5 dca4db4ae4cb5dd63ceec02b02617902
BLAKE2b-256 d9363d0fe4701f6f54050e1c4bc892067df32326ed8d73d2c562532c907f39be

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

This release

0.1.0a1 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page