Skip to content
Get AI Business OS

Setting Up the CRM

PRIMA CRM

A new CRM is empty. The setup tool, crm_setup, fills it from the projects already in your AI Business OS project register, so you start with the companies you work with today. You can run it again whenever you add projects.

Setup reads two fields on each project in .claude/state/state.json.

Field What setup does with it
companyName Creates a company with this name, or links the project to an existing company with the same name
contacts Creates one contact per name in the list, at that company

A project without a companyName seeds nothing. If your projects do not carry these fields yet, ask Claude to add them first. You can also skip setup and add companies by talking to Claude, as described in Companies.

Ask Claude to run it.

Run the CRM setup.

Claude calls crm_setup. The tool reads every project that is not archived and acts on each one that names a company, whatever its category.

  • A new company name. Setup creates the company at status active, links it to the project and adds the contacts the project lists.
  • A company already in the CRM. Setup links the project to it and creates no duplicate. Names match without regard to capital letters.
  • A project already linked to a company. Setup skips it, even when the company now has a different name in the CRM.

Setup gives each new company a relationship. A project in the client category seeds a company at relationship client. A project in any other category seeds a company at relationship other, and the report lists it so you can set the right one.

Setup creates a sale engagement only for a client project whose description or notes state a value in euros, such as €4,500. The engagement takes the project’s name with the word “engagement” added. Its stage is negotiation when the project is in progress and lead otherwise. No other project seeds an engagement, so a workspace of internal projects ends up with none.

Setup returns a report in sections. A section appears only when it has something in it.

Section What it lists
Seeded from state.json Each new company, its relationship, the contacts created and whether an engagement was created
Linked to existing companies Projects that named a company already in the CRM and now link to it
Relationships to set Companies seeded at other from non-client projects, with their project IDs
Needs manual input Client projects with no companyName, and whether contacts is missing too
Skipped Projects already in the CRM and linked

A summary line at the end gives the count for each section. Here is a short example from an invented workspace.

## PRIMA CRM — First-Run Setup
### Seeded from state.json
| Project | Company | Relationship | Contacts | Engagement |
|---------|-----------------------|--------------|----------------|------------|
| P012 | Harbour Design Studio | client | Aoife Brennan | Yes |
| P015 | Northfield Print | other | - | No |
### Relationships to set
| Company | Projects |
|------------------|----------|
| Northfield Print | P015 |
---
**Summary:** 2 seeded, 0 linked, 1 relationship(s) to set, 0 need input, 0 skipped.

Every company under “Relationships to set” starts at other, and a company at other is never reported as stale. Tell Claude what each company is to you.

Northfield Print is a supplier.

Claude updates the company’s relationship. The relationship also sets the company’s expected contact rhythm, so a supplier counts as stale once 90 days pass without contact. A company seeded by setup has no interactions yet, so it shows as stale straight away until you log contact with it. See Stale Clients and Contact Cadence.

For each project under “Needs manual input”, you have two routes.

  1. Ask Claude to add companyName, and contacts where you have them, to the project record, then run setup again.
  2. Ask Claude to add the company and its contacts to the CRM directly, then link the company to the project.

Setup is safe to repeat. It never creates a second company for a name already in the CRM, and it skips projects that already have a link. Run it again after you add new projects, and it picks up only what is new.

Ask for the CRM summary, or build the dashboard to see every company at once.

A new CRM holds no interactions, so every client company that setup created shows as stale at first. Log your most recent contact with each one, with the date it happened, and the stale count falls to the companies you have not spoken to within their cadence.

Show me the CRM summary.

The CRM Dashboard explains how to build and read the dashboard. To change the default contact rhythms before you start, see Configuration.