Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Track product champions for job changes and qualify their new companies against ICP. Takes a CSV of known champions (with LinkedIn URLs), creates a baseline snapshot via Apify enrichment, then detects when champions move to new companies. Scores new companies on a 0-4 ICP fit scale. Outputs a downloadable CSV of movers with qualification verdicts.
.claude/skills/gooseworks-ai-champion-tracker/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 10% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 12% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -29% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -20% | 0% |
Detect when product champions change jobs and qualify their new companies against ICP.
Build the initial champion list from public sources. This is done by the agent, not the script.
review-site-scraper skill to pull G2/Trustpilot reviews. Extract reviewer names + companies.linkedin-post-research skill (Apify-based) to find people who posted about the product./v1/kitchen-sink/person (name + company → profile URL) or ContactOut via Orthogonal.champions.csv with required columns.Use champion_tracker.py for ongoing tracking.
APIFY_API_TOKEN in .env (for LinkedIn profile enrichment)name, linkedin_url (required); original_company, original_title, email, source, notes (optional)Initialize baseline (first run):
bash# Dry run — see cost estimate python3 skills/champion-tracker/scripts/champion_tracker.py init -i champions.csv --dry-run # Create baseline python3 skills/champion-tracker/scripts/champion_tracker.py init -i champions.csv
Check for job changes (subsequent runs):
bash# Dry run python3 skills/champion-tracker/scripts/champion_tracker.py check --dry-run # Detect changes and output CSV python3 skills/champion-tracker/scripts/champion_tracker.py check -o changes.csv
View status:
bashpython3 skills/champion-tracker/scripts/champion_tracker.py status
| Column | Description | |--------|-------------| | champion_name | Full name | | linkedin_url | LinkedIn profile URL | | previous_company | Company at baseline | | previous_title | Title at baseline | | new_company | Current company (changed) | | new_title | Current title | | change_detected_date | Date this check was run | | position_start_date | When they started the new role | | days_since_change | Days since new position started | | icp_score | 0-4 ICP qualification score | | icp_verdict | Strong Fit / Good Fit / Possible Fit / Weak Fit | | icp_notes | Scoring breakdown | | email | Email if available | | notes | Original notes from champion CSV |
| Signal | Points | What it checks | |--------|--------|----------------| | B2B signal | 1.0 | Title contains sales/SDR/revenue/growth keywords | | Outbound motion | 1.0 | Sales leadership title (VP Sales, Head of Growth, etc.) | | Company size | 1.0 / 0.5 | SMB/mid-market = 1.0; unknown = 0.5 benefit-of-doubt | | Seniority | 1.0 | VP, Director, Head of, C-level, Founder |
Verdicts: Strong Fit (>=3) / Good Fit (>=2) / Possible Fit (>=1.5) / Weak Fit (<1.5)
--dry-run always shows cost before any API callsskills/champion-tracker/
SKILL.md # This file
scripts/
champion_tracker.py # Main CLI script
input/
champions_template.csv # Template for manual additions
snapshots/ # Created at runtime
baseline.json # Latest full snapshot
archive/ # Timestamped copies
output/ # Created at runtime
changes-YYYY-MM-DD.csv # Generated outputLinkedInEnricher from skills/lead-qualification/scripts/enrich_leads.pyrequests (Python package), APIFY_API_TOKEN (env var)Other measured skills in the registry, with their headline benchmark lift.