extruct-ai/gtm-cowork-skills · Archived

pipeline-review

Early warning system for active deals. Surfaces risks before they become lost deals: stakeholder silence, stalled next steps, competitor threats, deal velocity drops, MEDDPICC qualification gaps. Pulls signals from Attio, Gmail, Granola, and Google Calendar to produce a prioritized risk report with recommended actions. MANDATORY TRIGGERS: Use this skill whenever the user mentions "pipeline review", "deal risk", "deal health", "pipeline risk", "stale deals", "what's at risk", "deal warnings", "p…

First seen Apr 17, 2026

Installation

$ npx skills add extruct-ai/gtm-cowork-skills --skill pipeline-review

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from extruct-ai/gtm-cowork-skills.

npx skills add extruct-ai/gtm-cowork-skills

Browse all from extruct-ai/gtm-cowork-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 7
Default branch main
Open issues 0
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 7,699 B
  • docs SUMMARY.md 680 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 2 installs

SKILL.md

Pipeline Review

Surface deal risks as they emerge — before a winnable deal silently becomes a lost one.

Risk Categories

1. Engagement Risk (Stakeholder Silence)

Signals that key contacts have gone quiet:

Signal How to detect Severity
No email in 14+ days Gmail: search for threads with associated contacts, check last message date HIGH if deal is In Progress/POC
No email in 7-13 days Same as above MEDIUM
No meeting in 21+ days Granola: listmeetings + querygranola_meetings for company name HIGH if In Progress
No upcoming meeting scheduled Google Calendar: gcallistevents searching for company/contact name MEDIUM
One-sided communication Gmail: check if last 2+ emails are outbound with no reply HIGH

2. Momentum Risk (Deal Velocity)

Signals that the deal is losing speed:

Signal How to detect Severity
Stuck in stage 30+ days Attio: compare created_at or stage change date vs today HIGH
Stuck in stage 14-29 days Same MEDIUM
No deal value set Attio: value field is empty MEDIUM if past Lead stage
No associated people Attio: associated_people is empty HIGH
Next steps overdue Attio: check tasks linked to deal with past deadlines HIGH

3. Competitive Risk

Signals that competition threatens the deal:

Signal How to detect Severity
Competitor mentioned Attio: meddpicc_competition field contains named competitors MEDIUM
Build vs buy tension Attio: meddpicc_competition mentions internal build HIGH
"Do nothing" risk flagged Attio: meddpicc_competition mentions "do nothing" HIGH
Competition score 0 Attio: meddpicc_competition starts with "0/4" — unknown landscape MEDIUM (blind spot)

4. Qualification Risk (MEDDPICC Gaps)

Signals that the deal is under-qualified for its stage:

Stage Expected strong (3-4) Gap = risk if below 2
POC Pain, Metrics, Decision Criteria Any of these below 2 = HIGH
In Progress Pain, Metrics, Criteria, Competition Any below 2 = HIGH
Signal How to detect Severity
MEDDPICC score = 0 Attio: meddpicc_score is 0 or empty CRITICAL — deal is unqualified
MEDDPICC score < 40 Attio: meddpicc_score < 40 HIGH
Key dimension at 0 for stage Parse score from meddpiccmetrics, meddpiccdecisioncriteria, meddpicccompetition HIGH
No budget discussed Attio: meddpiccbudgettotal is empty AND stage is In Progress MEDIUM

5. Data Risk

Signals that you're flying blind:

Signal How to detect Severity
No Granola meetings found Granola returns empty for company name MEDIUM
No Attio notes on deal semantic-search-notes returns empty MEDIUM
No Gmail threads Gmail search returns empty HIGH — no communication trail
All three empty Combined CRITICAL — ghost deal

Workflow

Step 1: Identify Target Deals

If the user specifies deals, use those. Otherwise:

  1. Call list-records with object: "deals" and filter for active stages (POC, In Progress).
  2. Collect all deal record IDs, names, stages, and associated contacts.

Step 2: Gather Signals (Per Deal)

For each deal, run these checks in parallel where possible:

2a. Attio Deal Data

  • get-records-by-ids to pull full deal record (MEDDPICC fields, value, stage, confidence, associated people/company, created_at)
  • list-tasks filtered to the deal to check for overdue tasks
  • list-comments on the deal for recent activity

2b. Email Activity

  • gmailsearchmessages with the company name or associated contact emails
  • Check the date of the most recent message
  • Check if the last 2+ messages are outbound-only (no reply)

2c. Meeting Activity

  • querygranolameetings with company name to find recent meetings
  • gcallistevents searching for company/contact name to check for upcoming meetings

Step 3: Score Risks

For each deal, evaluate all risk categories and assign:

  • CRITICAL — Immediate action needed. Deal is at serious risk of being lost.
  • HIGH — Action needed this week. Multiple warning signs.
  • MEDIUM — Monitor closely. Early warning signs present.
  • LOW — On track. No significant risks detected.

Overall deal risk = highest individual risk found.

Count the number of HIGH+ signals to determine urgency ranking across deals.

Step 4: Generate Risk Report

Present a prioritized report, sorted by risk level (CRITICAL first):

## Pipeline Risk Report — {date}

### CRITICAL: {Deal Name}
**Stage:** {stage} | **Value:** {value} | **MEDDPICC:** {score}/100
**Days in stage:** {N}

Risk signals:
- {signal 1 with evidence}
- {signal 2 with evidence}

Recommended actions:
1. {specific action with timeline}
2. {specific action}

---

### HIGH: {Deal Name}
...

Step 5: Offer Actions

After presenting the report, offer:

  1. Re-engage a specific deal (hand off to deal-reengagement skill)
  2. Score a call for a deal that needs MEDDPICC update (hand off to meddpicc-post-call skill)
  3. Prep for a meeting with an at-risk account (hand off to meeting-prep skill)
  4. Draft a follow-up email to break silence (hand off to meeting-followup skill)
  5. Create tasks in Attio for the recommended actions

Attio MCP Tool Reference

Task Tool Key parameters
List active deals list-records object: "deals", filter by stage
Get deal details get-records-by-ids object: "deals", record_ids
Check MEDDPICC fields Already in deal record Parse from attributes
List deal tasks list-tasks filter by linked deal
List deal comments list-comments parentobject: "deals", parentrecord_id
Search notes semantic-search-notes query with company name

Gmail MCP Tool Reference

Task Tool
Search for threads gmailsearchmessages (query with company/contact)
Read thread content gmailreadthread (thread_id)

Granola MCP Tool Reference

Task Tool
Find meetings querygranolameetings (query with company name)
List recent meetings list_meetings

Google Calendar MCP Tool Reference

Task Tool
Check upcoming meetings gcallistevents (search for company/contact)

Environment

Variable Source Purpose
Attio MCP (Attio connector) CRM — deals, MEDDPICC, tasks, notes
Granola MCP (Granola connector) Meeting history
Gmail MCP (Gmail connector) Email engagement signals
Google Calendar MCP (Google Calendar connector) Upcoming meeting check