Files
glenn schrooyenandClaude Opus 5 adb6ebe25f Verify anything the client will see in a browser
The API can only prove a record is correct, not that the screen looks right, and
a Studio-modified form, a portal page or a report PDF can be wrong while every
API read passes. Adds a "Look at the screen" step: prefer Claude in Chrome (uses
the user's own Odoo session), fall back to a Playwright MCP, and where neither is
installed offer the choice once and accept screenshots rather than blocking the
build on a tool install.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 03:51:46 +02:00

4.6 KiB
Raw Permalink Blame History

Callista Odoo Demo

Turn a discovery call into a complete, working Odoo demo — and the documents to sell it, before and after the meeting — with an AI agent doing the build.

Fork of Smetools/odoo-demo-architect (MIT). See UPSTREAM.md for the fork point and what diverges.

A Claude Code skill. Point it at whatever discovery material exists — a transcript, meeting notes, an email thread, Knowcap, or nothing at all — and a reachable Odoo instance. It writes the discovery brief, researches what Odoo does natively vs. what needs building, stands up a live database (modules + realistic data + the 12 "hero" features that win the deal), tests that those features actually fire, and generates the sales documents. After the demo it writes the follow-through set.

Three phases

Phase Produces
A — Discovery brief discovery_brief.md in a fixed six-section shape, from any source. Infers first, asks the gaps in one batch
B — Build A live Odoo DB with working heroes, a verification log with real numbers, and three sales docs: run-of-show, decision-maker one-pager, 1-page demo script
C — Follow-through Objection sheet, scoped quote, implementation timeline, statement of work

Each phase is usable alone. Phase C runs days after the demo.

Verticals extend this

Vertical skills (e.g. buildease-demo for construction) wrap this one and supply only their own module routing, solution precedence, purge chain, demo-data policy, and follow-through framing. They do not restate the pipeline. See Extension points.

Install

git clone <this repo> ~/.claude/skills/callista-odoo-demo

Then ask Claude: "build an Odoo demo for <client> from these notes."

Do not install this as odoo-demo-architect — skills resolve by directory name, and a same-named fork silently shadows upstream depending on install order.

Prerequisites

  • Claude Code.
  • A reachable Odoo instance + API key (Settings → My Profile → Account Security → New API Key).
    • On Odoo.sh: create the project + enter any partner trial code first (web-only), then come back with the DB URL + API key.
  • Optional: Knowcap with its MCP connected, as one possible discovery source → knowcap.ai.
  • Optional: the Perplexity MCP for the native-vs-custom research step (web search works too).
  • Optional but recommended for UI/website work: a browser tool for visual checks — Claude in Chrome (uses your existing Odoo session) or a Playwright MCP. Without one, the skill asks you for screenshots instead.

Quickstart

  1. Put your Odoo creds in env vars (or scripts/creds.json): ODOO_URL, ODOO_KEY, and ODOO_DB if one domain serves several databases. JSON-2 authenticates on the API key alone — there is no login/password, so no ODOO_LOGIN.
  2. Verify the connection: python scripts/odoo_connect.py → prints the server version and uid. (python scripts/test_odoo_connect.py checks the call shape offline, no server needed.)
  3. Copy demo_config.example.jsonscripts/demo_config.json, fill it from the brief.
  4. Ask Claude to run the pipeline (see SKILL.md).

scripts/creds.json and scripts/demo_config.json are gitignored — they hold client API keys. Keep it that way.

Read this before touching Odoo 19

Several core fields were renamed in v19 (res.users.group_ids, res.groups lost category_id, etc.), credit limit is warning-only natively, and fleet load-by-weight needs stock_fleet. All the footguns are in reference/odoo19-field-gotchas.md so you don't relearn them the hard way.

Files

SKILL.md                           the procedure (what the agent follows)
UPSTREAM.md                        fork point + divergence from upstream
scripts/odoo_connect.py            JSON-2 connector + helpers
scripts/build_demo.py              config-driven data + hero builder (template)
scripts/test_odoo_connect.py       offline self-check of the JSON-2 call shape
demo_config.example.json           per-client config shape
reference/odoo19-field-gotchas.md  version-specific fields + footguns
templates/                         brand.css + the doc templates

License

MIT — see LICENSE. Original copyright SMEtools; modifications Callista BV.

Credit

Original by SMEtools — Odoo implementation + AI automation. Fork maintained by Callista BV. Runs on Claude Code.