Skip to main content
Merve
Create organisation
Sign inSign up
2. Connect Your CRM

Design Your CRM for Agents

AXOL Academy logoAXOL Academy·Published 6 October 2026

Design Your CRM for Agents

What you'll be able to do after this guide: create the custom attributes your prospecting agents need, choose the right field type for each, and write field descriptions that teach the agent how to use them.

Why the schema matters more than the prompt

A scheduled agent remembers nothing between runs. Everything it knows about a prospect, and everything the next agent needs, lives in CRM fields. If a field is vague, two agents will use it in two different ways, and the system will quietly break. Your schema (the set of fields, their types and their allowed values) is the cheapest reliability you can buy.

Worked example: one researched company

Here's what a fully researched company record looks like at Fernhill. The field names are examples; use names that suit your business.

Field (example name)TypeExample value
prospect_statusStatusReview
research_dateDate12 May
prospect_typeSingle-selectDirect
fit_score_segment_aRating (1 to 5)4
current_toolMulti-selectCompetitor B
buying_signalTextJob advert for a "system administrator" for Competitor B, posted last month (company careers page)
value_hypothesisTextTwo sentences on why Fernhill helps this company specifically
annual_revenue_evidencedCurrency1,200,000
employee_countNumber38

And the main contact on the linked person record:

FieldTypeExample value
personaSingle-selectP1 Founder or owner
job_titleTextManaging Director
linkedinURLThe person's profile URL
email_addressesEmailOnly if confirmed, never guessed

Every value has one meaning, and each one was written by one agent.

The fields you need, and why

prospect_status (status type). The lifecycle of a prospect. We use: Researching, Review, Contacted, Customer, Skipped, Rejected, Churned. Two values do most of the work. Researching is the default while research is underway. Review means "fully researched and cleared for outreach", and it's the signal that hands a record to the outreach agents. Customer, Rejected and Churned are set by people only.

research_date (date). Set only when research has genuinely finished. This field does two jobs: it tells sourcing agents "already researched, skip it", and it tells the backfill agent "this one still needs work" when it's blank. If an agent sets it on a half-finished record, that record is hidden from retries forever.

prospect_type (single-select). Which route a prospect takes, for example Direct, Self-serve, Partner, or Unknown. Unknown means "needs a person to look", so no outreach happens.

Fit scores (rating, 1 to 5). One score field per segment. Separate fields let a company that fits two segments carry both scores honestly. See Build an ICP Fit Score (ICP stands for ideal customer profile).

current_tool (multi-select). What the prospect uses today, if that matters to your pitch. Multi-select, because companies often run two tools. Include an "Other (see note)" option. Without it, an agent that finds a tool you didn't list has nowhere to record it, and the finding is lost.

buying_signal (text). The single most specific reason to contact this company now, with its source written inline.

value_hypothesis (text). Why your product helps this company, in two or three sentences. Write it only for strong fits, never as a placeholder, so "field is filled in" always means "this was checked".

Number fields for thresholds. If a rule says "at least 5 employees", store employees as a number. A banded field like "11 to 50" can't answer that question.

Field types: choose deliberately

Use this typeForAvoid
StatusAn ordered lifecycleA free-text status, which agents will spell differently
Single-selectOne answer from a fixed listUsing it for things that can have two answers
Multi-selectSeveral answers from a listLeaving out an "Other (see note)" option
RatingScoresText scores like "strong" that can't be sorted or filtered
DateAnything time-based, especially clocksReusing one date field for two meanings
TextEvidence and explanationsCategory labels, which drift ("H&S" vs "Health and Safety")

If you must use a text field for categories, tell agents to search existing values first and reuse the exact wording, otherwise counting by category stops working.

Put the rules in the field description

Attio lets you write a description for every attribute, and agents read those descriptions through the connector. Use them. For a fit score field, paste the full 1 to 5 rubric into the description. For a date field, say who writes it and when.

We learned this when one score field had an empty description while its sister fields carried their rubrics. The agent had to hunt for the rubric in a document, and for a while it was told the field didn't exist at all. Scores went unwritten for days.

Rules that keep the schema safe

Put these in every agent's instructions:

  • Never create attributes, select options or lists. If an option is missing, record the finding in a note and flag it in the run summary.

  • Never delete or merge records.

  • Never change outcome statuses (Customer, Rejected, Churned) or deal outcomes.

  • Don't set fields this agent doesn't own. (Design the Outreach Pipeline explains field ownership.)

Before you move on

  • Create the fields above on your Company and Person objects.

  • Write a description for each one that says what it means, who writes it and when.

  • Run the health-check prompt from Connect Attio to Claude and confirm Claude can see every field and description.

Next: Notes, Tasks and Hand-offs.