Systems Lab

Agent skill

fivos-lead-scoring

Use this skill to qualify and tier a list of accounts or contacts.

dormantSelf-containedActs undeclared923 words

Filed under Prospecting and list building.

From fivosaresti/workflows-outbound-skills · 10 skills · 1 · pushed 2026-04-21

What it does when it runs

Use this skill to qualify and tier a list of accounts or contacts. Runs a 10-row sample first with per-row reasoning so the engineer can audit accuracy before committing to a full run. Trigger when the user says 'score these accounts', 'qualify the list', 'run qualification', 'tier the leads', or after fivos-account-enrichment / fivos-contact-enrichment.

Read from the skill and the 0 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 does act, so it runs under whatever permissions your session already grants.
Actions present in the files
writes files

Ask about fivos-lead-scoring

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/fivosaresti/workflows-outbound-skills.git /tmp/workflows-outbound-skills
git -C /tmp/workflows-outbound-skills sparse-checkout set "lead-scoring"
mkdir -p ~/.claude/skills/fivos-lead-scoring
cp -R "/tmp/workflows-outbound-skills/lead-scoring/." ~/.claude/skills/fivos-lead-scoring/

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 ↗

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 fivosaresti/workflows-outbound-skills/blob/9076ebf601c5fd71b9898101205cdb4efa6e01e9/lead-scoring/SKILL.md, which is licensed MIT (repository). 923 words, 17 headings.

Fivos Lead Scoring

Qualification + tiering for accounts and contacts. Broad-then-narrow: source wide, filter down with a prompt. Scoring runs in-session through Claude itself - no external model needed today.

How scoring runs (today)

  • Claude reads the input CSV row-by-row (using the Read tool on a sample, then processing batches).
  • For each row, Claude applies the validated qualification prompt and outputs a structured decision: {tier, score, reasoning}.
  • Claude writes the scored CSV back to disk using Write/Edit.
  • No external model wiring required. First-class, not a fallback.

If you have a dedicated local qualification model (via an MCP or API), this skill's Step 2 and Step 5 can be swapped to call it. The rest of the flow - sample, audit, two gates - stays identical.

Hard rules

  • Two approval gates per the TAM Mapping and Contact Sourcing Plan - 2026:
    • Gate 1: engineer approves / revises the qualification prompt after seeing 10-row sample results.
    • Gate 2: re-estimate full-run cost with the validated prompt, manager approval before scaling.
  • Every scored row carries reasoning. Store tier, score, reasoning triples for audit - not bare tiers.
  • Re-scoring uses this same skill. Never write custom scoring scripts outside this skill. If criteria change mid-campaign, re-invoke.

Inputs

  • CSV to score - account CSV (from fivos-account-enrichment), contact CSV, or both.
  • Qualification prompt - engineer-provided. If missing, the skill suggests one from the template below.
  • ICP matrix - from fivos-icp-segmentation. Gives signal weights and tier thresholds.
  • Tier thresholds (optional) - override the default A/B/C cutoffs if the client has specific definitions.

Outputs

  1. Scored CSV with columns appended: tier, score, reasoning, scored_at, scorer_version.
  2. Tier distribution report (counts of A/B/C/DQ, top disqualification reasons).
  3. Audit trail: the prompt used, the gate approvals received.

Prompt template

If the engineer didn't provide a prompt, start here and fill in the bracketed sections from the ICP:

You are qualifying <client>'s outbound list. The ICP is:

- Industry: <industry>
- Size: <headcount_range>
- Signals that raise fit: <list from ICP signal library>
- Known disqualifiers: <list>

For each row you receive, decide tier A/B/C:
- A = strong ICP fit + at least one high-weight signal firing.
- B = ICP fit, no strong signal, or signal firing on a weaker-fit account.
- C = tangential fit. Keep only if volume is needed.
- DQ = disqualify (wrong geo, wrong industry, sanctioned, bankrupt, etc.).

Return JSON per row: {"tier": "A"|"B"|"C"|"DQ", "score": 0-100, "reasoning": "<2-3 sentences>"}.

Always show the engineer the fully-rendered prompt before running.

Workflow

Step 1 - Prompt assembly

Render the template with the ICP doc's values. Show the rendered prompt to the engineer for a quick read.

Step 2 - 10-row sample (in-session, Claude-driven)

Read the first 10 rows of the input CSV. For each row, apply the prompt and produce the structured output. Present results inline:

Row 1: Acme Corp (domain: acme.com)
  Tier: A
  Score: 87
  Reasoning: Strong industry fit; Series B within 45 days (high-weight signal);
  headcount in target band; no disqualifiers.

Row 2: Globex (domain: globex.io)
  Tier: DQ
  Score: 10
  Reasoning: Wrong industry (consumer retail); also HQ in sanctioned region.

...

Step 3 - Gate 1 (prompt validation)

Ask the engineer:

10-row sample complete.

Distribution: A=X, B=X, C=X, DQ=X

Audit the reasoning. Do any look wrong?

Options:
  [approve] - proceed to Gate 2
  [revise]  - edit prompt and re-run sample
  [abort]   - stop, do not score

Iterate on the prompt until the engineer signs off. Common revisions: tightening a disqualifier, re-weighting a signal, adding a geo exclusion, adding an industry keyword.

Step 4 - Gate 2 (full-run approval)

Once the prompt is validated, present the full-run plan:

Full qualification plan - <client> / <campaign>

Rows to score: N
Scorer: Claude (in-session)
Estimated time: ~M minutes (typical: 2-4 seconds/row in batched reads)

Manager approval required to proceed.

Step 5 - Full run

Read the CSV in batches (50-200 rows per batch depending on row width), apply the prompt per row, append the scoring columns, write the result to <input>_scored.csv.

scorer_version: "claude-<model>-<date>"  # e.g. claude-opus-4-7-2026-04-22

Step 6 - Distribution + anomaly report

Qualification complete - <client> / <campaign>

Total scored: N
Distribution:
  - A: X (X%)
  - B: Y (Y%)
  - C: Z (Z%)
  - DQ: W (W%)

Top disqualification reasons:
  1. <reason> (X rows)
  2. <reason> (Y rows)
  3. ...

Flags:
  - Unexpectedly high DQ rate (>25%) - review prompt tightness.
  - Tier-A concentration in one industry - possibly over-indexed.

Step 7 - Handoff

Hand the scored CSV to fivos-copywriter. Tier drives copy depth: A = deep personalisation, B = signal-triggered, C = pattern-only.

Cutover to a dedicated qualification model

If you wire a local or API-hosted qualification model:

  1. Replace Step 2 + Step 5 with calls to that model.
  2. Update scorer_version in the output CSV to reflect the model.
  3. Everything else (sample → Gate 1 → Gate 2 → full run → report) stays the same.

No structural change to this skill is needed beyond swapping the two step bodies.

Re-scoring

If prompt criteria change mid-campaign (new disqualifier, re-weighting), re-run this skill on the existing CSV. Always bump scorer_version and scored_at so downstream analytics can see the change.

References

  • ~/.agents/skills/gtm-meta-skill/writing-outreach.md - scoring rubric examples, prompt patterns.
  • ~/.agents/skills/gtm-meta-skill/prompts.json - qualification prompt templates.
  • TAM Mapping and Contact Sourcing Plan - 2026 (Google Doc).

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 fivos-lead-scoring 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.