agentleFS
matteotittamatteotitta/genesys-skills/skills/competitor-research/SKILL.md

competitor-research

Skill53 starsChanged 5 days agoMITView on GitHub

Runs a 13-dimension dossier on a B2B SaaS competitor (product, ICP, pricing, reviews, content, launches, SEO/AEO, GTM, social, paid) with confidence levels, cited sources and a data-gaps list. Use when asked for competitor analysis, a competitive landscape or X vs Y.

29 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use level, messaging and 1 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • dachi-jp3Skill

    level

    表示レベル(auto / low / medium / high)を切り替える。

    Also in 3 projects that use this

  • VercelSkill

    messaging

    Use when turning settled positioning into the lines other people will reuse: the message hierarchy, value propositions per audience, objection handling, and the proof behind each claim.

    Also in 4 projects that use this

  • ai-agents-for-agencies-coachesSkill

    brand-kit

    Establish and enforce per-client brand fidelity using the DESIGN.md standard (google-labs-code/design.md). Use whenever starting work for a client, creating any ad/landing-page/creative, or when brand colors/fonts/spacing are needed. Auto-extracts a client's visual identity into a validated DESIGN.md, keeps a central registry, and feeds the tokens into image-studio (statics), fb-ad-video-studio (video), and landing pages. Triggers: "set up brand for <client>", "make a DESIGN.md", "match the client's brand", "what are their brand colors", "new client onboarding", any creative work that must be on-brand.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

4 rules. 0 are common, 2 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 21 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    The Iron Law: no data point without source.

    line 22
  2. Distinctive:

    If competitor name is ambiguous (e.g., "Cursor", "Base", "Linear"), confirm with the user before starting.

    line 37
  3. Very specific:

    All 13 dimensions present (or marked [Not available] / [Requires premium tool] explicitly).

    line 63
  4. Distinctive:

    Use when the standard 11-dimension company profile isn't enough — typically for direct-competitor showdowns or accounts where the champion …

    line 89

“Common” is measured: kept by at least 6 in 10 of the 21 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Competitor research

Research substrate

When to run

Invoke when the user asks for: competitor analysis for X, battlecard research for X, competitive landscape for [market], compare X vs Y, what's [competitor] doing?. Do NOT invoke for: qualifying a company, product messaging only, researching the user's own company, or single-feature questions (answer directly).

Three run modes — pick by cadence and depth needed:

  • First run (~90 min) — /competitor-research [competitor]. New competitor, no existing dossier. Phases 1–3 (or 1–4 for aggregate).
  • Quick scan (~30 min, weekly) — /competitor-research --quick [competitor] or /loop 1w. Refreshes fast-moving data only (news, Clay, G2, internal sources). Updates "Recent changes" header — sections without changes stay untouched.
  • Deep refresh (~90 min, monthly) — /competitor-research --refresh [competitor] or /loop 1M. Full 13-dimension cycle with TrustPilot monitor and Phase 4 aggregate (if 2+ competitors refreshed this cycle).

Full cadence + refresh discipline → the premium reference. Visual phase map → the premium reference.

The Iron Law: no data point without source. Every claim cites a URL + access date or is marked [Not available]. Estimates need explicit confidence + reasoning. "Fast + wrong = useless."

Inputs

Required:

  • competitor name — exact company/product name (e.g., Linear, Lovable).
  • website URL — competitor's site (e.g., linear.app).

Recommended (improve quality):

  • client context — current positioning sharpens the comparative angle.
  • specific questions — focus areas (e.g., "deep dive on their pricing model and outbound motion").
  • research mode — single deep dive (default) or comparison matrix (3–6 competitors).

If competitor name is ambiguous (e.g., "Cursor", "Base", "Linear"), confirm with the user before starting. If website URL is missing, ask — don't guess.

Steps

  1. Confirm scope and disambiguate → the premium reference. Verify name + URL, select run mode, lock disambiguation.
  2. Pre-flight optional MCPs → check Clay, Granola, Google Drive, CRM, Notion availability per the premium reference ("Optional internal intel sources"). For each available, queue the corresponding queries; for each missing, skip silently.
  3. Research 13 dimensions → the premium reference. Order: Company → Product → ICP → Pricing → Reviews → Content → Launches → SEO/AEO → Technographics → Openings → GTM → LinkedIn/Social → Paid advertising. Each dimension has tool fallbacks (Ahrefs → Serper → manual; Apify → Firecrawl → manual). Frameworks + scoring → the premium reference ("Core frameworks").
  4. TrustPilot customer monitor (deep refresh only, customer-facing competitors only) → run inside Step 2.5 per the Phase 2 file. Score top 10–15 customers 🟢/🟡/🔴.
  5. Synthesize and assign confidence → the premium reference. Assign [VERIFIED]/[INFERRED]/[ESTIMATED]/[UNAVAILABLE] per claim, write 2–3-paragraph executive summary, document data gaps with follow-up actions.
  6. Aggregate analysis (only if 2+ competitors researched for same client) → the premium reference. Build threat matrix, feature parity table, credibility audit, 3–5 strategic recommendations. Save as MMYY-aggregate-insights.md in client's competitors folder.
  7. Apply attribution standard — inline (Source: X) per claim (not the verbose [VERIFIED: url, date] block); consolidate full URLs + access dates + confidence in the Sources & data quality table at the end of the document. Quality threshold: ≥50% Verified, ≤20% Estimated.
  8. Write to client folder per output template → the premium reference ("Inline canonical, v2.7" — 13 dimensions, TrustPilot sub-section, Recent changes header, Sources & data quality table). For matrix mode → the premium reference ("Compact alternative"). Search query patterns per dimension → the premium reference. Common source URL patterns → the premium reference.
  9. Self-evaluate against quality gates → the premium reference. Run completeness, evidence-quality, and guardrail checks before declaring "done".
  10. Push to Notion (Competitor Research Database) and Google Docs (client_folder/context/competitor-research/) per the push targets in frontmatter. For refresh mode, update the existing Notion page rather than creating a duplicate.
  11. Offer iteration prompts post-delivery → the premium reference. If user signals approval ("great research", quick approval), offer to save the output as a reference example under the premium reference.

What good looks like

Evaluations (binary pass/fail before declaring "done")

  • ≥3 sources per major claim (revenue, funding, team size, pricing).
  • ≥50% [VERIFIED] confidence; ≤20% [ESTIMATED].
  • Threat level set on every competitor: PRIMARY / ENTERPRISE TIER / DIRECT ICP / STEALTH WATCH / LOW / DEFUNCT.
  • Inline (Source: X) on every key data point (no verbose [VERIFIED: url, date] blocks inline).
  • Sources & data quality table at end-of-document with URLs + access dates + confidence per dimension.
  • Data-gaps section non-empty if any dimension is incomplete or [UNAVAILABLE].
  • All 13 dimensions present (or marked [Not available] / [Requires premium tool] explicitly).
  • Recent-changes header present in --quick and --refresh modes; "Last refreshed" date updated.
  • Output title is # Competitor research: [Name] exactly — no aliases like "competitive intelligence analysis" or "Competitive Intelligence Report".
  • Premium-tool limitations noted explicitly (Ahrefs absent → Serper or manual, BuiltWith absent → "Not available", JS-walled ad libraries → manual check noted).

Scheduling (recurring runs)

/loop 1w /competitor-research --quick [competitor-name] # weekly quick scan, set-and-forget
/loop 1M /competitor-research --refresh [competitor-name] # monthly deep refresh, review-and-approve

/schedule create --name "competitor-[name]-weekly" --cron "0 9 * * 1" --prompt "/competitor-research --quick [name]"
/schedule create --name "competitor-[name]-monthly" --cron "0 9 1 * *" --prompt "/competitor-research --refresh [name]"

For multiple competitors in parallel: /competitor-research --refresh --all spawns one subagent per competitor in the premium reference.

Sourced patterns — person-level competitor profiling

Standard /competitor-research profiles the company (11 dimensions covering positioning, pricing, features, content, GTM, team, funding, etc.). For deeper buyer-side intelligence, add a person-level layer that profiles the named decision-maker / champion / founder behind the competitor:

  • Founder / CEO behavioral profile. Public-content cadence (LinkedIn, X, podcast appearances), preferred narratives, hiring-page tells (what roles they're scaling), customer-conversation patterns (testimonials they highlight, objections they pre-empt). Read for positioning intent — founders telegraph strategy in public.
  • Champion persona at the buying account. Who actually drives the buy at their target accounts? Title patterns, tenure patterns, pain-point language (lifted from their case studies). This is the ICP-buyer side of the equation, not just the ICP-company side.
  • Departure / hiring signals. Recent senior departures at the competitor = signal of internal tension; recent senior hires = signal of investment lane. Both inform competitive timing.
  • Social-graph cluster. Who are they engaging with on LinkedIn? Who endorses them publicly? Builds a map of allied / adjacent companies that may be partnership or co-marketing candidates.

Use when the standard 11-dimension company profile isn't enough — typically for direct-competitor showdowns or accounts where the champion person is the deal-maker (mid-market and below).

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.