icp-scoring
Skill1 starsChanged 47 days agoMITView on GitHub
Score a list of target accounts against an ICP using a fit gate and weighted buying signals, then band them A Hot / B Warm / C Nurture / D Monitor with a recommended action and the reasons behind every score. Accepts a pasted list, a CSV, or a spreadsheet export. Use when the user asks to score accounts, prioritise a target list, rank prospects, qualify leads against the ICP, tier accounts, or apply ICP or signal scoring.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- erickdronski/gtm-skillstheir own version, first seen Oct 16, 2026
- 30XCOMPANY/30x-ai-native-gtm-startertheir own version, first seen Oct 15, 2026
- KarlRaf/gtm-starter-kittheir own version, first seen Apr 3, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- KarlRaf/gtm-starter-kit★ 213same name
- 30XCOMPANY/30x-ai-native-gtm-starter★ 1same name
- erickdronski/gtm-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- ad-description-makerSkill
- ad-headline-makerSkill
- b2b-ad-creativeSkill
- cold-outreachSkill
- deep-ad-researchSkill
- gtm-contextSkill
- jtbd-researchSkill
- linkedin-connection-analysisSkill
- linkedin-post-distillSkill
- normalise-outreach-namesSkill
- positioning-messagingSkill
- tech-stack-prospectsSkill
The file
We split this skill into the rules it gives an agent
8 rules. 0 are common, 5 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
5
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 18
Check for .agents/product-marketing.md, then .claude/product-marketing.md.
- Distinctive: line 19
If it exists, read the ICP section: target company type, size, geography, buyer roles, disqualifiers, and any buying signals already listed.
- Very specific: line 20
If it does not exist, also check for an ICP file in the project (for example icp.md).
- Distinctive: line 39
Score and band: Add up points, apply the gate, assign the band, and write the reason.
- Distinctive: line 52
Only count signals from the last 90 days.
- Distinctive: line 53
Do not invent signals. Mark anything you cannot verify, and do not score it.
- Very specific: line 82
If the user supplied a CSV, offer to save [original-name]-scored.csv next to it with added columns: icp_fit, fit_reason, signals, points, …
- Distinctive: line 97
If scoring shows the ICP needs sharpening (for example a new disqualifier, or a signal that keeps predicting fit), suggest the edit to the …
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
ICP account scoring
Score accounts so the user knows where to focus, and show the working so they can trust or challenge every score.
Arguments passed: $ARGUMENTS
Before you start
- Check for
.agents/product-marketing.md, then.claude/product-marketing.md. This is the shared GTM context file written by thegtm-contextskill. - If it exists, read the ICP section: target company type, size, geography, buyer roles, disqualifiers, and any buying signals already listed. Only ask for what is missing.
- If it does not exist, also check for an ICP file in the project (for example
icp.md). If there is still nothing, suggest runninggtm-context, but do not block. Ask up to five questions and flag your assumptions in the output:- Who is a fit (industry, size, geography, business model)?
- Who is never a fit?
- Who is the buyer, by role?
- What events suggest an account is ready to buy now?
- Where is the account list (paste, CSV path, or spreadsheet)?
Inputs needed:
- The ICP definition (who is a fit, who is not)
- The list of accounts to score
- Optionally, which signals count as High, Medium, or Low for this ICP
Workflow
- Load the list. Accept pasted names, a CSV, or a spreadsheet export. Find the company name and domain columns; if they are unclear, show the headers and ask which to use. Deduplicate by domain (or by normalised name when there is no domain). Report the count loaded, duplicates removed, and rows skipped for missing data.
- Confirm the rubric. Write out the fit criteria and the signal list with weights. If signal weights are not defined in the context file, propose a High/Medium/Low list for this ICP (see
references/scoring-rubric.mdfor a starter library) and confirm it before scoring. Once confirmed, keep it fixed for the whole list. - Check scope. For more than 50 accounts, say how many web lookups this needs and offer to score a sample of 10 first. Ask before using any paid enrichment tool.
- Apply the fit gate. Mark each account Fit, Not a fit, or Unclear against the criteria, with one line on why.
- Find signals. Research each Fit or Unclear account for signals from the last 90 days. Record the date and source URL for each.
- Score and band. Add up points, apply the gate, assign the band, and write the reason.
- Deliver the table, the rubric used, and a short summary. Offer a CSV version.
Scoring rules
- Each signal scores points: High = 10, Medium = 5, Low = 2.
- Count each distinct signal once. Two articles about the same funding round are one signal.
- Fit gate: if the account is not a fit for the ICP, the final band is "D. Monitor" regardless of points. Unclear fit is scored normally but flagged for review.
- Bands:
- A. Hot: 20+ points
- B. Warm: 10 to 19 points
- C. Nurture: 4 to 9 points
- D. Monitor: under 4 points, or not a fit
- Only count signals from the last 90 days. Cite a source for each.
- Do not invent signals. Mark anything you cannot verify, and do not score it.
What each band means
- A. Hot: personalised outreach, events, demos
- B. Warm: targeted campaigns plus selective direct outreach
- C. Nurture: nurture with content, monitor for stronger signals
- D. Monitor: monitor only
Output format
1. Scoring key (so anyone can check the maths)
| Signal | Weight | Points |
| Raised a funding round | High | 10 |
| ... | ... | ... |
Plus the fit criteria, the 90-day window with its start and end dates, and any assumptions.
2. Scored accounts, sorted by score, highest first:
| Account | ICP fit | Signals found (date, source) | Points | Band | Why this band | Recommended action |
"Why this band" is one plain sentence, for example: "Fit; hiring a Head of Growth (High, 10) plus new pricing page (Medium, 5) = 15, so Warm."
3. Summary: count per band, the top three accounts to act on this week, accounts flagged Unclear or unverified, and any ICP gaps the list exposed (for example many near-misses on company size).
If the user supplied a CSV, offer to save [original-name]-scored.csv next to it with added columns: icp_fit, fit_reason, signals, points, band, band_reason, action.
Quality checklist
- Context file checked; assumptions listed if it was missing
- Rubric shown and confirmed before scoring
- Duplicates removed and the count reported
- Every signal has a date inside the 90-day window and a source
- Not-a-fit accounts are band D whatever their points
- Every account has a one-line reason for its band
- Points add up correctly for every row
- Unverified items are flagged and not scored
Writing back to the context file
If scoring shows the ICP needs sharpening (for example a new disqualifier, or a signal that keeps predicting fit), suggest the edit to the context file's ICP section and ask before writing. Never change it silently.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

