executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
renew-or-churn-callScore an account's renewal likelihood on a five-level scale with probabilities, and name the next move for the account owner. Use when asked will this account renew, what's the churn risk on this account, should we run a save play, or when a renewal is 30–120 days out and the owner needs a calibrated read rather than a gut feel. Produces the account state i…
Independent GitHub snapshot · Automated classification · Original documentation governs
Health scores drift into vibes because nobody defines the levels. This skill fixes five levels — from will churn to will renew and expand — each with the evidence that puts an account there, and returns a probability for every level. The next move is mapped to the level, so the output is an action, not a colour.
After cs-health-scorecard (which gathers the dimensions) and before renewal-playbook or cs-escalation-brief (which run the move). This one decides which move.
Ask for these if not provided; mark unknowns rather than guessing:
| Level | Evidence that puts an account here | Next move |
|---|---|---|
| 0 · will churn | Champion gone, usage collapsing, competitor selected, or procurement told us | Escalate now: exec-to-exec call, save play with a concession budget |
| 1 · at risk | Usage down, exec contact stale, open escalation or price objection | Run the renewal playbook with a 60-day save plan |
| 2 · uncertain | Mixed signals: healthy usage but no sponsor, or engaged but under-adopted | Discovery call to find the sponsor and the value gap |
| 3 · likely renew | Usage steady, sponsor engaged, no blockers, price accepted | Standard renewal motion; confirm timeline with procurement |
| 4 · renew and expand | Growing usage, seats capped, expansion asked for | Expansion proposal before the renewal paperwork |
Thresholds. Act on the mapped move when confidence ≥ 0.55 and the top level's probability ≥ 0.6. Otherwise hold and look at the shape: a 0.40 / 0.40 split between at risk and likely renew is a discovery call, not a save play — the split itself says the sponsor question is unanswered.
Getting probabilities. Any calibrated decision model that scores against ordered, described levels serves this contract; the repo ships an adapter (node integrations/jev/decide.mjs renew-or-churn-call --state state.json, contract in integrations/jev/decisions/). Without one, the assistant estimates and labels it.
State (six rows, unknown where unknown)
Score
| Level | Probability |
|---|---|
| 0 will churn | 0.xx |
| 1 at risk | 0.xx |
| 2 uncertain | 0.xx |
| 3 likely renew | 0.xx |
| 4 renew and expand | 0.xx |
Expected level: x.x · Confidence: 0.xx · Source: [model / estimate]
Verdict: [act: move] or [hold — shape says: …]
Flip signal: [the one state change that moves the level, and who would know]
Forecast line: [account] · L[n] p=0.xx · [move] · [owner] · [date]
unknown; no invented usage numbers