Projects & Environments
The Model
CC organizes your work in a hierarchy:
Project
└── Environment (one or many)
├── Path (where the code lives)
├── Version (v17, v18, v19...)
├── Branch (git branch name)
├── Database (PostgreSQL database name)
└── Modules (which modules to -u on launch)Project
A Project is a client or codebase — e.g. acme, globex, initech.
It's just a name and an optional Odoo SH project slug. It groups one or more environments together.
Environment
An Environment is a specific working configuration for a project. Most projects have one environment, but you might have multiple when:
- Working on separate feature branches simultaneously
- The project spans multiple Odoo versions (v18 for one module, v19 for another)
- You have a "production-like" and a "dev" setup locally
Each environment stores everything CC needs to switch to it instantly.
Adding a Project
cc project add my-project
# or just switch to it — CC will add it if it doesn't exist
cc switch my-projectAdding an Environment to an Existing Project
cc env add my-projectListing Projects
cc projectListing Environments
cc env
# or for a specific project:
cc env list my-projectRemoving
cc project remove my-project # removes project + all environments
cc env remove # interactive picker