Pre-send quality scorecard for any lead list. An agent skill from growthenginenowoslawski/coldoutboundskills.

MITAuto-check passedProductivity & Automation

Install List Quality Scorecard

skills CLI
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill list-quality-scorecard -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install growthenginenowoslawski/coldoutboundskills list-quality-scorecard --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/list-quality-scorecard .claude/skills/list-quality-scorecard && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
list-quality-scorecard
GitHub stars
753
Token cost
~1.6k tokens
SKILL.md length
678 words
Files
2 (incl. scripts)
Skills in repo
49
Repo updated
First seen
Licence
MIT

At a glance

Pre-send quality scorecard for any lead list. An agent skill from growthenginenowoslawski/coldoutboundskills.

  • Works in 8 steps: Email verification coverage (critical) → Duplicate email rate → Duplicate domain rate → …
  • Tasks that involve Email management
  • SKILL.md covers Why this exists, Inputs, Output and Usage, plus 9 more sections
  • Runs TypeScript scripts from its folder; calls npx

What it does

List Quality Scorecard is an agent skill from growthenginenowoslawski/coldoutboundskills. Pre-send quality scorecard for any lead list. Grades duplicate rate, title diversity, bad-title patterns, catch-all domain density, ICP fit, email verification coverage. Outputs a letter grade + action items BEFORE you send. Catches bad lists before they burn inboxes. Run after email enrichment, before Smartlead upload.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/score-list.ts`).

It sits in Productivity & Automation, covering Email management. The repository describes itself as: Open-source Claude Code skills for cold email and outbound sales. Grade campaigns, export Prospeo searches, scrape Google Maps — all from Claude Code. The licence is MIT.

When your agent uses it

  • Tasks that involve Email management

Example prompts

  • “/list-quality-scorecard”

Requirements

  • Node.js

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Email verification coverage (critical)
  2. Duplicate email rate
  3. Duplicate domain rate
  4. Title relevance
  5. Bad-title detection
  6. Catch-all domain density
  7. ICP fit
  8. Name quality

What it can do on your machine

Read from SKILL.md and the folder at commit 25c5d85. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (TypeScript), which the agent can run.

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

List Quality Scorecard loads about 1.6k tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 678 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~86
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from growthenginenowoslawski/coldoutboundskills at commit 25c5d85, republished under its MIT licence (© growthenginenowoslawski). 678 words, ~1,649 tokens.

Download SKILL.mdSave it as .claude/skills/list-quality-scorecard/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
list-quality-scorecard
description
Pre-send quality scorecard for any lead list. Grades duplicate rate, title diversity, bad-title patterns, catch-all domain density, ICP fit, email verification coverage. Outputs a letter grade + action items BEFORE you send. Catches bad lists before they burn inboxes. Run after email enrichment, before Smartlead upload.

List Quality Scorecard

A CSV of 5,000 leads is not the same as a good list of 5,000 leads. This skill grades your list across 8 dimensions BEFORE you send, catching preventable waste.

Why this exists

The three campaign failure modes cold email runners hit most:

  1. Bad list — the copy doesn't matter when you're emailing the wrong people
  2. Unverified emails — bounces burn domain reputation
  3. ICP drift — you think you're targeting VPs, but the list is mostly Managers

Each of these is catchable before you send, in 5 minutes, for free.

Inputs

A CSV with at minimum these columns:

  • email — the primary email
  • first_name, last_name
  • job_title OR title
  • company_name OR company
  • company_domain (optional, derived from email if missing)
  • company_industry (optional, used for ICP fit scoring)
  • company_headcount (optional, used for ICP fit scoring)

Output

A markdown scorecard with:

  • Letter grade (A+ to F)
  • 8 dimension scores (each 0-100)
  • Top 5 issues to fix
  • Pre-send checklist

Usage

bash
npx tsx scripts/score-list.ts --list=leads.csv --icp-file=client-profile.yaml --out=scorecard.md

Optional --icp-file lets the scorecard compare your list against your declared ICP filters (from /icp-onboarding).

The 8 dimensions

1. Email verification coverage (critical)
  • What: % of emails validated via MillionVerifier or equivalent
  • Rule: 100% of a cold list must be verified before sending. Unverified emails = bounces = dead domains.
  • Score: 100 if all verified, 0 if <50% verified
2. Duplicate email rate
  • What: % of duplicate emails in the list
  • Rule: <1% acceptable, >5% is a problem
  • Score: 100 at 0%, drops linearly
3. Duplicate domain rate
  • What: max # of leads from any single domain
  • Rule: 1-2 leads per domain ideal. 5+ suggests you're over-indexing on one company.
  • Score: 100 if avg <2 per domain, 60 if avg 2-5, 30 if >5
4. Title relevance
  • What: % of titles matching your ICP's job title list
  • Rule: Exact-match + synonym list. If 40% of your "VP Sales" list is actually "Sales Manager", you have drift.
  • Score: 100 if ≥80% match, 50 if 40-80%, 0 if <40%
5. Bad-title detection
  • What: % of titles matching known-bad patterns
  • Bad patterns: intern, assistant, coordinator, student, part-time, retired, non-English titles when targeting US
  • Rule: <2% is normal, >10% means your Prospeo filter is too loose
  • Score: 100 if <2%, drops sharply after
6. Catch-all domain density
  • What: % of emails on catch-all domains (e.g., info@, contact@, hello@)
  • Rule: <5% acceptable for B2B outbound
  • Score: 100 if <5%, 50 at 5-15%, 0 if >15%
7. ICP fit
  • What: % of leads matching your client-profile.yaml filters on industry + headcount
  • Requires: --icp-file passed
  • Rule: 80%+ match, 100 if exact
Show full SKILL.md (268 more words)Show less
8. Name quality
  • What: % with both first_name AND last_name populated AND looking human
  • Checks: Not all-caps, not fake names ("Admin", "Info"), not email-as-name
  • Rule: 95%+ acceptable
  • Score: 100 if 95%+, drops linearly

Letter grade mapping

Weighted average across 8 dimensions (verification and ICP fit weighted 2x):

AverageGradeAction
90-100A+ / AShip it
80-89BMinor fixes, then ship
70-79CFix top 3 issues first
60-69DSerious cleanup required
<60FDon't send. Rebuild the list.

Example output

=== List Quality Scorecard ===

File: leads.csv (2,147 rows)
Grade: B (84/100)

Dimensions:
1. Email verification:    100/100  (100% verified, good)
2. Duplicate emails:       95/100  (1.1% duplicates — trim before send)
3. Duplicate domains:      78/100  (avg 2.4 per domain — some over-concentration)
4. Title relevance:        82/100  (85% titles match "VP Sales" / "Head of Sales")
5. Bad-title detection:    92/100  (3% Coordinators slipped in — filter)
6. Catch-all density:      80/100  (8% catch-all — consider dropping)
7. ICP fit:                88/100  (88% match declared industry filter)
8. Name quality:           97/100  (good)

Top 5 issues to fix:
1. 23 emails are duplicates (1.1%) — deduplicate before upload
2. 64 leads are on catch-all addresses (3.0%) — drop or deprioritize
3. 64 Coordinators in the list — filter by seniority ≥ Manager
4. 147 leads cluster on 12 domains (>5 each) — cap at 3 per domain
5. 258 leads outside declared industry filter (12%) — filter by company_industry

Pre-send checklist:
[ ] Deduplicate by email
[ ] Drop catch-all if >5% (reduces bounce rate)
[ ] Filter out bad titles
[ ] Cap per-domain concentration
[ ] Re-run verifier if list shrunk >10%

When to use

  • AFTER list-building skills (/prospeo-full-export, /blitz-list-builder, /google-maps-list-builder, /disco-like)
  • AFTER email finding (/list-builder Phase 5)
  • BEFORE Smartlead upload

When NOT to use

  • On a list of <100. Sample too small for reliable stats.
  • On a fully static list (same every send). Check once, reuse.

Scripts

  • scripts/score-list.ts — the main scorecard

What to do next

If grade ≥ B: /campaign-copywriting to write the emails. Then /smartlead-campaign-upload-public to launch as DRAFT.

If grade < C: fix the top 3 issues (from scorecard output), re-run this skill until grade ≥ B. Don't upload a C-grade list — bounces and low reply rates will damage domain reputation.

Or wait: if large fixes are needed (missing email verification, 30%+ bad titles), address those BEFORE spending more on email-finding or enrichment.

  • /icp-prompt-builder — more surgical ICP fit scoring (AI per-company)
  • /icp-onboarding — produces the client-profile.yaml this skill checks against
  • /list-builder Phase 5 + MillionVerifier (/cold-email-starter-kit) — run BEFORE this skill for verification coverage

The 1% rule alignment

A list that scores below C-grade is very likely to produce reply rates below 1%, which violates the 1% rule (see /email-deliverability-audit). Catching list issues here saves you the deliverability hangover later.

© growthenginenowoslawski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in skills/list-quality-scorecard of growthenginenowoslawski/coldoutboundskills.

  • SKILL.md
  • scripts/score-list.ts

Open the folder on GitHubat commit 25c5d85

Compare with similar skills

List Quality Scorecard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

List Quality Scorecard compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
List Quality Scorecard this skillgrowthenginenowoslawski/coldoutboundskills753—~1.6kAutomated safety check: PassMIT
Garden Inboxpaperclipai/paperclip100k—~1.1kAutomated safety check: PassMIT
Continuetelegramdesktop/tdesktop33k2 repos~9.4kAutomated safety check: PassGPL-3.0
Process Inboxtelegramdesktop/tdesktop33k1 repos~5.4kAutomated safety check: PassGPL-3.0
Process InboxTDesktop-x64/tdesktop3k—~4.3kAutomated safety check: PassGPL-3.0
Career-Ops Gmail Lead Plugincareer-ops-hq/career-ops74k—~233Automated safety check: NotesMIT

Similar skills

  • Garden Inbox

    paperclipai/paperclip

    Scan a Paperclip user's Mine inbox, classify reversible archive candidates, request checkbox confirmation, and archive only accepted selections.

    100k GitHub stars~1.1k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Continue

    telegramdesktop/tdesktop

    Continue autonomous Telegram Desktop development from the shared ai-tdesktop repository.

    33k GitHub starsUsed in 2 repos~9.4k tokens
    Productivity & AutomationAuto-check passed
  • Process Inbox

    telegramdesktop/tdesktop

    Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.

    33k GitHub starsUsed in 1 repo~5.4k tokens
    Productivity & AutomationAuto-check passed
  • Process Inbox

    TDesktop-x64/tdesktop

    Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.

    3k GitHub stars~4.3k tokensUpdated 19 days ago
    Productivity & AutomationAuto-check passed
  • Career-Ops Gmail Lead Plugin

    career-ops-hq/career-ops

    Pulls job leads from a Gmail label into the career-ops pipeline, extracting job URLs from DMARC-passing emails and de-duplicating against existing leads.

    74k GitHub stars~233 tokensUpdated today
    Productivity & AutomationAuto-check: notes
  • Atomicmail

    Atomic-Mail/atomic-mail-agentic

    Read and write email through the Atomic Mail from an AI agent.

    266 GitHub starsUsed in 1 repo~2k tokens
    Productivity & AutomationAuto-check passed

More from growthenginenowoslawski/coldoutboundskills

All 49 skills in this repo
  • Email Deliverability Audit

    growthenginenowoslawski/coldoutboundskills

    Diagnostic audit for a running cold email program. An agent skill from growthenginenowoslawski/coldoutboundskills.

    753 GitHub stars~3.4k tokensUpdated 5 days ago
    Auto-check passed
  • Icp Onboarding

    growthenginenowoslawski/coldoutboundskills

    Conversational intake for cold email campaigns. An agent skill from growthenginenowoslawski/coldoutboundskills.

    753 GitHub stars~1.9k tokensUpdated 5 days ago
    Auto-check passed
  • List Builder

    growthenginenowoslawski/coldoutboundskills

    META skill — build the largest possible qualified lead list for any request, end to end.

    753 GitHub stars~4.7k tokensUpdated 5 days ago
    Auto-check: notes
  • Auto Research Public

    growthenginenowoslawski/coldoutboundskills

    Autonomous cold email campaign launcher. An agent skill from growthenginenowoslawski/coldoutboundskills.

    753 GitHub stars~2.9k tokensUpdated 5 days ago
    Auto-check passed
  • Blitz List Builder

    growthenginenowoslawski/coldoutboundskills

    Use the Blitz API to find decision-makers at specific companies when you already have a list of company domains.

    753 GitHub stars~2k tokensUpdated 5 days ago
    Auto-check passed
  • Deliverability Test Public

    growthenginenowoslawski/coldoutboundskills

    Compare reply rates, bounce rates, and positive reply rates broken down by inbox type (SMTP / Gmail / Outlook) for a Smartlead account.

    753 GitHub stars~1k tokensUpdated 5 days ago
    Auto-check passed

Questions about List Quality Scorecard

What does List Quality Scorecard do?

Pre-send quality scorecard for any lead list. An agent skill from growthenginenowoslawski/coldoutboundskills. List Quality Scorecard is an agent skill from growthenginenowoslawski/coldoutboundskills. Pre-send quality scorecard for any lead list.

When should I use List Quality Scorecard?

List Quality Scorecard fits situations like: tasks that involve Email management.

How do I install List Quality Scorecard in Claude Code?

Run `npx skills add growthenginenowoslawski/coldoutboundskills --skill list-quality-scorecard -a claude-code`. Or copy the skill folder (skills/list-quality-scorecard in growthenginenowoslawski/coldoutboundskills) into .claude/skills/list-quality-scorecard in your project. Claude Code loads it when a task matches its description.

How do I install List Quality Scorecard in Codex?

Run `npx skills add growthenginenowoslawski/coldoutboundskills --skill list-quality-scorecard -a codex`. Or copy the skill folder (skills/list-quality-scorecard in growthenginenowoslawski/coldoutboundskills) into .agents/skills/list-quality-scorecard in your project. Codex loads it when a task matches its description.

Can I use List Quality Scorecard in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add growthenginenowoslawski/coldoutboundskills --skill list-quality-scorecard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/list-quality-scorecard, .gemini/skills/list-quality-scorecard, .github/skills/list-quality-scorecard and .opencode/skills/list-quality-scorecard in your project.

What does List Quality Scorecard need to run?

Going by SKILL.md and its folder, List Quality Scorecard needs TypeScript for the scripts in its folder and the command-line tools its instructions call (npx). Our summary lists: Node.js.

Does List Quality Scorecard access the network?

SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is List Quality Scorecard safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does List Quality Scorecard use?

List Quality Scorecard is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does List Quality Scorecard use?

About 1.6k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to List Quality Scorecard?

Skills that share tags, products or a category with List Quality Scorecard: Garden Inbox (paperclipai/paperclip, 100k stars), Continue (telegramdesktop/tdesktop, 33k stars), Process Inbox (telegramdesktop/tdesktop, 33k stars) and Process Inbox (TDesktop-x64/tdesktop, 3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains List Quality Scorecard?

growthenginenowoslawski (a GitHub user) maintains it in growthenginenowoslawski/coldoutboundskills, which has 753 GitHub stars. The repository holds 49 skills in this directory. The repository was last updated on October 5, 2026.

Source: growthenginenowoslawski/coldoutboundskills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.