Business Performance Consulting Sdn Bhd User Guides
01

Overview and Architecture

Odoo 19 Enterprise · BPC Session

The session CLI is a lightweight workflow for keeping my BPC Odoo To-do in sync across MacBook and Studio, with Claude reading the state between chats. This chapter explains what it does and why the pieces fit the way they do.

1

What this solves

I work on two Macs (MacBook and Studio) and talk to Claude in multiple sessions over days. Claude forgets between sessions. My task list lives in Odoo To-do but Claude cannot reach it directly. The session workflow bridges that gap: every open and close produces a snapshot of my Odoo tasks in a git repo that both machines share, so wherever I pick up next — either machine, same or new Claude session — everything is current.

2

The three moving parts

Odoo To-do is where I actually manage tasks. Drag, tick, add, delete — as normal. The bpc-war-plan git repo (github.com/BPConsulting/bpc-war-plan) is the transport: it holds the scripts themselves plus the latest Odoo snapshot and a session log. macOS Keychain holds the Odoo password, one per machine, so nothing sensitive ever touches a file or a commit.

3

Why Keychain, not git

The repo is shared across machines via GitHub. If the Odoo password were in a file in the repo, it would be on GitHub too. Keychain keeps the password on each physical Mac, invisible to git. Both machines have the same script code and config (URL, DB, username) but each has its own Keychain entry for the password. One consequence: running session setup is needed once per machine.

4

What Claude sees

Claude reads exports/latest.json from the repo at the start of each chat where I share it. That file contains a snapshot of my open To-do tasks — names, tags, stages, deadlines, descriptions. Claude never connects to Odoo directly. The snapshot refreshes each time I run session open or session close. This means if I make changes in Odoo mid-session and want Claude to see them, I can run session pull to refresh without the full open/close cycle.

Mental model Odoo is the single source of truth. The git repo is a read-mostly mirror. Claude reads the mirror. The only time the scripts WRITE to Odoo is the initial seed (one-shot, already done). From there, all day-to-day changes happen in the Odoo UI.