deal-red-flags
Reads the free-text record of a single deal - call notes, CRM fields, activity logs, email threads - and surfaces qualification red flags such as single-threaded contact, no champion, no compelling event, unverified budget or no agreed next step, each graded separately on severity and confidence with the exact quoted fragment behind it. Use it when a deal stalls, a buyer goes quiet, or a forecast is under inspection and you need to know whether the deal is real. It reviews one deal in depth rather than a pipeline export, and honestly returns Unknown when the notes are silent.
npx skills add https://github.com/mbfinotti/sales-skills --skill deal-red-flagsBefore / After Comparison
1 组Rereading call notes and CRM fields by hand, judging deal risk on gut feel, routinely missing unverified budget or a missing champion, spending close to an hour per deal with no traceable evidence.
This skill outputs a risk list on two independent axes, severity and confidence, each finding carrying a quoted fragment and the disconfirming evidence that would clear it, and honestly marking note gaps as Unknown for the next call.
Deal Red Flags
Review the written record of a single deal - call notes, opportunity-record text fields, CRM activity log entries, email threads - and surface qualification red flags with the evidence behind each one. Free-text notes are lossy, so silence in the notes is not the same as a confirmed problem.
Grade every flag on two independent axes, never collapsed into a single score:
- Severity: how much damage the risk does to this deal if it is real.
- Confidence: how the notes evidence it.
A high-severity but poorly evidenced gap is escalated differently from a low-severity but certain one. The most common and most useful verdict is Unknown - the notes say nothing either way - because it converts a note gap into a question for the next call. A structured scorecard cannot produce Unknown honestly, since its input is already structured; that asymmetry is this skill's whole reason to exist.
Hard rules, not suggestions:
- Every finding graded Verified or Assumed must quote the exact fragment of the notes it came from. A finding with no quotable evidence is by definition Unknown.
- Every flag has a specific piece of disconfirming evidence that clears it. Check for it before recording a risk, so the review is not a one-way ratchet where every deal looks doomed.
Use this, or use a sibling
Use this skill when the user has the written notes of one deal and wants its risks surfaced from the prose. Use something else when:
- The user wants a structured score against MEDDPICC criteria, criterion by criterion -
mbfinotti/sales-skills@meddpicc-scorecard. That skill scores structured answers; this one reads messy prose and reports what the prose cannot support. This skill never outputs a methodology score. - The user wants the stakeholder map built (who is the champion, economic buyer, blocker) -
mbfinotti/sales-skills@deal-champion-mapping. This skill only flags that champion evidence is missing or weak; it never names likely personas or builds the map. - The user wants a full discovery question set -
mbfinotti/sales-skills@sales-discovery-questions. This skill emits exactly one diagnostic question per gap. - The user wants the ROI or business-case narrative -
mbfinotti/sales-skills@deal-value-calc. - The user wants these same notes turned into a follow-up email -
mbfinotti/sales-skills@sales-meeting-recap. - The user has a pipeline export of many deals. That is pipeline-level work (hygiene, forecasting) and out of scope here: this skill reads the written record of one deal, deeply.
Interview
Ask before reviewing - one question per message, multiple-choice where possible. Skip anything the notes already answer.
- B2B or B2C? (B2C here means considered purchases with a real sales conversation - remodeling, financial products, high-ticket coaching - not impulse retail.)
- Rough deal size and expected cycle length? (Calibrates severity: a missing mutual action plan is severe on a six-month enterprise deal, irrelevant on a two-week transactional one.)
- What stage does the seller believe the deal is in; is it on a forecast or commit list, and by what date must the answers land - the forecast call, the stage gate, or the buyer's own event? (A committed deal raises the stakes of every gap; a gap that resolves after that date is not worth chasing at any price.)
- What period do the notes cover, and are they complete? (One call's notes cannot evidence trends; see failure modes.)
- Is the goal this deal, or the habit behind it? (Saving this cycle ranks buyer-facing asks first; fixing qualification or note hygiene promotes the record work that pays across every later deal.)
- What is the effort ceiling before the next gate - how many asks the relationship can carry, and whether a manager or exec sponsor is available? (Decides which chase and response rungs are open at all.)
- Anything the user already suspects? (Becomes a hypothesis to test against the evidence - never a conclusion to confirm.)
Intake
Accept any prose about the deal:
- Raw call notes.
- A pasted activity log.
- Opportunity-record free-text fields.
- Email or chat threads.
- Recap emails.
- Transcript excerpts.
Notes exported from any CRM or conversation-recording tool work as input - nothing in the workflow depends on which tool produced them. If your environment can read files, accept a file path or export; otherwise ask the user to paste the text.
Partial, messy, or thin notes are fine - saying what is missing is half of this skill's job. Be explicit with the user about what the review can and cannot see: it grades the notes, not the deal, so thin notes produce many Unknowns, and that is itself a finding about deal hygiene.
Workflow
- Run the Interview; then confirm the input covers everything the user has (a stray email thread often holds the only first-hand buyer quote).
- Normalize the notes into a dated timeline of events: meetings held, who attended, commitments made, dates moved. Note where the record thins out - that is evidence too.
- Extract candidate evidence: verbatim fragments that assert or disconfirm anything in the catalog. Distinguish first-hand buyer statements from the rep's own inferences and from second-hand relays - "I have it in writing from the economic buyer" outranks "my champion told me".
- Run every group of references/red-flag-catalog.md against the timeline and the evidence. Resolve every flag in every group to a state - never skip a group.
- Check each flag's disconfirming evidence before recording a risk. A flag whose clearing evidence is quoted in the notes is Cleared, not Red.
- Assign severity to every non-Cleared flag, calibrated to the deal size, cycle length, and motion from the Interview - not to a fixed table.
- Separate what is evidenced from what is merely absent. Write exactly one diagnostic question per Unknown flag (the catalog supplies one per flag), then order the Gaps by the chase order below - the rep gets one next touch, not twelve.
- Write the report in the output shape below, attaching one remediation play per Red and Amber flag from the catalog and naming the response rung that play belongs to.
- Run the Quality gate; iterate - re-grade and rewrite - until every item passes.
- If your harness has persistent memory, record the flags raised, their states, and their evidence, so the next review of the same deal can check which gaps closed. Otherwise end the report with a short carry-forward list for the user to keep.
Grading rubric
Confidence states - how the notes evidence the flag:
| State | Meaning | Evidence requirement |
|---|---|---|
| Cleared | The notes contain the flag's disconfirming evidence | Verbatim quote of what cleared it |
| Verified | A first-hand, quotable buyer statement evidences the risk | Verbatim quote from the notes |
| Assumed | Only the rep's inference, hearsay, or a second-hand relay evidences it | Verbatim quote of the inference or relay |
| Unknown | The notes are silent on this flag | None - silence is the finding |
Severity - High, Medium, or Low: the damage to this deal if the risk is real, judged against deal size and cycle length, not a fixed table. Grading a flag red/amber/green with a verified-versus-assumed confidence test is standard practice in deal inspection (documented across MEDDPICC-lineage sources); the state names above extend that vocabulary with Unknown for note review.
Deliberately left unranked: severity and confidence are a risk rubric, not a menu of competing options. Never order the two axes against each other, and never collapse them into one score - the rubric grades what the notes say, and the two rankings below then choose the work on top of its output. A later pass should leave the rubric alone.
Report grade - a presentation grouping only; both axes stay visible on every finding:
- Red: Verified risk, High severity.
- Amber: Verified risk at Medium/Low severity, or Assumed risk at High severity.
- Watch: Assumed risk at Medium/Low severity - name what would confirm or clear it.
- Gap: any Unknown - carries one diagnostic question, never a remediation play (there is nothing confirmed to remediate).
- Cleared: listed briefly with its clearing quote, so the next reviewer does not re-raise it.
Chase order: which gap earns the next touch
Grading resolves every flag in every group; chasing is the separate, smaller choice. The rep has one next touch, so a gap is only worth chasing when the answer changes what they do next - a flag that cannot move the plan is not worth chasing however severe it looks. Rank the instrument, not the flag: the same gap is cheap or expensive depending on how the rep closes it.
Effort here is rep hours, buyer goodwill spent on the ask, and calendar latency before the answer lands - never a price.
- efficiency (the default order):
desk check > one question > access ask > second data point > record repair - value:
access ask > one question > desk check > record repair > second data point - effort, most to least:
record repair > access ask > second data point > one question > desk check
| Rung | What it closes | Effort | What the answer changes |
|---|---|---|---|
| Desk check - close it from records the rep already holds: calendar, sent mail, CRM field history, attendee lists | Thread coverage, close-date pushes, seller-owned timeline, latency and attendance trends, notes thinning | Near-zero; no goodwill; the answer already sits in the rep's own records | Re-grades the evidence base itself - a thin or wrong record corrupts every other finding, so this one gates the rest |
| One question in the thread - a single diagnostic question answered by email or in the already-booked call | Decision process, budget owner's own words, the blocker's actual objection, next dated step, quantified impact | An hour of prep, one ask of goodwill, days of latency | Usually flips the forecast category and names the next meeting |
| Access ask - ask the buyer to spend their own capital: an introduction, the co-decider, the missing function, a co-owned plan | Economic buyer never met, co-decider unconsulted, champion's reach to power, requirements from one function | A week or more of latency, real goodwill, and refusable | The most of any rung - the ask is both the confirmation and the remediation, and a refusal is itself a Verified finding |
| Second data point - wait for the next reply gap, push, or attendee list | Trend flags that a two-point record cannot grade at all | Near-zero hours, but a quarter of calendar latency | Little now - the answer usually lands after the forecast call it was meant to inform |
| Record repair - backfill this deal's log, then hold notes to a gradable standard | Nothing on this deal today | A standing job | Nothing for the next call; compounds across every later review of every deal |
Deleted, not demoted: a full re-discovery call closing several gaps at once. This skill emits one question per gap, and five questions in one call reads as an interrogation - it burns exactly the goodwill the access ask needs. Route a genuine full question set to mbfinotti/sales-skills@sales-discovery-questions.
What this order starves:
- The access ask: highest value, highest effort, so it loses every efficiency round. That is the failure mode of ratio thinking here, because unmet power is what kills late-stage deals while the cheap rungs report progress. Promote it to first whenever the deal is on commit, or the next stage gate is the decision meeting: no desk check clears a veto.
- Record repair, too. Promote it when Unknowns dominate two consecutive reviews of the same deal.
Re-rank against what you already know about this deal and this rep, and say in the report which fact moved which rung:
- A forecast call inside the week promotes the access ask and makes the second data point worthless.
- A champion who replies same-day collapses the one-question rung's latency, promoting it above the desk check.
- A rep carrying thirty deals stays on the first two rungs; a rep with three can afford an access ask on each.
- An answer of "fix the habit" in the Interview promotes record repair from last to first.
- Notes covering a single call make the desk check return nothing but Unknowns - start at the one-question rung.
Response order: what to do with a confirmed flag
Applies only to Red and Amber. An Unknown has nothing confirmed to respond to; it goes back to the chase order above.
- efficiency (the default order):
trade it > work it > re-forecast it > escalate it > disqualify - value, as deals unblocked or cycle hours returned:
escalate it > trade it > work it > disqualify > re-forecast it - effort, most to least:
escalate it > work it > trade it > re-forecast it == disqualify
The tie is real: re-forecasting and disqualifying both cost near-zero rep hours, zero buyer goodwill, and one internal update. They are genuinely equal in what the rep spends and differ only in reversibility, which the value axis carries - so effort alone must not pick between them.
| Rung | What it is | Effort | What it buys
...
User Reviews (0)
Write a Review
No reviews yet
Statistics
User Rating
Rate this Skill