Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add swan-gtm/gtm-skills --skill call-kpi-scoringgit clone --depth 1 https://github.com/swan-gtm/gtm-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/swan-gtm/gtm-skills/call-kpi-scoring)<a href="https://agentmods.dev/skills/swan-gtm/gtm-skills/call-kpi-scoring"><img src="https://agentmods.dev/badge/skills/swan-gtm/gtm-skills/call-kpi-scoring/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/swan-gtm/gtm-skills/call-kpi-scoring"><img src="https://agentmods.dev/badge/skills/swan-gtm/gtm-skills/call-kpi-scoring.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00263 | $0.02188 |
| Opus 5 | $0.00131 | $0.01094 |
| Sonnet 5 | $0.00053 | $0.00438 |
| Haiku 4.5 | $0.00026 | $0.00219 |
Grade A, and why
call-kpi-scoring scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 64 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Use this skill after a sales call — coaching a rep, judging whether it moved the deal forward, or just getting a scorecard on how it went. Input: a call transcript, a raw audio file, or a live connection to a call-recording system — this skill has nothing to score without one of the three; an audio file needs to be transcribed with speaker separation and timestamps before some of the scoring below is possible. It classifies the call's type first, then scores nine call-quality KPIs against a target band matched to that type — always computed fresh from the source material rather than pulled from any connected system's own numbers — plus a tenth, Improvement Tips, written as narrative rather than scored.
The play
- Confirm at least one valid input exists: a transcript, an audio file, or a live connection. If it's an audio file, transcribe it first; the transcription must include speaker separation and per-turn timestamps to support the timing-dependent KPIs in step 4 — if it doesn't, treat it the same as a plain-text transcript for those KPIs. If a live connection to a call-recording/conversation-intelligence system is used, pull the raw transcript and any speaker/timing metadata from it, but always compute every KPI in this skill directly from that raw material — never adopt the connected system's own precomputed KPI values, even when it offers them, so scoring stays consistent across all three input paths.
- Resolve who's speaking before scoring anything. See
references/speaker-attribution.mdfor the fallback chain — domain/calendar metadata, then contact-list/CRM match, then a content-cue guess that must be proposed and confirmed before use. On a call with more than one person per side (two reps, or two buyer-side attendees), treat every KPI that splits time or turns between "the seller" and "the prospect" as a per-side aggregate — pool all seller-side speakers into one side and all buyer-side speakers into the other — rather than picking one representative speaker per side or scoring individuals separately. For Longest Monologue specifically, this means an uninterrupted stretch where the other side never gets a turn counts as one continuous monologue even if it passes between two speakers on the same side — measured or estimated, it's about one side holding the floor, not any one individual's turn length. - Classify the call's type from its actual content — what was discussed and how, not just its label. A calendar invite title, meeting subject line, or CRM meeting-type/stage field can be checked first as a hint, but the transcript content is the deciding signal and overrides them on conflict. Four types: Discovery, Demo/Technical, Commercial, and General (the default for a low-confidence call). If a call's content spans more than one type (e.g. opens with discovery, moves into a demo), classify it by its dominant type — whichever the content leans toward overall — rather than splitting it across two scorecards. There's no fixed rule for what counts as low-confidence-enough-for-General; use judgment, and say so explicitly when a call is a close call between two types.
- Score the nine graded KPIs using the target bands in
references/kpi-targets.md(defaults, with overrides on three of the nine for Discovery and Demo/Technical; everything else uses the default band regardless of type). Five are timing-dependent and need a diarized, timestamped transcript to compute directly: Talk-to-Listen Ratio, Question Rate, Longest Monologue, Talking Speed, Engagement Level. Without that data:- Talk-to-Listen Ratio, and Engagement Level's turn-frequency component, can still be estimated from word share and turn counts in the text alone — label these explicitly as estimates, not measured values.
- Longest Monologue can be estimated too: take the seller side's longest uninterrupted stretch by word count (see step 2 on multi-seller aggregation) and convert it to seconds using an assumed average speaking rate (150 WPM, the midpoint of the Talking Speed target band) — label this as a word-count-based estimate.
- Talking Speed and Question Rate cannot be estimated this way — Talking Speed would require assuming the very rate it's supposed to measure, and Question Rate needs a real call duration. Skip both and disclose explicitly that they're unavailable without timing data, rather than guessing. The remaining four graded KPIs — Customer Sentiment, Introduction & Agenda Set, Next Steps & Action Items, Next Meeting Scheduled — are content-judgment calls readable from any transcript regardless of timing data. Improvement Tips is not a graded KPI at all — it's the narrative output written in step 7, with nothing to score or cite against a target.
- For every graded KPI score, show the basis behind it: a direct quote for the content-judgment KPIs, a disclosed method (word share, or the longest-turn excerpt and its word-count-to-seconds conversion) for the estimated timing KPIs, and an explicit "unavailable — no timestamps" for the two that were skipped. Never present a scored value with no citation or method behind it.
- Group the nine graded KPIs into two categories before presenting a verdict: conversation-quality (Talk-to-Listen Ratio, Question Rate, Longest Monologue, Talking Speed, Engagement Level, Customer Sentiment) and forward-motion (Introduction & Agenda Set, Next Steps & Action Items, Next Meeting Scheduled). Check whether the two groups agree or diverge — a call can score well on conversation-quality and still fail to move the deal (no agreed next step, no meeting booked), or score poorly on conversation-quality while still landing real forward motion. Call out a divergence explicitly as the headline finding; don't fold it into a flat average or an "N of 10 green" tally.
- Write the Improvement Tips section grounded in what actually happened on this specific call — anchored to the divergence from step 6 and the cited lines from step 5 — rather than generic advice that could apply to any call.
- Always produce the chat/text summary. If the environment this skill runs in supports rich interactive output, also render the scorecard visually (e.g. a gauge or bar per KPI against its target band) — but don't assume or require that capability; the text summary must stand on its own.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 64 lines · 263 tokens per session scan A 2ac34d8cd1bb
call-kpi-scoring is a skill published in the GitHub repository swan-gtm/gtm-skills (150 stars, last pushed 2d ago), licensed MIT. It adds 263 tokens to every session and 2,188 once invoked, about $0.0013 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
discovery-coach
Discovery call methodology coach. Simulates a buyer while training you on SPIN Selling, Challenger Sale, and Gap Selling techniques in real time.
interview-simulator
Simulate role-specific mock interviews, score each answer, and provide concrete feedback and model responses for interview preparation.
sales-coaching
Sales coaching system — REKS diagnosis (Jacco van der Kooij / Winning by Design), MEDDICC deal reviews (Andy Whyte), JOLT for indecision, call coaching (Jon Barrows, Jason Bay), manager cadence (Kevin Dorsey), and founder-as-coach. Use when building coaching programs, 1:1s, deal reviews, call feedback, or improving…
giving-feedback
Structures effective feedback conversations using the Situation-Behaviour-Impact (SBI) model from the Center for Creative Leadership. Separates observable behavior from interpretation, anchors feedback in specific situations, and articulates concrete impact. Use when preparing difficult performance conversations…
mentoring-and-coaching
Provides a practical system for being an effective mentor and coach -- selecting mentees, building mentorship teams, setting ground rules, heading off rifts, avoiding power misuse, preparing successors, and finding daily coaching micro-moments. Use when a leader takes on a new mentee, notices a protege stalling, needs…
neuro-linguistic-programming
Applies NLP techniques for rapport-building, reframing, anchoring, and meta-model questioning in business communication. Covers representational system matching, pacing and leading, and linguistic precision tools. Use when preparing for investor pitches, improving sales close rates, navigating board disagreements…