The CRM that updates itself (almost)
Agents now sweep the last 48 hours of email, detect what moved a deal forward or backward, and queue scored CRM updates for one-click human approval — the full loop, running on live HubSpot + Gmail data.
CRMs rot because updating them is homework. Today's release closes the loop we've been building all week: the team reads your mail, notices what moved, and files the CRM updates — you just approve.
The sweep
A mission (crm-email-sweep, pure workspace YAML) instructs the Revenue Lead: search the last 48
hours of mail, sent and received. For each thread that plausibly relates to a known contact or
deal, decide — did it move things forward (meeting booked, verbal yes, scope requested) or
backward (gone cold, missed call, timeline slip)? For each movement, propose the CRM update.
Running it against a real pipeline (235 deals, ~9k CRM records, 3,400 emails), the team queued five updates in one pass — each with a confidence score and evidence:
0.88 — inbound asking to schedule → advance the deal · 0.82 — scope call accepted → stage forward · 0.72 — prospect missed the scheduled call → flag the slip
Recommendations, not actions
Every proposal rides propose_action (v1.47) through the authz gate into the unified review queue as
a pending run: the agent recommends, a human decides. Approve and it executes against HubSpot with
vault credentials; reject and that's training signal. Nothing touches the outside world on its own.
This is deliberate: confidence scores + accumulated approve/reject history are the raw material for a trust ladder — update types that keep getting approved graduate from recommended toward automated, one action type at a time.
Also in v1.48
- Live activity line in chat — long multi-specialist turns show what's happening (Searching connected sources… Delegating to pipeline analyst… Assembling the answer…) instead of silence.
- create_artifact arg coercion — models love stringifying nested JSON; the tool now tolerates it instead of dying at the finish line.
- Releases restored — semantic-release cuts GitHub Releases again (v1.47.1 was the first since May); conventional commits → automated notes.
See Actions and Connecting sources.