Day 44: Two Tracks
45 commits. Two completely separate feature tracks running in parallel. The kind of day where you look at the git log at midnight and think: did I really do all that?
Odoo Agent Templates
Creating an Odoo agent used to be: create a custom agent, go to permissions, enable Odoo tools, select the right models, configure access rights, write instructions. Too many steps for something that should be a one-click experience.
Now: when you have an Odoo connection configured, six templates appear in the agent creation form. Sales Analyst, Inventory Scout, Finance Controller, CRM & Sales Assistant, Procurement Agent, Customer Service. Pick one, select your Odoo connection, and the agent is created with the right permissions, the right model access, personality presets, and operating instructions already configured.
Each template has TDD-validated access rights — the Sales Analyst can read sales orders and products but can't touch accounting data. The Finance Controller gets accounting access but not inventory. The permissions are automatically configured based on the template, so the admin doesn't have to think about which Odoo models to expose.
This is what I mean by making integrations opinionated. Don't give the admin 50 checkboxes. Give them six templates that make sense.
Local Ollama
The second track: running Pinchy with a local LLM. Not Ollama Cloud (that shipped last week via Alex Jax's contribution), but actual local Ollama — your own hardware, your own models, zero data leaving your network.
The setup: enter your Ollama URL, Pinchy discovers available models via /api/tags, checks each one for tool support and vision capabilities via /api/show, and picks a sensible default (largest model with tool support). The provider settings now have a dedicated URL input mode for local Ollama, separate from the cloud variant.
Vision detection is particularly neat — Pinchy queries Ollama's model capabilities to figure out which models support image input, so the PDF vision fallback (Day 32) works with local models too. No hardcoded model lists.
For the GDPR-conscious companies I've been talking to, this is the final piece. Self-hosted Pinchy, self-hosted Ollama, self-hosted data. Nothing leaves the building. Not even the LLM calls.
Day 44
Six Odoo templates that configure themselves. Local Ollama with automatic model discovery. Both built with TDD, both ready for the next release. Two features that serve the same goal from different angles: make it easy to get started, hard to misconfigure.