Skip to main content

A Play is a pattern with an outcome.

You decide what happens once. Bryn delivers it every time the pattern shows up, without waiting on you.

pricing comparison repeat (7d)

The name reads left to right: the behavior, then the window it happens in. Your decisions ride along, which destinations, which guardrails. Author it once, approve it once. Bryn carries it from there.

Named by their parts, ready to run

Five Plays ship with the product today, each named by its trigger, window, and destinations. Every run ends in a record you can replay.

P02 expansion

docs integrations invite-teammate

to CRM ⬩ in-app

A known account reads the docs, opens the integrations catalog, and invites a teammate. The Play files an expansion task and arms an in-app prompt for the new seat.

Example run

filed 09:41 UTC
  • triggerdocs, integrations, invite ⬩ 48h
  • accountOsier & Flint · osier.example
  • scorecomposite 71
  • routed toCRM task ⬩ in-app prompt

P03 trial-rescue

trial idle (3d) return

to Slack ⬩ landing

A trial goes quiet for three days, then the account comes back. That return visit is the moment. The Play pings the owner and personalizes the landing surface toward the unfinished setup step.

Example run

filed 16:18 UTC
  • triggeridle 3d, return visit ⬩ now
  • accountCinderfen Labs · cinderfen.example
  • scorecomposite 69
  • routed to#growth-signals ⬩ landing page

P04 seats

trial:active seat-invite ×2

to CRM ⬩ in-app

An active trial invites its second seat. That's a team forming inside the trial, the moment it starts becoming a purchase. The Play files the task and arms the upgrade prompt.

Example run

filed 11:55 UTC
  • triggerseat-invite ×2 ⬩ 24h
  • accountQuellbrook Analytics · quellbrook.example
  • scorecomposite 80
  • routed toCRM task ⬩ in-app prompt

P05 outbound

intent surge identity outbound-nudge

to Slack ⬩ sequencer

Third-party topic surge plus a resolved identity on your site, in the same window. The Play pings the owner and hands the account to your sequencer. Your outbound stays your outbound.

Example run

filed 13:07 UTC
  • triggertopic surge, identity resolved ⬩ 24h
  • accountsaltmarsh.example
  • scorecomposite 74
  • routed to#growth-signals ⬩ sequencer

trigger score output audit entry

One worked example, end to end. Every Play breaks into the same four parts, and every run files the same kind of record.

A1 ⬩ Trigger

pricing comparison repeat (7d)

The named behavior, with its window. Literal parts, not a paraphrase: three pricing visits, comparison material, repeated inside seven days.

A2 ⬩ Score

Fit 82 Intent 74 Timing 68

Three visible axes against your ICP, who you actually sell to, composite 76. The Play sets the threshold; this one fires at 70.

A3 ⬩ Output

Slack ping, CRM task, landing personalization.

Three of seven destinations for this Play. The guardrails name the channels; Bryn doesn't write anywhere else.

A4 ⬩ Audit entry

Filed at 14:02 UTC, replayable.

What it saw, why it scored that way, what it did. The entry is the work proof and the substrate Bryn learns from.

the anatomy above, as it ships

Point and click, or define it in code

Explore+

The visual builder.

Compose trigger, threshold, destinations, and guardrails from the signals Bryn already catches. Every tier includes it.

Growth+

Code and YAML.

Plays as files: versioned, reviewable, diffable. The same primitives as the builder, living in your repo.

Not ready to run one yet?

Get new Plays and release notes as they ship, by email, nothing else asked.

Run your first Play this week

Five come ready, and the sixth is the pattern only you know about.