From ecc
Identifies, categorises, and score-filters a competitor set for competitive benchmarking. Use when scoping who counts as a competitor before any scoring begins.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ecc:competitive-platform-analysisThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this skill to decide **who to benchmark** and **where to find them** before
Use this skill to decide who to benchmark and where to find them before any scoring begins. A competitive analysis is only as good as its frame: the wrong set makes the client look either unbeatable or doomed. The goal is a defensible, decision-relevant set — not an exhaustive census.
Before scoping the set, establish the client's positioning brief. If you don't already have it, run a short brand-discovery interview to elicit it — do not invent one and do not scope the set blind. The brief supplies:
Do not proceed without the positioning brief. A competitor list scoped without the client's lens is noise, not intelligence. The scoping consequence in particular determines which competitors are strong rivals (those that contest the client's moat) vs. merely overlapping on service menu.
For each candidate, capture these axes — they decide both inclusion and tier:
Don't sort competitors into niche-specific buckets; sort them along a few generic axes so the landscape isn't skewed toward one archetype. These axes apply to any creative-service market (design, motion, copywriting, branding, content, film, etc.). Aim for breadth across each axis first, then prune to the most instructive.
Plot each candidate on the relevant axes; a competitor is direct when it sits near the client on positioning, specialization, size, and market at once.
Group the final set into three tiers — this structure carries through to the report:
Match the source to the dimension you need. The platform types below are generic; substitute the ones native to the client's niche (e.g. Dribbble/Behance for design, showreel/Vimeo for motion, writing samples/published work for copy):
Always verify claims across at least two sources before treating a competitor attribute as fact (self-reported site copy ≠ verified outcome). Carry an adversarial-verification discipline into every profile.
A lightweight pre-filter to decide who graduates into full benchmarking. Score 1–5; keep candidates that score high on either distinctiveness or credibility — the client's strategic tension means both poles are instructive.
| Candidate | Positioning stance | Specialization | Size band | Tier | Offer overlap (1–5) | Distinctiveness (1–5) | Commercial credibility (1–5) | Craft proximity (1–5) | Include? |
|---|
Rules of thumb (apply per the client's scoping consequence in the positioning brief):
A scoped, tiered competitor set (typically 10–18 candidates → 8–12 profiled),
each tagged with its axis positions, tier, and source links, ready to hand to
benchmark-methodology.
Scenario: A boutique brand-identity studio (2-person, EU-remote, productized sprints, contrarian/manifesto-driven aesthetic) wants to scope its competitive set before benchmarking. The strategic tension from the positioning brief is memorability × hireability.
Step 1 — eight-axis population (sample candidates):
| Candidate | Positioning stance | Specialization | Size band | Engagement | Distinctiveness | Evidence model | Brand strength | Market |
|---|---|---|---|---|---|---|---|---|
| Studio A | brand-led / editorial | identity only | micro | productized | contrarian | aesthetic-led | cult | global-remote |
| Studio B | capability-led | broad DS+motion | boutique | bespoke | conventional | outcome-led | interchangeable | US |
| Agency C | capability-led | brand+digital | mid-size | retainer | conventional | outcome-led | interchangeable | EU |
| Freelancer D | brand-led | brand voice only | solo | day-rate | editorial | aesthetic-led | ownable | global |
| Studio E | brand-led | brand strategy | micro | productized | manifesto-driven | outcome-led | cult | EU-remote |
Step 2 — pre-filter scoring (client scoping consequence: weight distinctiveness because the client's moat is POV-first, not capability breadth):
| Candidate | Offer overlap (1–5) | Distinctiveness (1–5) | Commercial credibility (1–5) | Craft proximity (1–5) | Tier | Include? |
|---|---|---|---|---|---|---|
| Studio A | 5 | 5 | 3 | 5 | Direct | ✓ must-profile |
| Studio B | 3 | 2 | 5 | 3 | Adjacent | ✓ credibility anchor |
| Agency C | 2 | 1 | 5 | 2 | Aspirational | ✓ scale reference |
| Freelancer D | 4 | 4 | 2 | 4 | Direct | ✓ cautionary case |
| Studio E | 5 | 5 | 4 | 4 | Direct | ✓ must-profile |
Step 3 — output handed to benchmark-methodology:
Five candidates (3 Direct, 1 Adjacent, 1 Aspirational), each tagged with
axis positions, tier, and source links. Studio A and Studio E are the
sharpest head-to-head rivals; Freelancer D is the "memorable but
un-hireable" cautionary case to learn from.
brand-discovery — use first to establish the positioning brief and strategic tension that scopes the competitor set.benchmark-methodology — the next step; takes the tiered set and scores each competitor across nine dimensions.npx claudepluginhub affaan-m/ecc --plugin eccMaps a startup's real competitive landscape by aggregating mentions from LinkedIn, Reddit, YouTube, Twitter, YC, SEC, and web search. Use before positioning or pain-mining work.
Scores competitors across nine weighted dimensions (positioning, voice, visual craft, etc.) with explicit rubrics and a tension-plot. Use after competitive-platform-analysis, before competitive-report-structure.
Analyzes competitive landscape for your product: identifies 5 direct competitors, profiles strengths/weaknesses/pricing/GTM, maps differentiation opportunities. Use for market research or briefs.