Systems Lab

Agent skill

negotiation-pipeline-check

Sweeps a deal/pipeline export for deals in negotiation with no paper process started, no named approver on a discount, no credible close date, or no named signature path.

activeSelf-containedInstructions only751 words

Filed under Calls, demos and discovery.

From zime-ai/zime-gtm-skills · 41 skills · 14 · pushed 2026-08-26

What it does when it runs

Sweeps a deal/pipeline export for deals in negotiation with no paper process started, no named approver on a discount, no credible close date, or no named signature path. Use when reviewing forecast-stage negotiation deals for whether they have a real mechanical path to signature, not just a stated intent to close.

Read from the skill and the 3 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
None found.
Hosts it reaches
No third-party host appears in the skill or its bundled files.
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about negotiation-pipeline-check

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/zime-ai/zime-gtm-skills.git /tmp/zime-gtm-skills
git -C /tmp/zime-gtm-skills sparse-checkout set "skills/negotiation-pipeline-check"
mkdir -p ~/.claude/skills/negotiation-pipeline-check
cp -R "/tmp/zime-gtm-skills/skills/negotiation-pipeline-check/." ~/.claude/skills/negotiation-pipeline-check/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

Or take the whole library

This repo ships a .claude-plugin manifest, so Claude Code can install all 41 skills at once. Plugin skills are invoked as /<plugin>:<skill>, so they never collide with your own.

/plugin marketplace add zime-ai/zime-gtm-skills
/plugin

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Reproduced in full from zime-ai/zime-gtm-skills/blob/4f134175badd08302f070c77449822c48403eeb1/skills/negotiation-pipeline-check/SKILL.md, which is licensed MIT (skill frontmatter). 751 words, 12 headings.

Negotiation Pipeline Check

You are a pipeline-hygiene auditor. Sweep a deal export for deals sitting in negotiation with no mechanical path to a signature — no paper started, no approver on a discount, no credible close date, no mutual close plan, no named signer. This never reads a call transcript; negotiation-closing audits the negotiation conversation for tactics and concessions, this skill only asks whether the forecast rows in negotiation stage have the structural pieces a deal needs to actually close.

Before you start

  • If .agents/gtm-context.md (or .claude/gtm-context.md) exists, read it first and don't ask for anything it already answers.
  • Run this end to end in one pass — don't stop to ask which stage label to match or what counts as a stale close date; apply the defaults in references/rubric.md, decide, and note the assumption once.
  • If the in-scope filter returns zero negotiation-stage rows, say so plainly and stop rather than forcing a check onto rows that don't exist.

When to use this

  • RevOps or a manager reviewing the negotiation-stage forecast for deals that are "verbally close" but have no paper, approver, or close-date discipline behind them.
  • A rep or manager sanity-checking their own negotiation-stage deals before a forecast call.
  • Spotting discount requests moving without an approver before they reach legal/finance.

Step 1: Choose an input source

CSV mode (default) — read the .csv file the user points at directly.

Connector mode — if this conversation has a tool that can list opportunities/deals, use it instead and treat the returned rows exactly like CSV rows. If both are available, ask the user which to use; otherwise proceed on whichever exists without asking.

There is no transcript mode in this skill.

Step 2: Column detection

Match headers case-insensitively, ignoring _/-/space differences. Accept the synonyms listed in references/rubric.md. If a column a check needs is absent, that check reports Unknown (column missing) for every row — state this once, up front, and never infer a missing column's value from another column.

Step 3: Filter to negotiation stage

Keep rows whose stage column fuzzy-matches "negotiation" (e.g. negotiation, negotiating, contract, legal review — see references/rubric.md for the exact match list). Report how many rows were in scope out of the export's total row count.

Step 4: Run the six checks

Score every in-scope row against the six checks in references/rubric.md. Each check returns Flagged, Clean, or Unknown. Every flagged deal must cite the column name and the actual cell value that triggered the flag (e.g. close_date = 2026-01-14, approver = (empty)) — a flag with no cited cell does not ship. Check 3 (discount without approval) computes the median discount across in-scope rows from the export itself; never use a hardcoded discount ceiling.

Run the reads-well-too check from references/rubric.md first if working against the sample data: it must return at least two deals fully Clean.

Step 5: Output

One markdown table, flagged deals first, most flags first:

DealFlagsEvidenceSuggested action

Then two closing lines:

  • N of M deals in negotiation flagged
  • The single most common flag across the flagged deals.

Nothing else — no scores, no letter grades, no percentages invented from nothing.

Run this end to end in one pass. Don't stop to ask which stage label to match or what counts as a stale close date — apply the defaults in references/rubric.md, decide, and note the assumption once.

Sample data

assets/sample-pipeline-negotiation-pipeline-check.csv — a synthetic 10-row pipeline export mixing flagged and healthy negotiation-stage deals. Run the skill against it first:

claude "run negotiation-pipeline-check on skills/negotiation-pipeline-check/assets/sample-pipeline-negotiation-pipeline-check.csv"

Do not

  • Don't blend the six checks into one score or letter grade — the output is a flag list with cited evidence, not a rating.
  • Don't hardcode a discount ceiling — compute the median discount from the export itself, per check 3.
  • Don't infer a missing column's value from another column; report Unknown and move on.

Related skills

  • negotiation-closing audits the negotiation conversation itself (tactics, concessions); this skill sweeps the pipeline's negotiation-stage rows instead.
  • won-pipeline-check picks up once a deal actually closes, checking the handoff data rather than the path to signature.

What this does not do

No CRM connection, no API calls, no telemetry, no data retention beyond the current session. It reads the file(s) you point it at (or what a connector already present in the conversation returns) and nothing else.

Files bundled with it

These load only when the skill asks for them, so they cost nothing until it runs.

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what negotiation-pipeline-check does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.