Receber por email
← Voltar para o catálogo

pipeline-review

Pipeline analysis composite. Pulls deal/meeting data from any CRM or tracking system, analyzes the pipeline over a user-defined period (weekly, fortnightly, monthly, quarterly), and produces both an executive summary and a detailed diagnostic report. Covers volume, qualification rates, source effectiveness, stage velocity, stuck deals, and actionable recommendations. Tool-agnostic — works with any

744estrelas
Atualizado há 4 meses

Ver no GitHub ↗

Como adicionar

/plugin marketplace add gooseworks-ai/goose-skills

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/pipeline-review/svg)](https://www.skillteca.com.br/skills/pipeline-review)
#ai

Skills relacionadas

Ver todas de Dados e Análise →

Alerta por categoria

Receba novas skills de Dados e Análise toda segunda

1 email curto, só com as skills novas de Dados e Análise. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Pipeline Review

Pulls deal and meeting data from whatever system the user tracks their pipeline in, analyzes it over a chosen time period, and produces a report that answers the questions a founder, sales leader, or AE actually cares about: Are we booking enough? Are they qualified? Where are deals getting stuck? What's working and what isn't?

Two output modes:

  • Executive summary: 1-page snapshot. Numbers, trends, red flags. What a founder reads over morning coffee.
  • Detailed diagnostic: Full data tables, stage-by-stage breakdown, source analysis, stuck deal list, and specific recommendations.

Both are always produced. The executive summary sits at the top of the report.

When to Auto-Load

Load this composite when:

  • User says "review my pipeline", "pipeline report", "how's our pipeline looking", "deal review"
  • User says "1:1 prep", "board meeting prep", "weekly sales review"
  • An upstream workflow (Pipeline Ops, daily BDR rhythm) triggers an end-of-period review
  • User asks about meeting quality, conversion rates, or pipeline health

Step 0: Configuration (One-Time Setup)

On first run, collect and store these preferences. Skip on subsequent runs.

Data Source Config

| Question | Options | Stored As | |----------|---------|-----------| | Where do you track your pipeline? | Salesforce / HubSpot / Pipedrive / Close / Supabase / Google Sheets / CSV / Notion / Other | crm_tool | | How do we access it? | API / Export CSV / MCP tools / Direct query | access_method | | What object represents a "deal" in your system? | Opportunity / Deal / Lead / Meeting / Custom | deal_object |

Pipeline Stage Definitions

| Question | Purpose | Stored As | |----------|---------|-----------| | What are your pipeline stages in order? | Map data to a standard funnel | pipeline_stages | | Which stage means "qualified"? | Qualification rate calculation | qualified_stage | | Which stage means "closed won"? | Win rate calculation | won_stage | | Which stage means "closed lost"? | Loss analysis | lost_stage | | What is your expected sales cycle length? (days) | Identify stuck deals | expected_cycle_days |

Example stage mapping:

pipeline_stages: [
  "Lead",
  "Meeting Booked",
  "Meeting Held",
  "Qualified (Discovery Done)",
  "Proposal Sent",
  "Negotiation",
  "Closed Won",
  "Closed Lost"
]
qualified_stage: "Qualified (Discovery Done)"
won_stage: "Closed Won"
lost_stage: "Closed Lost"
expected_cycle_days: 30

Field Mapping

Different CRMs use different field names. Map the user's fields to standard analysis fields.

| Standard Field | Purpose | Stored As | Examples | |---------------|---------|-----------|---------| | Deal name | Identification | field_deal_name | "Name", "Deal Name", "Opportunity Name" | | Company | Account grouping | field_company | "Company", "Account", "Organization" | | Stage | Funnel position | field_stage | "Stage", "Pipeline Stage", "Status" | | Owner | Rep-level analysis | field_owner | "Owner", "Assigned To", "Rep" | | Source | Channel attribution | field_source | "Lead Source", "Source", "Channel", "UTM Source" | | Created date | Period filtering | field_created_date | "Created Date", "Created At", "Date Added" | | Close date | Velocity tracking | field_close_date | "Close Date", "Expected Close", "Closed At" | | Amount | Revenue analysis | field_amount | "Amount", "Deal Value", "ARR", "MRR" | | Last activity date | Stale deal detection | field_last_activity | "Last Activity", "Last Modified", "Last Touched" | | Meeting date | Meeting analysis | field_meeting_date | "Meeting Date", "Call Date", "Demo Date" | | Qualification status | Qual rate | field_qual_status | "Qualified", "ICP Fit", "BANT Score" | | Loss reason | Loss analysis | field_loss_reason | "Loss Reason", "Closed Lost Reason", "Disqualification Reason" |

Not all fields are required. The analysis adapts to whatever data is available. Minimum viable: deal name + stage + created date.

Benchmarks (Optional)

| Question | Purpose | Stored As | |----------|---------|-----------| | What's your target meeting volume per week/month? | Compare actuals to goals | target_meetings | | What's your target qualification rate? | Flag if below target | target_qual_rate | | What's your target win rate? | Flag if below target | target_win_rate | | What's your target pipeline value? | Revenue gap analysis | target_pipeline_value |

Store config in the current working directory or wherever the user prefers.

Step 1: Pull Pipeline Data

Purpose: Extract deal/meeting data from the configured CRM for the specified time period.

Input Contract

period: {
  type: "weekly" | "fortnightly" | "monthly" | "quarterly" | "custom"
  start_date: string              # ISO date (auto-calculated from type, or user-specified)
  end_date: string                # ISO date (default: today)
  comparison_period: boolean      # Include prior period for trend comparison (default: true)
}
crm_tool: string                  # From config
access_method: string             # From config
field_mapping: { ... }            # From config

Process

Based on crm_tool and access_method:

| CRM | Access Method | How to Pull | |-----|--------------|-------------| | Salesforce | API / CSV export | SOQL query or user uploads CSV export | | HubSpot | API / CSV export | Deals API or user uploads CSV export | | Pipedrive | API / CSV export | Deals API or user uploads CSV export | | Close | API / CSV export | Leads/Opportunities API or CSV | | Supabase | Direct query | Query deals/outreach_log tables | | Google Sheets | Sheets API / CSV | Read sheet or user exports CSV | | Notion | Notion MCP | Query database | | CSV | File read | User provides file path |

Pull two datasets:

  1. Current period: All deals created or active within the specified date range
  2. Comparison period: Same-length prior period (e.g., if reviewing last 2 weeks, also pull the 2 weeks before that)

Data Standardization

Regardless of source, normalize all data into a standard structure:

deals: [
  {
    id: string
    name: string
    company: string
    stage: string                   # Mapped to pipeline_stages
    owner: string | null
    source: string | null           # Lead source / channel
    created_date: string            # ISO date
    close_date: string | null       # ISO date
    last_activity_date: string | null
    meeting_date: string | null
    amount: number | null
    qualification_status: string | null
    loss_reason: string | null
    days_in_current_stage: integer  # Calculated
    total_age_days: integer         # Calculated from created_date
  }
]

Output Contract

pipeline_data: {
  current_period: {
    start_date: string
    end_date: string
    deals: [...]                    # Standardized deal records
    deal_count: integer
  }
  comparison_period: {
    start_date: string
    end_date: string
    deals: [...]
    deal_count: integer
  } | null
}

Human Checkpoint

## Data Pulled

Source: [CRM name]
Current period: [start] to [end] — X deals
Comparison period: [start] to [end] — Y deals
Fields available: [list of mapped fields]
Fields missing: [any unmapped fields — analysis will adapt]

Data looks correct? (Y/n)

Step 2: Analyze Pipeline

Purpose: Run the full analysis across seven dimensions. Pure computation + LLM reasoning — inherently tool-agnostic.

Input Contract

pipeline_data: { ... }               # From Step 1
pipeline_stages: string[]            # From config
qualified_stage: string              # From config
won_stage: string                    # From config
lost_stage: string                   # From config
expected_cycle_days: integer         # From config
benchmarks: { ... } | null           # From config (optional)

Analysis Dimensions

Run all seven analyses on the current p

Compartilhar X LinkedIn