Revenue

Catch the cancellation before it is a cancellation

A cancellation message is the most valuable thing in a support queue and usually the slowest to get answered. This one reads the account, works out whether the customer is worth an offer, and asks a person before discounting anything.

Retention lives in whoever happens to be on shift. The customer who has paid for three years gets the same canned reply as the one who signed up last week, because nobody has time to look up which is which before answering.

$50K+

a year is where enterprise agent platforms start, before a helpdesk seat.

Published 2026 vendor pricing

The flow

What runs when the message arrives.

Every step below is a real node type on the canvas, and the log underneath is the execution it produces. A branch the run didn't take stays dark, same as it would in the console.

agents / cancel-guard7 steps
message
screen
account.get
tenure
retention
approve
close
run_5e04a7cancel-guardcompleted · 1.41s
  1. 01agent.invokecancel-guard · ses_7c04queued
  2. 02messages.loadmanaged · 3 turns14ms
  3. 03moderation.checkflagged: false88ms
  4. 04tool.httpGET /v1/subscriptions/311200 · 112ms
  5. 05conditiontenure > 12mo → true1ms
  6. 06llm.calldrafts retention offer455ms
  7. 07human.waitinbox · approve 20%paused
  8. 08agent.returnoffer sent · retained1.41s

What it uses

What this leans on.

The account decides, not the wording

A CEL condition reads tenure, plan and usage straight off what your API returned. Who gets an offer is a rule you can read, not a paragraph buried in a prompt.

Nothing costly is sent unapproved

The discount goes to the Inbox as a confirm step. The model drafts it and a person decides.

Run it on a delay

Queue the follow-up for tomorrow with `run-async?delay=`, then cancel it if the customer replies first.

The reason is kept

Write the churn reason to a bucket on the way out, with an expiry if it shouldn't outlive the quarter.

What it meters

One execution per cancellation handled, plus the bucket writes the flow makes. The queued follow-up is a second execution.