---
name: gong-deal-risks-from-calls
description: "Every Friday: open deals whose Gong calls this week raised pricing pushback, a competitor or no next step, each with the call to review. Use when the user asks for this, or when it runs on a schedule."
---

# Gong deal risks from this week's calls

Every Friday: open deals whose Gong calls this week raised pricing pushback, a competitor or no next step, each with the call to review.

Gong records every call, and the risk is usually said out loud: "we're also looking at Rival A", "that's above our budget", "let me get back to you". The trouble is that nobody listens to forty calls before the Friday forecast, so those lines surface after the deal slips.

This skill goes through the week's calls, matches each to its open opportunity, and keeps only the deals where a call raised a real risk: pricing pushback, a competitor, legal or security blockers, or a call that ended without a next step. Each comes with a short quote and the call to open. Then it asks what to do about them.

## Two ways to get the data

Use the API or MCP route when you have an MCP server, a CLI or an API token for the app. Otherwise, if you can drive a browser the user is signed in to (Claude in Chrome, a Playwright or Chrome DevTools MCP server), use the browser route. Say which one you used.

## Route A: API or MCP server

### What you need

- A Gong API access key and secret from a technical admin, with `api:calls:read:extensive` and `api:calls:read:transcript`, in `GONG_ACCESS_KEY` and `GONG_ACCESS_KEY_SECRET` with `GONG_BASE_URL`, used as basic auth; and Gong connected to your CRM so calls carry opportunities.
- Or Gong's MCP server, which a Gong tech admin enables for Claude, ChatGPT or Copilot; it is read-only, and its `ask_account`, `ask_deal` and `generate_brief` tools answer about one account or deal at a time.

If something is missing, say what and stop; do not invent numbers.

### Steps

1. **List this week's calls with CRM context** (Gong): `POST /v2/calls/extensive` with `filter.fromDateTime` (Monday 00:00) and `toDateTime` (now), and `contentSelector: { context: "Extended", exposedFields: { parties: true, content: { brief: true, keyPoints: true, highlights: true, trackers: true, callOutcome: true } } }`. Follow `records.cursor` to page.
2. **Match calls to open deals**: From `calls[].context[].objects[]`, take the `Opportunity` object with its `Name`, `StageName`, `Amount` and `CloseDate` fields. Skip calls with no opportunity or a closed one, and group calls by deal.
3. **Look for risk signals**: Read trackers your admin set up (competitors, pricing, budget, legal), the brief and key points, and the call outcome. Count as risk: pricing or budget pushback, a competitor named by the prospect, a blocker (security review, legal, champion leaving), or no next step agreed.
4. **Confirm with the transcript** (Gong): Where the summary is unclear, `POST /v2/calls/transcript` with the `callIds` and quote one sentence from the prospect, matched to the speaker through `parties`. Keep quotes short.
5. **Ask what to do**: Post an action card: deal, amount, stage, the risk in one line, and the call title and day. Ask whether to draft a recovery plan for each owner.

## Route B: the browser

### What you need

- Signed in to Gong with a user who can view the team's calls and the Deals board, in a workspace with the CRM integration on so calls carry deals.

If something is missing, say what and stop; do not invent numbers.

### Steps

Start at https://app.gong.io/. The user is signed in already; never type passwords or codes, and ask if a sign-in page appears.

1. **List this week's calls**: Open **Conversations** in the left navigation and set the date filter to this week, Monday to today; filter by team if the list is long. Each row shows the call title, date, account and the deal it is linked to. Skip calls with no deal or a closed one.
2. **Read the call summary**: Open each call and read the **Highlights** panel: the call brief, key points, next steps and the trackers that fired (competitors, pricing, legal, security). Note pricing or budget pushback, a competitor the prospect named, a blocker, or no agreed next step.
3. **Confirm with the transcript**: Where the summary is vague, open the **Transcript** tab, search it for the competitor name, "budget" or "price", and copy one short sentence said by the prospect, not the rep.
4. **Check the deal**: Follow the deal link to the **Deals** board for amount, stage and close date, and any warnings Gong already shows on it. Group several calls on one deal into one line.
5. **Ask what to do**: List each deal at risk with amount, stage, the risk in one line, the quote and the call title and day, and ask whether to draft a recovery plan for each owner.

Note: Forty calls is a long session in a browser; for a large team, start from the Deals board's warnings (no next step, competitor mentioned) and open only those calls. Gong's call page also has an Ask Anything box that answers questions about one call. Labels vary by workspace settings and permissions.

## The report

- **Deals at risk**: name, amount, stage and close date.
- **The risk** in one line, with a short quote from the prospect.
- **The call** to review, with its date.
- The ask: whether to draft a recovery plan for each owner.

## Post it to Briefkin

When `BRIEFKIN_TOKEN` is set, or `~/.config/briefkin/env` exists (the installer from https://briefkin.dev/docs writes it), also send the result to the user's Briefkin board as one card. Keep the `item_key` the same on every run so the card updates in place, use a new `event_id` per run, and put today's real numbers in place of the example ones. If the request fails, say so once and carry on.

```bash
[ -n "${BRIEFKIN_TOKEN:-}" ] || . ~/.config/briefkin/env
curl -sS -X POST "${BRIEFKIN_URL:-https://briefkin.dev}/v1/events" \
  -H "authorization: Bearer $BRIEFKIN_TOKEN" \
  -H "content-type: application/json" \
  -d @- <<'JSON'
{
  "v": 1,
  "event_id": "gong-deal-risks-from-calls/<date of this run, e.g. 2026-10-16>",
  "item_key": "gong-deal-risks-from-calls",
  "project": "Acme",
  "source": "Gong deal risks from this week's calls skill",
  "kind": "action",
  "title": "3 deals raised risks on calls this week",
  "summary": "**3 open deals worth $348,000** had calls this week that raised a risk. Northwind's buyer said Rival A came in **20% lower**.",
  "action": {
    "request": "Want a short recovery plan for each owner, with the next step to propose on their next call?",
    "options": [
      "Draft all 3",
      "Only Northwind",
      "Send me the calls",
      "No action"
    ]
  },
  "widget": {
    "type": "Table",
    "props": {
      "columns": [
        "Deal",
        "Amount",
        "Risk",
        "Call"
      ],
      "align": [
        "left",
        "right",
        "left",
        "left"
      ],
      "rows": [
        [
          "Northwind - Enterprise",
          "$180,000",
          "Competitor: Rival A quoted 20% lower",
          "Tue, pricing review"
        ],
        [
          "Globex - Expansion",
          "$96,000",
          "No next step; champion leaves in December",
          "Wed, quarterly review"
        ],
        [
          "Initech - 400 seats",
          "$72,000",
          "Security review not started, legal absent",
          "Thu, technical deep dive"
        ]
      ]
    }
  }
}
JSON
```

Widgets come from the Briefkin catalog (https://briefkin.dev/v1/catalog). Without a token, just give the user the report.

## Run it on a schedule

Suggested: Fridays at 14:00 (`0 14 * * 5`). From cron, with the agent signed in on that machine:

```bash
0 14 * * 5 claude -p "Run the gong-deal-risks-from-calls skill"
# Codex: codex exec, Gemini CLI: gemini -p, Copilot CLI: copilot -p, OpenCode: opencode run
```

Or use the agent's own scheduler (Claude Code routines, Codex automations, Claude or ChatGPT scheduled tasks): https://briefkin.dev/skills/gong-deal-risks-from-calls#schedule

Source: https://briefkin.dev/skills/gong-deal-risks-from-calls
