agentleFS
OpenLaborOpenLabor/openlabor/skills/competitor-analysis/SKILL.md

Competitor Analysis

Skill5 starsChanged 3 months agoMITView on GitHub

Research competitors — products, pricing, positioning, sentiment, and market gaps — and produce weekly intelligence reports and sales battlecards

  • Reads credentials

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

6 rules. About 0 are common, 5 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

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

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

    Run all searches below for each competitor.

    line 56
  2. Distinctive:

    Look for: what users complain about, what they praise, why they switched, what they wish the product did.

    line 94
  3. Distinctive:

    Every competitor weakness is a positioning opportunity.

    line 162
  4. Distinctive:

    Check: Are they on YouTube?

    line 187
  5. Distinctive:

    Document price jumps between tiers where value drops off.

    line 193
  6. Distinctive:

    Create one battlecard per major competitor.

    line 240

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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
<!-- openlabor-connector: search, api_key={{INTERNAL_API_KEY}}, employee={{EMPLOYEE_ID}}, base={{API_BASE_URL}} --><!-- openlabor-connector: research, api_key={{INTERNAL_API_KEY}}, employee={{EMPLOYEE_ID}}, base={{API_BASE_URL}} -->

Competitor Analysis

You are a competitive intelligence analyst. Your job is to turn public signals into strategic advantage — not to summarize what's already known, but to surface what competitors are doing, where they're weak, and where we should move.


Step 1 — Competitor Profile Setup

Define 3–5 competitors before running any searches. Fill this block first:

COMPETITOR_1:
  name: [Company Name]
  url: https://[domain]
  trustpilot: https://www.trustpilot.com/review/[domain]
  g2: https://www.g2.com/products/[slug]/reviews
  twitter: @[handle]
  linkedin: https://linkedin.com/company/[slug]
  key_product: [primary product or category]
  pricing_page: https://[domain]/pricing

COMPETITOR_2:
  name: ...
  url: ...
  ...

COMPETITOR_3: ...
COMPETITOR_4: ...
COMPETITOR_5: ...

Tier each competitor before gathering intel:

  • Direct: Same product, same ICP — fight them on every deal
  • Emerging: Gaining traction fast, not yet a direct threat
  • Declining: Losing market share or investment momentum
  • Adjacent: Different product, overlapping audience — watch for pivot

Step 2 — Multi-Source Intelligence Gathering

Run all searches below for each competitor. Replace [COMPETITOR] with the company name and [DOMAIN] with their domain.

2.1 Web — News, Product, Positioning

use search SEARCH '{"query":"[COMPETITOR] product launch announcement 2026","max_results":"10"}'
use search SEARCH '{"query":"[COMPETITOR] pricing change 2026","max_results":"10"}'
use search SEARCH '{"query":"[COMPETITOR] vs alternatives comparison site:reddit.com OR site:g2.com OR site:capterra.com","max_results":"10"}'
use search SEARCH '{"query":"[COMPETITOR] funding round OR acquisition OR partnership 2026","max_results":"5"}'
use search SEARCH '{"query":"[COMPETITOR] hiring site:linkedin.com OR site:lever.co OR site:greenhouse.io","max_results":"5"}'

2.2 Twitter/X — Real-Time Sentiment and Conversation

use research BIRD_SEARCH '{"query":"[COMPETITOR] -filter:retweets","count":20}'
use research BIRD_SEARCH '{"query":"from:[TWITTER_HANDLE]","count":20}'
use research BIRD_SEARCH '{"query":"[COMPETITOR] sucks OR disappointed OR slow OR expensive OR broken","count":20}'
use research BIRD_SEARCH '{"query":"switching from [COMPETITOR]","count":20}'

2.3 Semantic Web — Deep Pages and Positioning

use research EXA_SEARCH '{"query":"[COMPETITOR] customer case study OR success story","count":10}'
use research EXA_SEARCH '{"query":"[COMPETITOR] integration OR API OR enterprise","count":10}'
use research EXA_SEARCH '{"query":"why I left [COMPETITOR]","count":10}'
use research EXA_SEARCH '{"query":"[COMPETITOR] compared to [OUR_PRODUCT]","count":10}'

2.4 Reddit — Raw Customer Sentiment

use research REDDIT_READ '{"url":"https://reddit.com/r/SaaS/search?q=[COMPETITOR]&sort=new"}'
use research REDDIT_READ '{"url":"https://reddit.com/r/entrepreneur/search?q=[COMPETITOR]&sort=top"}'
use research REDDIT_READ '{"url":"https://reddit.com/r/[INDUSTRY_SUBREDDIT]/search?q=[COMPETITOR]&sort=top"}'

Look for: what users complain about, what they praise, why they switched, what they wish the product did.

2.5 GitHub — Open Source Activity and Dev Mindshare

use research GH_SEARCH_REPOS '{"query":"[COMPETITOR] integration"}'
use research GH_SEARCH_REPOS '{"query":"[COMPETITOR] SDK OR client OR wrapper"}'
use research GH_SEARCH_REPOS '{"query":"[COMPETITOR] alternative"}'

Dev adoption signals: repo stars, forks, issue velocity, open PRs, last commit date.

2.6 Direct Page Read — Their Own Words

use research JINA_READ '{"url":"https://[DOMAIN]"}'
use research JINA_READ '{"url":"https://[DOMAIN]/pricing"}'
use research JINA_READ '{"url":"https://[DOMAIN]/about"}'
use research JINA_READ '{"url":"https://[DOMAIN]/blog"}'
use research JINA_READ '{"url":"https://www.trustpilot.com/review/[DOMAIN]"}'

Step 3 — Competitive Scoring Matrix

Score each competitor 1–5 on each dimension after research. Use evidence, not assumptions.

Dimension[Competitor A][Competitor B][Competitor C]
Product — Feature depth/5/5/5
Product — Pricing value/5/5/5
Product — UX quality/5/5/5
Marketing — Content volume/5/5/5
Marketing — Engagement rate/5/5/5
Marketing — SEO presence/5/5/5
Sales — Positioning clarity/5/5/5
Sales — Offer strength/5/5/5
Brand — Review sentiment/5/5/5
Brand — Community presence/5/5/5
TOTAL/50/50/50

Scoring guide:

  • 5 = Best-in-class, hard to beat
  • 4 = Strong, above average
  • 3 = Adequate, nothing special
  • 2 = Weak, noticeable gaps
  • 1 = Poor, a liability for them

Step 4 — Threat Assessment

Rate each competitor after completing the matrix:

CompetitorThreat LevelRationale
[Name]Direct / Emerging / Declining / Adjacent[1-line reason based on score + trajectory]

Direct threat criteria: Score ≥35/50, same ICP, active in our deals, growing. Emerging threat criteria: Score <35 but rising fast — watch hiring, funding, GitHub velocity. Declining: Score <25 or shrinking team, negative sentiment trend, no recent launches. Adjacent: Different primary buyer but converging feature sets — watch for pivot.


Step 5 — Opportunity Identification

Every competitor weakness is a positioning opportunity. Map findings here:

Complaint → Our Strength

CompetitorTop Customer Complaint (source)Our Counter-Positioning
[Name]"[exact quote or paraphrase from review/Reddit]"[how we solve this, in 1 sentence]
[Name]......

Gap Analysis

After research, identify:

  1. Feature gaps — What do customers ask for that no competitor offers?
    use search SEARCH '{"query":"[COMPETITOR] feature request OR wishlist OR missing","max_results":"10"}'
    use research REDDIT_READ '{"url":"https://reddit.com/r/[INDUSTRY]/search?q=[COMPETITOR]+feature+request"}'
  2. Segment gaps — Which customer types are underserved?
    use research EXA_SEARCH '{"query":"[INDUSTRY] tool for [UNDERSERVED_SEGMENT]","count":10}'
  3. Channel gaps — Which marketing channels are they ignoring?
    • Check: Are they on YouTube? Running podcasts? Active in communities? Doing co-marketing?
    use research BIRD_SEARCH '{"query":"[COMPETITOR] youtube OR podcast OR community","count":10}'
  4. Price gaps — Is there a tier no one is covering well?
    • Document price jumps between tiers where value drops off.
  5. Messaging gaps — Which angles are untouched?
    • What claims does no competitor make? What proof does no one offer?

Step 6 — Weekly Intelligence Report

Generate this report every week. Fill each section with evidence from that week's research.


Competitive Intelligence Report — Week of [DATE]

Prepared by: [EMPLOYEE_ID] Competitors monitored: [List]


Key Moves This Week

CompetitorMoveSourceImpact
[Name][What they did][URL or platform]High / Medium / Low

Threats to Flag

  • [Competitor]: [Specific threat — new feature, aggressive pricing, poaching our customers, entering our channel]
  • Action required: [What we should do in response]

Opportunities Identified

  • [Gap or weakness found]: [Which competitor, what the gap is, how to exploit it]
  • Recommended move: [Concrete action — content piece, feature to prioritize, sales angle to add]

Recommended Actions

PriorityActionOwnerDeadline
P1[Specific action][CMO / SDR / PM][Date]
P2[Specific action][CMO / SDR / PM][Date]

Step 7 — Battlecard Template

Create one battlecard per major competitor. Update quarterly or after major moves.


Battlecard: [COMPETITOR NAME]

Last updated: [DATE] Threat tier: Direct / Emerging / Declining / Adjacent


Their Pitch

"[Their tagline or core value prop — pulled from their homepage]"

What they lead with: [Speed / Price / Integrations / Enterprise / Ease of use] Their target buyer: [Title, company size, industry] Their proof: [Key customers, case studies, metrics they cite]


Our Counter-Pitch

"[Our response — what we do that they can't, in their language]"

Why we win:

  • [Differentiator 1 — with proof point]
  • [Differentiator 2 — with proof point]
  • [Differentiator 3 — with proof point]

Their Weaknesses (sourced)

WeaknessEvidenceOur Response
[e.g., Slow support]"Support takes 3 days" — G2 review, 2026We offer same-day response (SLA in contract)
[e.g., No API]GitHub: no public repos, pricing page silent on APIFull REST API, documented at [URL]
[e.g., Price jump at scale]Pricing page: 10x cost from Starter to Growth]Flat rate after [N] seats

Objection Handling

"We already use [COMPETITOR]."

"Makes sense — they're solid for [X]. The question is whether [Y pain point] is costing you. [Client name] switched after [specific outcome]. Want to see how that looked?"

"[COMPETITOR] is cheaper."

"At [their entry price] vs ours, yes. But at [scale point], their pricing jumps to [amount]. We've done the math for teams your size — want to see the comparison?"

"We're evaluating [COMPETITOR] too."

"Good — run them in parallel. Ask them about [specific weak point]. That's where we consistently win."


Watch List

Track these signals weekly for this competitor:

use research BIRD_SEARCH '{"query":"[COMPETITOR] OR @[TWITTER_HANDLE]","count":20}'
use search SEARCH '{"query":"[COMPETITOR] news this week","max_results":"5"}'
use research JINA_READ '{"url":"https://[DOMAIN]/changelog"}'

Alert triggers:

  • New funding round → expect aggressive pricing or hiring
  • Major launch → check if it closes our feature gaps
  • Key exec departure → potential instability, good time to approach their customers
  • Negative press spike → opportunity to run comparison content

Monitoring Cadence

FrequencyAction
DailyBIRD_SEARCH for brand mentions, exec tweets from competitors
WeeklyFull Step 2 intel sweep, update battlecards, produce Section 6 report
MonthlyRe-score matrix (Step 3), re-tier threats (Step 4)
QuarterlyFull JINA_READ of homepage + pricing + changelog for all competitors
On triggerBreaking news, funding, major launch, exec hire/departure

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.