CRM
CEO agent resolves ambiguous duplicate-company merges
An agent pulls the ambiguous duplicate groups from the review queue, gathers Attio and Stripe context for each, decides the canonical record using fuzzy and business signals.
How it runs
The automated pipeline, trigger to output.
- TriggerNew ambiguous group in Postgres review queuePostgres
- ActionFetch company detail from AttioAttio
- ActionFetch customer and subscription state from StripeStripe
- LogicAgent selects canonical keeper with rationale
- ActionWrite merge proposal and confidence to PostgresPostgres
- OutputPost proposal to Slack for Chairman approvalSlack
What it does
Handles the hard cases that deterministic fuzzy matching can't settle on its own. An agent reasons over duplicate company groups that were flagged ambiguous, weighs which record should survive, and produces a justified merge recommendation.
When to use it
Use it after a domain-matching sweep has separated the easy merges from the ambiguous ties, and you want judgment applied to conflicts like two records with similar domains but different billing status or owners.
How it works
The flow triggers on new rows in the Postgres review queue. For each ambiguous group the agent fetches full company detail from Attio and the linked customer and subscription state from Stripe. Using domain similarity, billing activity, record completeness, and recency, it selects a canonical keeper and the records to fold in, then writes a structured merge proposal back to Postgres with its rationale and a confidence score. High-confidence proposals and conflicts are posted to Slack for the Chairman to approve before any record is changed.
Set it up
What you configure once, before turning it on.
- 1Connect PostgresAny Postgres URL — query, write, migrate.
- 2Connect AttioReal-time CRM with structured data + powerful views.
- 3Connect StripeCustomers, subscriptions, payments.
- 4Connect SlackChannels, DMs, threads, mentions.
- 5Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 6Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 7Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More CRM workflows
Dormant Account Check-In Call Scheduler
On the anniversary of an account's last touch, books a tentative check-in call on the owner's Google Calendar and emails the contact a scheduling invite.
Weekly Dormant-Anniversary Cohort Digest
Every week, groups dormant Attio accounts by which last-touch anniversary they hit that week, builds a prioritized digest.
AI-Personalized Dormant Account Win-Back
On a dormancy anniversary, an agent researches the account's history and recent public signals, drafts a genuinely personalized win-back email.
Backfill Intercom conversation topics onto stale HubSpot contacts
Finds HubSpot contacts with no recent Intercom topic, pulls their conversation history from Intercom, classifies the dominant topic with OpenAI.
Daily orphaned-opportunity sweep with manager Slack digest
Each morning this scans Salesforce for open opportunities owned by inactive users and posts a per-manager digest in Slack listing the orphaned deals that need a new owner.
Tag closed Intercom conversations onto Salesforce contacts in real time
On each Intercom conversation close, classifies the topic with OpenAI and appends it to the matching Salesforce contact's activity timeline so the topic never goes stale…
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
