Skip to main content
Pre-release

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

ow — Odoo Workspaces

CLI tool that turns interactive prompts into ready-to-code Odoo workspaces using git worktrees.

Ask DeepWiki

What it is

ow manages Odoo development workspaces. Each workspace is a directory holding git worktrees for the Odoo repos you work on, plus generated IDE configs, Python environment, and Odoo config files — all ready to open and start coding.

Every workspace on the machine shares the same set of bare repos, so you clone Odoo once and fetch updates that are immediately visible to every workspace. Worktrees are cheap (no duplicate working trees), so you can keep multiple feature branches side by side without re-cloning gigabytes of history.

What it solves

  • Clone fatigue — Odoo repos are large. Shared bare repos mean one clone, many worktrees.
  • Setup boilerplate — the mise fragment, odoorc, odools.toml, pyrightconfig.json, and the IDE configs are generated every time, from a fixed set of outputs.
  • Branch juggling — concise base..feature branch specs control detached vs attached worktrees; ow rebase keeps them up to date idempotently, and ow switch moves every repo in a workspace to a branch at once.
  • Workspace discovery — workspaces live anywhere; an index remembers where, so ow status myfeature finds it by name.

Prerequisites

  • mise — manages Python, virtualenvs, and dependencies in generated workspaces
  • Odoo system dependencies — see Odoo source install docs (includes wkhtmltopdf, PostgreSQL client libs, etc.)
  • SSH — configured for access to Odoo repositories
  • Docker or Podman (optional) — ow writes a compose file for postgres, pgweb and mailpit; see Services

Installation

pipx install odoo-workspaces   # recommended
pip install odoo-workspaces    # or in an active venv

Quick Start

mkdir my_work && cd my_work
ow init                            # interactive form: repos and branch specs
mise install
code .                             # open in your IDE and enjoy
ow                                 # launch the interactive dashboard

There is no global config until you save one: ow runs on built-in defaults, the community remote included, and the dashboard's global-config editor writes a commented ~/.config/ow/config.toml for you to edit. See Configuration for the full layout.

Documentation

Thanks

This is a small personal project I built with AI coding. It scratches a very specific itch I have — managing multiple Odoo worktrees side by side.

If you find it useful, please consider contributing!

Contributions are welcome! If something is broken, confusing, or missing — open an issue. If you have a fix or improvement in mind, PRs are appreciated.

Release files for odoo-workspaces 3.0.0a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for odoo-workspaces 3.0.0a1
File Size Uploaded
odoo_workspaces-3.0.0a1.tar.gz 370.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for odoo-workspaces 3.0.0a1
File Interpreter ABI Platform
odoo_workspaces-3.0.0a1-py3-none-any.whl Python 3 none any Details

Total release size: 547.6 kB

Release files / odoo_workspaces-3.0.0a1.tar.gz

Download URL odoo_workspaces-3.0.0a1.tar.gz
Size 370.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ddd5753caff2c8d5a6805803ee7dec9cd30822a05d1d52789ab670697ffba1eb
BLAKE2b-256 checksum
How to use checksums
6a086f8d6998aa8de219c5196cc9891ff820189cf634bddd41e7739311b5c682
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / odoo_workspaces-3.0.0a1-py3-none-any.whl

Download URL odoo_workspaces-3.0.0a1-py3-none-any.whl
Size 177.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0d71c53d4b648f7d85deb27d72ff51f46bfa8cf28d03def8ac8ff0772249b3cf
BLAKE2b-256 checksum
How to use checksums
65835faf03ba61f133e27cf225f0e03e630462f1c025f419a1ee33dc9bb53053
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

3.0.0a1 This release

2 release files

2.4.1

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release 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