aaron-he-zhu/fit-scorer
Use when the user asks to "score this influencer", "rank these creators for our campaign", or "tell me which influencer is the best fit"; produces the typed STAR Suitability (S) read plus a separately labeled campaign-fit ranking without mixing campaign-specific commercial fit into the Suitability read. Not for finding new influencers — use influencer-discovery; not for sending outreach — use outreach-manager. 达人适配度评分/创作者筛选排名
npx skills add https://github.com/aaron-he-zhu/aaron-marketing-skills --skill fit-scorer
Score each shortlisted creator on the typed STAR Suitability (S) dimension, then keep campaign-specific commercial fit in a separate prioritization matrix. The Suitability read is portable and brand-independent; the commercial matrix is not a Suitability score and never enters the SQS.
Score one influencer:
Score @[handle] for [brand/campaign] and tell me if they're a good fit
Compare and rank a shortlist:
Compare and rank these influencers for [campaign]: @influencer1, @influencer2, @influencer3
influencer-discovery). Optional prior audience profiles from memory/influencer/audience-mapper/ and competitor partner benchmarks from memory/influencer/competitor-tracker/. For rostered creators, read partnership history and audience-stat provenance from memory/creators/<handle-slug>.md — the creator-registry roster record — as Partnership Potential inputs.memory/influencer/fit-scorer/YYYY-MM-DD-<topic>.md.S1–S10 explicitly Pass/Partial/Fail/Unknown/N/A with dated evidence or a gap reason.> Emit the standard shape from skill-contract.md §Handoff Summary Format.
This family needs no live integrations (Tier 1). Fit Scorer works end to end by asking the user for the inputs it scores — handles, audience targets, brand values, and any metrics they have. A connector sharpens the numbers but none is required.
~~influencer database — follower counts, audience demographics, and partnership history.~~social platform analytics — engagement rate, comment quality samples, posting cadence, growth trend.~~audience intelligence — real-vs-bot follower estimates and audience overlap with your target.memory/creators/<handle-slug>.md when the creator is rostered (creator-registry curates it); ~~CRM is an optional Tier-2 sharpener for the same history when no roster record exists.Measured YouTube inputs (free key): for YouTube candidates, python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/youtube.py" videos @handle --limit 10 supplies the engagement-authenticity inputs directly — per-video views/likes/comments against the displayed subscriber base (views-to-subs consistency, comment rate, cadence) — so those sub-scores come from Measured numbers instead of screenshots. Free YOUTUBE_API_KEY; shortlist vetting only (ToS refuses bulk-harvesting quota). See scripts/connectors/README.md.
With zero integrations, ask the user to supply each value the scoring tables request; the framework and weighting still produce a defensible ranking. See CONNECTORS.md for the free/keyless recipe per category.
The commercial comparison layouts live in references/scoring-templates.md. They are optional decision support, not the STAR Suitability rubric.
target and target version, named STAR profile/goal (awareness|engagement|conversion|brand-building), assessment_time: forecast|actual, shared campaign rollup_id, observation date, platform/tier/niche cohort, evidence window, material context object, and current STAR catalog_version — the exact typed identity the gate will reuse. If any field is absent, do not invent it: return NEEDS_INPUT, name the missing fields, and preserve the supplied identity unchanged for resume.S1–S10 (audience composition/realness, follower-growth integrity, reach reliability, engagement health and authenticity, credibility, and portable brand/category fit) from star-benchmark.md. Campaign-specific commercial terms and availability stay in the separate matrix; cost and measured campaign conversion belong to Return (R), scored later by the gate.STAR-S2 covers demonstrated follower fraud / real-follower rate below the matching tier × platform × niche benchmark; STAR-S6 covers demonstrated bought, coordinated, or pod-based engagement. Brand safety is the gate's Trust control STAR-T3, not a Suitability item. Mark an item Fail only from qualifying evidence, label it a potential gate finding, and operationally hold outreach while it stands. Do not call it a verified veto or apply the SQS cap/business verdict here; the auditor owns those decisions when it rolls up the full STAR run.S1–S10 states with source/date/type/confidence as the portable Suitability (S) read. The creator-content-auditor gate folds this read into the full STAR run and runs the deterministic scorer for the profile-weighted SQS — this skill does not run the scorer or emit the SQS. Unknown means applicable evidence is missing and prevents a Suitability read; never soften Unknown to Partial or hand-calculate a composite.commercial_fit_score; it is not a Suitability score, cannot clear a Suitability veto, and never enters the SQS.User: "Compare @ecofashionista, @greenwardrobe, @sustainablesarah for our sustainable fashion brand (goal: conversion)."
Output: Each creator receives S1–S10 item states under the same campaign rollup_id; a Suitability (S) read exists only at complete applicable coverage, while the separate commercial matrix explains campaign-specific terms and availability. A verified below-benchmark real-follower rate marks STAR-S2 Fail and holds outreach; refused access stays Unknown and prevents the read. Only creator-content-auditor may apply the later STAR business verdict/cap. Persistence is offered, not assumed.
STAR-S2/STAR-S6 veto items), and the profile-weighted SQS the gate computes.Primary: competitor-tracker — benchmark your top-scored picks against the creators competitors already work with before you commit budget.
Alternates (same scout phase):
STAR-S2/STAR-S6/STAR-T3 control evidence is ready, stop and hand it to this sole STAR gate as a separate invocation; do not auto-run or simulate its verdict.Termination note: Track a visited-set of skills invoked this session. If the recommended next skill has already run, stop and report the chain complete rather than re-invoking it. Stop after at most 3 hops (max-depth 3) and hand back to the user with the saved report path.
Take aaron-he-zhu/fit-scorer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.