agentsclimarketplace

Competitor research

Skill matteotitta/claude-code-marketing-quickstart/.claude/skills/competitor-research

Run deep research on a single competitor. Produces a dossier with executive summary, position + messaging, status-quo alternatives, key differentiators, pricing position, where-they-win / where-they-lose, threat assessment, and what to watch. Writes to marketing/competitors/MMYY-{competitor-slug}.md. Triggers - "competitor research", "competitive analysis", "research competitor X", "battlecard prep", "analyze [competitor name]"From its SKILL.md

Install
npx -y skills add matteotitta/claude-code-marketing-quickstart --skill competitor-research

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

5.4 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

competitor-research — Stage 1 research skill

The first skill in the article's Example 1 chain. Reads a competitor URL + name, produces a structured dossier, writes the file to marketing/competitors/MMYY-{slug}.md. Run once per competitor (3-5 competitors is typical for the first cycle). After all per-competitor files exist, run /competitor-aggregate to synthesize the canonical threat matrix.


When to use

  • Day 1 of the article's Example 1 ("foundational workflow"): you have a list of 3-5 competitors and need structured intel on each
  • Before refreshing /positioning — positioning must read from current competitor intel
  • Before writing battlecards or comparison pages
  • Quarterly refresh of any specific competitor that's made a major move (funding, launch, executive change)

When NOT to use

  • Aggregating across multiple competitors (use /competitor-aggregate after this skill produces per-competitor files)
  • Building battlecards (use /sales-enablement — different shape, sales-team-facing)
  • ICP research (use /icp-research)
  • General company background unrelated to competition (use /company-context)

How it works

  1. Inputs: competitor name + competitor URL (required). Optional: industry context, key differentiator hypothesis you want to test.
  2. Reads (optional Exa MCP for fresh web data): competitor homepage, pricing page, about page, recent blog posts, recent LinkedIn activity.
  3. Produces a 12-section dossier (matching the PulseAnalytics example at marketing/competitors/0526-competitor-a.md):
    • Executive summary (3-4 sentences)
    • Anchor + category
    • Position + messaging
    • Status-quo alternatives they position against
    • Key differentiators (claimed)
    • Pricing position
    • Where they win
    • Where they lose (your wedge)
    • Threat assessment (PRIMARY / DIRECT / STEALTH / LOW / DEFUNCT)
    • Win-loss patterns (from your deal history if available)
    • What to watch
    • Refresh cadence + owner
  4. Every claim tagged with confidence per .claude/rules/ontology.md: [VERIFIED: source, url, date], [INFERRED: from X + Y], [ESTIMATED: reasoning], [UNAVAILABLE].
  5. Writes the file to marketing/competitors/MMYY-{competitor-slug}.md. MMYY is current month+year (e.g., 0526 for May 2026).

Invoke

/competitor-research Bizible — https://bizible.com

Or open-ended:

/competitor-research analyze our top competitor — Bizible — and write the dossier

Example output (against the PulseAnalytics example seed)

See marketing/competitors/0526-competitor-a.md for a fully-populated example of what this skill produces. Notice:

  • Anchor + threat level surfaced in the executive summary
  • Claims tagged with confidence levels
  • [UNAVAILABLE] notation where real data isn't accessible to the skill (e.g., your private win-loss data)
  • Refresh cadence + owner at bottom

Dependencies

  • Reads from: marketing/positioning/positioning.md (optional — gives the skill context on what differentiation matters); marketing/icp/ICP.md (optional — informs "where they win vs. lose" framing).
  • Reads via Exa MCP (optional): competitor's website, recent news, public reviews on G2/Reddit/Trustpilot.
  • Writes to: marketing/competitors/MMYY-{slug}.md

Customization

Change the dimension count or section structure by editing this SKILL.md body. The 12-section default tracks the Genesys ontology (.claude/rules/ontology.md § competitor-intel). Add a custom dimension (e.g., "Open-source posture" if you're in a category where that matters) by appending a new section after section 8.

Where this fits in the Example 1 chain

Day 1-3: /competitor-research × N (this skill) → per-competitor files in marketing/competitors/
Day 4:   /competitor-aggregate → synthesizes per-competitor files into the canonical threat matrix
Day 5:   /icp-research → reads competitor outputs to inform ICP

After all 3 competitor files exist, run /competitor-aggregate to lock the canonical version.

Refresh cadence

Per competitor: quarterly minimum. Trigger sooner on funding, launch, or repositioning. Use the --refresh flag (when you implement it) to update an existing dossier rather than create a new file.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.