Skip to content

Agents

Agents are the engine of Sonora. Each one reads an account or contact, answers a specific question, and writes the result back to the record — health, renewal motion, an escalation risk, a competitor mention, a LinkedIn URL. They run every day across your whole book, so the work surfaces without anyone doing the research by hand.

You use agents two ways: enable one from the built-in library with a click, or write your own. Either way, the output becomes a queryable field that chat, Canvas, and actions all build on.

Each agent is three things: a prompt, a set of data sources, and an output format.

The prompt describes what to find — in natural language, the same way you’d brief an analyst.

Data sources are scoped per agent. Internal sources cover everything Sonora has ingested: support tickets, meeting summaries with sentiment, product usage, feature requests, contact engagement. Web sources cover company sites, news, job postings, funding databases, and press releases. A tech-stack agent might use only web search; a renewal-risk agent might draw entirely from internal usage and support history.

The output format decides what gets written back: a number, a date, a yes/no, a URL, a free-text summary, or a value picked from a list you define. Structured outputs stay queryable from chat and Canvas; free-text outputs are for narrative briefs.

Results attach to customer or contact records. Run an agent once to backfill, or schedule it to refresh on a cadence.

Sonora ships more than thirty pre-built agents. Enable the ones that match how your team works; each is a starting point you can duplicate and adjust. They group into a few families.

Web-research agents that watch the world outside your stack.

Agent Detects
Exec Changes C-suite and VP-level leadership changes
Funding New rounds, IPOs, acquisitions
Layoff Check Workforce reductions and WARN notices
M&A Activity Mergers or acquisitions involving the account
Pre-Call Brief A combined brief — recent news, health, open issues, next steps — before a meeting
Agent Output
Renewal Play Classifies the motion: auto-renew, risk, or upsell
Renewal Intent Reads signals for likelihood to renew
Expansion Opportunities Flags accounts ripe for upsell
Multi-Product Activation Whether the account uses three or more key features
Roadmap Match Whether their open feature requests match what’s planned
Agent Output
Escalation Risk Likelihood a support issue boils over
Low Engagement Warning Accounts with no recent meetings or support contact
Onboarding Laggard New accounts stalling before first value
Outreach Readiness Whether an account is ready for a personal email, too thin on context to personalize, or held back by a flag, a critical ticket, or a renewal in progress
Bad Call Accounts with an eCSAT below 4 in the last two weeks
Sentiment Trend The direction of customer sentiment over time
Agent Output
Usage Trend The direction of product usage
Call Count (90d) Meetings held in the last quarter
Hours Spent Time invested in the account
Last Call Date Date of the most recent meeting
Agent Detects
Competitor Mentions Competitors named on calls or in tickets
Feature Mention Specific features coming up in conversations
Unfulfilled Feature Requests Requests open 90+ days or flagged high priority
G2 Review Candidate Happy contacts worth asking for a review
Agent Output
Handoff (MEDDPICC) A MEDDPICC brief assembled from the closed deal and early calls
Economic Buyer Identifies the budget owner on the account

Contact-level agents that run on the people table.

Agent Finds
LinkedIn Lookup A contact’s LinkedIn profile URL
Job Title Lookup Current title
Public Mention Recent news, interviews, or notable posts
Champion Status Whether a contact reads as a champion or a detractor
Recently Promoted / Recently Departed Job changes among your contacts

Three agents run automatically on every account, with no setup. Their outputs feed the others above.

eCSAT (estimated CSAT) scores every support interaction 0–10, with the detected emotions and themes that drove the score. eCSAT rolls up into a per-customer trend, so the relationship slope is visible before any human flags it.

Sentiment detects emotional tone in calls and tickets — a label from very negative to very positive, the specific emotions, and the key themes.

Escalation prediction estimates the probability that a support issue escalates, based on tone, issue age, and repeat contacts.

Customer health is the agent most teams configure first. It distills the signals you choose into a single 1–10 number per account. Configure each signal independently — pick from product usage, meeting cadence, support volume, sentiment, renewal intent, or a custom enrichment from a custom agent. Each signal scores 1 (critical) to 10 (excellent). Each gets a weight from 0 to 10.

The final score is a straight weighted average:

Health Score = Signal₁ · Weight₁  +  Signal₂ · Weight₂  +  …⁄Weight₁  +  Weight₂  +  …

Worked example: Product Usage scores 8 at weight 10, Touchpoints scores 6 at weight 5, Sentiment scores 7 at weight 5. That gives (80 + 30 + 35) ÷ 20 = 7.3.

Signals with no available data drop out of both numerator and denominator, so missing inputs don’t drag the score down.

The 1–10 score maps to a status through configurable bands. The defaults:

Status Score range
Thriving 8 – 10
Healthy 6.5 – 8
Emerging Concerns 4 – 6.5
At Risk 0 – 4

Drag the threshold sliders in settings to match how your team actually talks about accounts. Every customer reclassifies instantly.

Some signals matter so much that a single bad reading should override the average. Toggle Critical Override on a signal and set a threshold; if that signal scores at or below the threshold, the account is flagged At Risk regardless of the weighted score. A customer with strong usage and sentiment but an explicit non-renewal signal still surfaces — which is the point.

When nothing in the library fits, write your own: a prompt, the data sources it can read, an output format, and when it runs. Common uses:

  • Tech stack and competitor signals — what a customer uses, what they replaced, who else they’re evaluating
  • ICP scoring — a fit score from public company data plus your account criteria
  • Renewal context — usage trajectory, support load, sentiment change, last meaningful touchpoint
  • Custom qualification — any rubric your team scores accounts against by hand today

Pick a structured output (number, date, boolean, list selection) when you want the result in dashboards and chat queries, or free text for a narrative brief.

Agent results feed the rest of the product:

  • Actions trigger on agent values. When health drops to At Risk or escalation probability crosses your threshold, a workflow fires and an action appears with context and a suggested next step.
  • Chat treats agent outputs as queryable fields. “Show at-risk customers” pulls health; “show declining sentiment” pulls eCSAT trends.
  • Canvas blocks render them — health distributions, satisfaction trends, the output of any custom agent.
  • The customer profile shows them inline, with the date each was last computed and the data the agent used. Health and CSAT scores sync back to Salesforce or HubSpot so your team sees them where they already work.

Agents that read only your own data run freely; ones that reach the public web or an outside data provider draw on your plan’s external-work allowance. Sonora throttles per-tenant runs so that stays steady — if you need a one-off backfill across thousands of records, talk to your account team first so we can plan for the run. See usage and limits for what your plan covers.