# One Account, Four Classes, Six Tools

*Published 2026-09-18* | Author: civic-team

> **tl;dr** On Tuesday Chris walked one account across six tools: pricing three times in a week, two people active in a trial, a CRM record with a stale owner, and a team expecting Slack, the outbound tool, and the warehouse to do their jobs. Read the same account with Brad's Field Guide legend and it is three signal classes, not six tools: site intent (rented), product behavior (owned), CRM lifecycle (yours on paper). The other three tools are where actions land and records go. The account is three classes wide and six tools long, and it becomes one account in exactly one place: the record.

On Tuesday, with Dreamforce and UNBOUND under way, Chris walked [one account across six tools](https://www.civic.com/field-notes/your-pipeline-runs-across-six-tools). A prospect at a target account visits pricing three times in a week. Two people from the same company are active in a trial. The account is already in the CRM with a stale owner. The team expects an alert in Slack, follow-up through the outbound tool, and a row in the warehouse. His question was who is allowed to act across those systems, and where anyone can review the whole sequence.

Brad has spent three weeks on a different question about the same kind of account: not which tool a signal landed in, but which class it belongs to and who owns the instrument. Four classes: product behavior, anonymous site intent, CRM lifecycle, ecosystem exhaust. So far, [the class you own](https://www.civic.com/field-notes/the-class-you-own), [the class you rent](https://www.civic.com/field-notes/the-class-you-rent), and on Wednesday, [the class you filed](https://www.civic.com/field-notes/the-class-you-filed).

Put the two together and Chris's account reads differently. Only three of the six tools hold a signal. And the account is one account in exactly one place, which is not any of the six.

## Label the touches

Take the touches in Chris's order. The account is anonymized as Anweledig Labs, and every value below is illustrative.

Pricing three times in a week. Site intent: `pricing → return → repeat (7d)`, in the notation Brad uses and Bryn logs. The visits happened on your surface. The company name attached to them did not; an identity vendor matched a cookie or an IP address to an organization, so this touch is resolved, not known. Rented, in part 2's word.

Two people from the same company active in a trial. Product behavior: `trial → second seat → both active (7d)`. Two humans using the product with their hands, inside a surface you run. Nobody can reprice this signal or sell it to the company you lost a deal to last month. Owned, part 1.

Already in the CRM with a stale owner. CRM lifecycle: a lead filed fourteen months ago, owner long gone, no activity logged since. Alone, that is a filing. Joined to the pricing visits it becomes `filed lead → pricing return (14mo)`, a specimen. The record is yours; the enrichment on it and most of the activity log around it usually are not. Yours on paper, Wednesday's phrase.

Then Slack, the outbound tool, and the warehouse. No signal lives in any of them for this account. Slack is where the alert lands, the sequencer is where the follow-up runs, the warehouse is where the row goes. Labelling them as action and record surfaces is most of the work, because a dashboard treats all six as sources.

ONE ACCOUNT, SIX TOOLS (interactive: select one of six tools, in the order the account touched them, to see the touch on this account, its Field Guide class, who owns the instrument, and the line Bryn writes for it)
Website. Touch: a prospect at the account visits pricing three times inside a week. Class: site intent, pricing → return → repeat (7d). Who owns the instrument: rented; the visits are on your surface, the company name came from an identity vendor's match. Bryn's line: I matched pricing → return → repeat (7d) on Anweledig Labs at 09:41:06Z. Resolved to company by the identity vendor. No person named.
Product. Touch: two people from the same company are active in a trial workspace this week. Class: product behavior, trial → second seat → both active (7d). Who owns the instrument: owned; nobody can reprice it, degrade it, or sell it to a competitor. Bryn's line: I matched trial → second seat → both active (7d): two users on the Anweledig Labs trial, both active this week. Owned signal. It carries the weight.
CRM. Touch: already in the CRM, a lead filed fourteen months ago, owner moved on, no activity logged since. Class: CRM lifecycle, filed lead → pricing return (14mo). Who owns the instrument: yours on paper; the record is yours, the enrichment on it and most of the activity log usually are not. Bryn's line: I read the filed record: lead, created 2025-07, owner inactive, no touch logged. Joined it to the pricing return as filed lead → pricing return (14mo).
Slack. Touch: the team expects the alert here. Class: action surface (no signal lives here for this account). Who owns the instrument: your channel; Slack's log. Bryn's line: I posted to #growth-signals: the three visits, the two seats, the filed record, the score by axis. One message, evidence attached. 09:41:09Z.
Outbound. Touch: follow-up runs through the sequencer. Class: action surface. Who owns the instrument: your sequence; the sequencer's log. Bryn's line: I held enrollment in trial-expansion-v2 for approval. op_2 approved in 2m14s. Enrolled the trial admin at 09:43:21Z. What the sequencer does next is in the sequencer's log.
Warehouse. Touch: reporting lives here. Class: record surface. Who owns the instrument: your table; fed by the record. Bryn's line: I wrote run_7a31c9 to the audit log. The export carries it to your warehouse as one row. Another person can reconstruct the run from that row alone.
Illustrative, not a benchmark. Account anonymized. Tool order is Chris's from Tuesday. Class labels and the ownership axis are Brad's from Signals: A Field Guide.
Figure 1. Six tools, one account. Select a tool to see the touch, its Field Guide class, who owns the instrument, and the line Bryn writes for it (illustrative, not a benchmark).

## Three wide, six long

So the account is three classes wide and six tools long. Nothing that lives inside one tool sees the width.

An agent inside the CRM reads the filed class well, plus whatever the CRM has been told. If the trial activity syncs in as a field, it sees a field. If the pricing visits arrive as a lead-score bump, it sees a bump, without the parts. It can act inside the CRM, and act competently. What it cannot see is that the two seats and the three visits are the same week on the same account, unless something else did the join first. That is not a knock on the agent. It is the shape of living in one column.

Chris's test on Tuesday was whether you can control and review the full cross-tool workflow, or only what happens inside one platform. Brad's legend asks which class a signal is and who owns the instrument. Same question, asked from two ends: one starts at the actions and works back to the signals, the other starts at the signals and works forward to who may act on them. Both arrive at the join.

FOUR CLASSES BY SIX TOOLS (interactive: a grid of four Field Guide classes by Chris's six tools, this account's three touches lit; a two-option toggle between "Agent inside the CRM" and "One approved workflow across the stack" restates what each model can read and act on)
Rows: product behavior (owned), site intent (rented), CRM lifecycle (yours on paper), ecosystem exhaust (none this week), the Play (actions and record). Columns: Website, Product, CRM, Slack, Outbound, Warehouse.
Lit cells: product behavior under Product, 2 seats (7d); site intent under Website, 3 visits (7d); CRM lifecycle under CRM, filed lead (14mo). The Play row: task to owner under CRM, post under Slack, enroll under Outbound, one row under Warehouse.
Agent inside the CRM (default): on this account it reads one lit cell, the filed lead, plus whatever was synced into the CRM as fields. The three pricing visits and the two trial seats sit outside its column. It can open the task for the on-duty owner inside the CRM, and its record stays inside the CRM.
One approved workflow across the stack: it reads all three lit cells on one account: the visits, the seats, and the filed lead. It scores them together, runs the post in Slack, the task for the on-duty owner in the CRM, and the enrollment in the sequencer, and writes one record that lands in the warehouse as one row. A bracket under the Play row spans all six columns, labelled one record.
Illustrative, not a benchmark. Rows are the four Field Guide classes; columns are Chris's six tools. The fourth row is empty for this account this week; part 4 of the Field Guide is next week.
Figure 2. Four classes by six tools, with this account's three touches lit. Switch between an agent inside the CRM and one approved workflow across the stack (illustrative, not a benchmark).

## Where it becomes one account

The join has to be written down somewhere, and the somewhere is the record. Not the CRM record, which is one of the six. The run record.

On Anweledig Labs it carries the trigger by its parts (`pricing → return → repeat (7d)`, site intent, resolved to company). The join: the trial seats from the product, the filed lead from the CRM, ecosystem exhaust noted as absent. The score by axis: 0.79 against a threshold of 0.70, with fit at 0.78, intent at 0.86, timing at 0.71. The decision: Play matched, boundary held. The actions by tool: a Slack post with the evidence attached, a task opened in the CRM for the on-duty owner, the trial admin enrolled in a sequence after a one-click approval. Who approved, and how long it took. The timestamps. The id.

THE RECORD (static figure: the six touches collapsed into one Bryn run record for Anweledig Labs, acct_2c81, run_7a31c9, 2026-09-16)
TRIGGER: pricing → return → repeat (7d); class: site_intent; resolved: company (identity vendor); owner: rented.
JOIN: trial → second seat → both active (7d); class: product_behavior; owner: owned. filed lead → pricing return (14mo); class: crm_lifecycle; owner: yours_on_paper. ecosystem_exhaust: none (7d).
SCORE: 0.79; threshold: 0.70; fit: 0.78; intent: 0.86; timing: 0.71.
DECISION: play: trial-plus-pricing-route-v1, matched; boundary: pass. channels: slack, crm_task, sequence; cap: 4/25; suppression: no match.
ACTIONS: slack: posted #growth-signals, evidence attached, 09:41:09Z. crm: task opened for on-duty owner, evidence attached, 09:41:10Z. outbound: trial admin enrolled in trial-expansion-v2, after approval, 09:43:21Z. warehouse: this record, exported as one row, nightly.
APPROVAL: mode: approve; approved_by: op_2; wait: 2m14s; play_approved: 2026-08-27.
TIME: matched 09:41:06Z; scored 09:41:07Z; approved 09:43:20Z; enrolled 09:43:21Z; logged 09:43:21Z.
RECORD: run_7a31c9; acct: acct_2c81; reconstructable from this row alone.
Three classes on one account: site intent (rented), product behavior (owned), CRM lifecycle (yours on paper). Three tools carry the actions and the row.
Illustrative, not a benchmark. Account anonymized. This is the complete record of Bryn's decisions and actions on the run. Slack, the CRM, and the sequencer keep their own logs of what they did after the request arrived.
Figure 3. The six touches collapsed into one run record: trigger, join, score by axis, decision, actions by tool, approval, timestamps, id (illustrative, not a benchmark).

That is where one account becomes one account: in a record another person can reconstruct from, the test we ran on ourselves in [Show Me a Blocked Action](https://www.civic.com/field-notes/show-me-a-blocked-action). It is why we say owner rather than fleet; an agent per tool gives you a record per tool and no join between them, the failure mode in [Thirteen Agents, One Owner](https://www.civic.com/field-notes/thirteen-agents-one-owner). And it is the third surface in [Three Surfaces, One Architecture](https://www.civic.com/field-notes/three-surfaces-one-architecture): the same record whether a person opens it or an agent asks for it over MCP, which was Monday's point in [The Agent Your Agents Call](https://www.civic.com/field-notes/the-agent-your-agents-call).

## What this week showed

Reading the cabinet is progress. The platforms spent the week showing agents that live inside the CRM and read it well, and the CRM is a class most teams never read at all. Take the win. It is one class of four.

Wednesday's part 3 said the cabinet only fires when it is joined to a live class: a filed lead is a filing, and a filed lead that comes back to pricing is a specimen. Tuesday said the controls have to follow the work across tools, because the work does. Both are true of this one account. The CRM record on Anweledig Labs was a filing at the start of its week and a Play by the middle of it, and everything that changed happened in two other tools.

Thursday's piece made the calendar point, and it lands here too. The same account, read in September, is a Q4 account. The visits and the seats are happening now. The join decides whether anyone acts on them before the quarter does.

## How Bryn holds the account

Bryn is not another dashboard to watch. It is the governed execution layer that runs Plays through your stack.

Bryn watches the site, the product, and the CRM together, so the three classes land on one account instead of three tools. It scores that account in the open, by axis, against the profile you defined. When the pattern crosses the threshold you set, it runs the Play you approved through Slack, the CRM, and the sequencer, end to end in Run mode or held for one click in Approve mode. Then it writes one record, in its own register:

> ![Bryn](https://www.civic.com/images/brand/bryn-horizon-gradient-24.svg) I matched `pricing → return → repeat (7d)` on Anweledig Labs at 09:41 UTC, resolved to company. Joined `trial → second seat → both active (7d)` from the product and `filed lead → pricing return (14mo)` from the CRM. Scored 0.79 against 0.70. Matched `trial-plus-pricing-route-v1`, boundary held. Posted to #growth-signals, opened a task in the CRM for the on-duty owner, held the enrollment. Approved by op\_2 in 2m14s. Enrolled. Logged run\_7a31c9.

The boundary Chris drew on Tuesday stays where he drew it. That record is the complete record of Bryn's decisions and actions. It is not a replacement for what Slack, the CRM, or the sequencer log about their own behavior after the request arrived. Bryn's record ends at the handoff, and says so.

## The gift

Take one live account from your pipeline this week. Write down every touch from the last seven days and label each one twice: the class it belongs to (product, site, CRM, ecosystem) and the tool it landed in. Then ask where the sequence of those touches, the decision, and the action are written down together. If the answer is "in six places," you have found the seam. It is not a tool gap. It is the join nobody owns.

**Stop watching signals. Start running them.**

Source: https://www.civic.com/field-notes/one-account-four-classes-six-tools
