MoizIbnYousaf/marketing-cli

openseo-competitor-analysis

Deep-dive ONE competitor's organic footprint — exact ranking keywords and URLs, content themes, backlink profile, and exploitable gaps — with findings written into brand/competitors.md. Use this skill when the user names a competitor and wants to know what to learn from them, counter, or outrank, including head-to-head comparisons against the user's own domain. For market-level mapping first, use openseo-competitive-landscape. Triggers: "analyze competitor", "competitor keywords", "competitor ba

82Collecting
See how to use itView GitHub source
npx skills add https://github.com/MoizIbnYousaf/marketing-cli --skill "skills/openseo-competitor-analysis"
Automated source guide

Source checked Jul 28, 2026·Refresh due Oct 26, 2026

Reorganized from the pinned upstream SKILL.md

Turn openseo-competitor-analysis's source instructions into a guide you can follow

According to the pinned SKILL.md from MoizIbnYousaf/marketing-cli: Analyze one competitor deeply enough to decide what to learn from, avoid, counter-position against, or outrank. Findings merge into brand/competitors.md — mktg's competitor memory that competitive-intel maintains qualitatively and this skill now grounds in measured rows.

npx skills add https://github.com/MoizIbnYousaf/marketing-cli --skill "skills/openseo-competitor-analysis"
Check the pinned source

Best fit

  • Use this skill when the user names a competitor and wants to know what to learn from them, counter, or outrank, including head-to-head comparisons against the user's own domain.
  • Deep-dive ONE competitor's organic footprint — exact ranking keywords and URLs, content themes, backlink profile, and exploitable gaps — with findings written into brand/competitors.md. Use this skill when the user names a competitor and wants to know what to learn from them, counter, or outrank, including head-to-head comparisons against the user's own domain. For market-level mapping first, use openseo-competitive-landscape. Triggers: "analyze competitor", "competitor keywords", "competitor ba

Bring this context

  • A concrete task that matches the documented purpose of openseo-competitor-analysis.
  • The files, examples, or context the task depends on.
  • Your constraints, target environment, and definition of done.

Expected outputs

  • Start with: snapshot, biggest lesson, best opportunity to beat them. Then:

Key source sections

Read openseo-competitor-analysis through these 5 source sections

Sections are extracted automatically from the pinned SKILL.md and link back to the source.

01

Workflow

1. getdomainoverview for the competitor (and the user's domain when comparing). 2. getrankedkeywords for the competitor with sensible filters; same for the user, or getserpresults for shared terms when a lighter check suffices. 3. findserpcompetitors when the supplied competitor…

SKILL.md · Workflow
getdomainoverview for the competitor (and the user's domain when comparing).getrankedkeywords for the competitor with sensible filters; same for the user, or getserpresults for shared terms when a lighter check suffices.findserpcompetitors when the supplied competitor's search overlap is unclear.
02

On Activation

1. Catalog + binding: mktg catalog info openseo --json --fields configured + .seo/openseo.json. No OpenSEO → hand off to competitive-intel (Exa qualitative), labeling metrics unknown. 2. Brand grounding: read brand/competitors.md + brand/positioning.md (tolerate templates). If t…

SKILL.md · On Activation
Catalog + binding: mktg catalog info openseo --json --fields configured + .seo/openseo.json. No OpenSEO → hand off to competitive-intel (Exa qualitative), labeling metrics unknown.Brand grounding: read brand/competitors.md + brand/positioning.md (tolerate templates). If the competitor isn't named, ask — never guess the domain.1. Catalog + binding: mktg catalog info openseo --json --fields configured + .seo/openseo.json. No OpenSEO → hand off to competitive-intel (Exa qualitative), labeling metrics unknown. 2. Brand grounding: read brand/comp…
03

OpenSEO MCP Tools

getdomainoverview: baseline organic traffic + keyword count (both domains when comparing).

SKILL.md · OpenSEO MCP Tools
getdomainoverview: baseline organic traffic + keyword count (both domains when comparing).getrankedkeywords: exact keyword/URL/rank/intent/traffic rows. Use maxRank, minSearchVolume, excludeBrandTerms, resultTypes filters to keep rows relevant.getbacklinksoverview: backlink/referring-domain profile (may be unavailable — continue without it).
04

Output Format

Start with: snapshot, biggest lesson, best opportunity to beat them. Then:

SKILL.md · Output Format
Start with: snapshot, biggest lesson, best opportunity to beat them. Then:
05

Anti-Patterns

Adapted from every-app/open-seo .agents/skills/competitor-analysis (MIT). Workflow upstream; mktg brand-memory writes and handoff wiring added here.

SKILL.md · Anti-Patterns
Treating every competitor keyword as desirable — because ranking for a term and PROFITING from a term are different things; filter through positioning before anything lands in a plan.Inferring page-level content strategy from keyword rows alone — because a keyword list can't tell you WHY a page works (structure, depth, format). Use SERP/web evidence for page-level claims.Estimating the user's own performance from third-party data when GSC exists — because first-party clicks/impressions/position are free and exact; third-party estimates of your own site are the worst data in the room.

SkillSignal prompt templates

Provide the task, context, and acceptance criteria

These prompts were written by SkillSignal from the source structure; they are not upstream text.

Task-start prompt

Confirm source fit, inputs, and outputs before acting.

Use openseo-competitor-analysis to help me with: [specific task]. Context: [files, data, or background]. Constraints: [environment, scope, and prohibited actions]. Before acting, check the pinned SKILL.md and explain which sections apply, what inputs are still missing, and what you will deliver.

Source-guided execution

Make the Agent explicitly follow the key extracted sections.

Apply the pinned openseo-competitor-analysis source to [task]. Pay particular attention to these source sections: “Workflow”, “On Activation”, “OpenSEO MCP Tools”, “Output Format”, “Anti-Patterns”. Preserve the important decision at each step. Mark facts not covered by the source as “needs confirmation” instead of inventing them. Then verify the result against my acceptance criteria: [criteria].

Result-review prompt

Check omissions, permissions, and source drift before delivery.

Review the current openseo-competitor-analysis result: (1) does it satisfy the original task; (2) were any applicable steps or limits in the pinned SKILL.md missed; (3) did it perform any unauthorized file, command, network, or data action; and (4) which conclusions remain unverified? List issues first, then fix only what the source or user authorization supports.

Output checklist

Verify each item before delivery

The task matches the purpose documented in the SKILL.md.

The source section “Workflow” has been checked.

The source section “On Activation” has been checked.

The source section “OpenSEO MCP Tools” has been checked.

The source section “Output Format” has been checked.

Inputs, constraints, and acceptance criteria are explicit.

Unverified facts, compatibility, and outcome claims are clearly marked.

Any file, command, network, or data action has been reviewed.

Choose a different workflow

When another Skill is the better fit

competitor-alternatives

Creates high-converting 'X vs Y' and 'X alternatives' SEO pages that capture comparison search traffic. Researches competitors, writes honest comparison content, and adds schema markup (FAQPage, ItemList). Use when someone needs alternatives pages, comparison content, or says 'alternatives page', 'vs page', 'comparison', 'competitor alternatives', 'X vs Y page', or wants to capture competitor brand search traffic with SEO content. Also trigger when someone wants to rank for competitor brand name

A separate implementation from MoizIbnYousaf/marketing-cli; compare its source, maintenance signals, and permission requirements.

Open source detail

seo-content

Create high-quality, SEO-optimized content that ranks AND reads like a human wrote it. Performs live SERP gap analysis, writes with anti-AI detection techniques, and adds schema markup. Use when someone needs a blog post, article, SEO page, or wants content that drives search traffic. Triggers on 'SEO content', 'blog post', 'article', 'SERP', 'programmatic SEO', 'content at scale', 'write a post about', 'rank for', or 'search-optimized content'. Two modes: single article or programmatic SEO at s

A separate implementation from MoizIbnYousaf/marketing-cli; compare its source, maintenance signals, and permission requirements.

Open source detail

openseo-keyword-research

Discover keyword opportunities with MEASURED volume, keyword difficulty, CPC, and intent from OpenSEO, then write them into brand/keyword-plan.md. Use this skill whenever someone asks for keyword difficulty, KD, search volume, keyword ideas with metrics, striking-distance opportunities from Search Console, or SERP-validated keyword priorities. For qualitative research without an OpenSEO connection, use mktg's keyword-research instead (metrics will be unknown). Triggers: "keyword difficulty", "se

A separate implementation from MoizIbnYousaf/marketing-cli; compare its source, maintenance signals, and permission requirements.

Open source detail

FAQ

What does openseo-competitor-analysis do?

Analyze one competitor deeply enough to decide what to learn from, avoid, counter-position against, or outrank. Findings merge into brand/competitors.md — mktg's competitor memory that competitive-intel maintains qualitatively and this skill now grounds in measured rows.

How do I start using openseo-competitor-analysis?

The catalog detected this source-specific install command: npx skills add https://github.com/MoizIbnYousaf/marketing-cli --skill "skills/openseo-competitor-analysis". Inspect the command and pinned source before running it.

Which Agent platforms does it declare?

No dedicated Agent platform is declared in the pinned source record.

Repository stars
27
Repository forks
5
Quality
82/100
Source repository last pushed

Quality breakdown

Based on traceable docs and repository signals; stars are not treated as quality.

82/100
Documentation22/30
Specificity20/25
Maintenance20/20
Trust signals20/25

Compare before choosing

Related Agent Skills and source variants

These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.

competitor-alternatives by MoizIbnYousaf

Creates high-converting 'X vs Y' and 'X alternatives' SEO pages that capture comparison search traffic. Researches competitors, writes honest comparison content, and adds schema markup (FAQPage, ItemList). Use when someone needs alternatives pages, comparison content, or says 'alternatives page', 'vs page', 'comparison', 'competitor alternatives', 'X vs Y page', or wants to capture competitor brand search traffic with SEO content. Also trigger when someone wants to rank for competitor brand name

seo-content by MoizIbnYousaf

Create high-quality, SEO-optimized content that ranks AND reads like a human wrote it. Performs live SERP gap analysis, writes with anti-AI detection techniques, and adds schema markup. Use when someone needs a blog post, article, SEO page, or wants content that drives search traffic. Triggers on 'SEO content', 'blog post', 'article', 'SERP', 'programmatic SEO', 'content at scale', 'write a post about', 'rank for', or 'search-optimized content'. Two modes: single article or programmatic SEO at s

openseo-keyword-research by MoizIbnYousaf

Discover keyword opportunities with MEASURED volume, keyword difficulty, CPC, and intent from OpenSEO, then write them into brand/keyword-plan.md. Use this skill whenever someone asks for keyword difficulty, KD, search volume, keyword ideas with metrics, striking-distance opportunities from Search Console, or SERP-validated keyword priorities. For qualitative research without an OpenSEO connection, use mktg's keyword-research instead (metrics will be unknown). Triggers: "keyword difficulty", "se

openseo-competitive-landscape by MoizIbnYousaf

Map who is winning an SEO market with measured data — recurring SERP domains, organic footprints, winning content themes, backlink authority, and the gaps worth attacking. Use this skill for market-level questions ("who ranks for X", "how competitive is this space", "where are the SEO openings") before committing to keyword targets or content themes. For one named competitor, use openseo-competitor-analysis instead. Triggers: "competitive landscape seo", "who ranks for", "seo market map", "how c

openseo-coach by MoizIbnYousaf

Friendly SEO coach mode for the mktg + OpenSEO stack. Use this skill when the user is new to SEO, unsure which SEO workflow to run, asks "what does OpenSEO do", wants strategy explained in plain language, or needs help choosing between keyword research, clustering, competitive analysis, and link prospecting. Triggers: "seo coach", "new to seo", "explain openseo", "what seo should i do", "seo strategy help".

View original Skill.mdThis page is parsed directly from the repository SKILL.md without editorial rewriting. Collected: Jul 28, 2026 · about 3 min

OpenSEO Competitor Analysis

Analyze one competitor deeply enough to decide what to learn from, avoid, counter-position against, or outrank. Findings merge into brand/competitors.md — mktg's competitor memory that competitive-intel maintains qualitatively and this skill now grounds in measured rows.

On Activation

  1. Catalog + binding: mktg catalog info openseo --json --fields configured + .seo/openseo.json. No OpenSEO → hand off to competitive-intel (Exa qualitative), labeling metrics unknown.
  2. Brand grounding: read brand/competitors.md + brand/positioning.md (tolerate templates). If the competitor isn't named, ask — never guess the domain.

OpenSEO MCP Tools

  • get_domain_overview: baseline organic traffic + keyword count (both domains when comparing).
  • get_ranked_keywords: exact keyword/URL/rank/intent/traffic rows. Use maxRank, minSearchVolume, excludeBrandTerms, resultTypes filters to keep rows relevant.
  • get_backlinks_overview: backlink/referring-domain profile (may be unavailable — continue without it).
  • find_serp_competitors: validate the named competitor actually overlaps in search.
  • get_serp_results: head-to-head SERP checks for the important shared terms.
  • get_search_console_performance: when comparing to the user's domain and GSC is connected, the USER's baseline is first-party — never estimate your own side from third-party data.
  • research_keywords: expand gap terms.

Workflow

  1. get_domain_overview for the competitor (and the user's domain when comparing).
  2. get_ranked_keywords for the competitor with sensible filters; same for the user, or get_serp_results for shared terms when a lighter check suffices.
  3. find_serp_competitors when the supplied competitor's search overlap is unclear.
  4. Group keywords into themes: product/category, alternatives/comparisons, templates/tools, educational guides, branded demand.
  5. get_backlinks_overview when authority appears to explain rankings.
  6. get_serp_results for the important head-to-head terms.
  7. Synthesize the plan: what they do well, where they're vulnerable, which pages/keywords to pursue, what NOT to copy.
  8. Merge into brand/competitors.md (preserve existing sections; date the entry; confirm before overwriting populated competitor entries).
  9. Hand off: competitor-alternatives for "X vs Y" pages, seo-content for gap-driven briefs, openseo-keyword-clustering for page mapping.

Output Format

Start with: snapshot, biggest lesson, best opportunity to beat them. Then:

AreaCompetitor patternEvidenceOpenSEO opportunity

Anti-Patterns

  • Treating every competitor keyword as desirable — because ranking for a term and PROFITING from a term are different things; filter through positioning before anything lands in a plan.
  • Inferring page-level content strategy from keyword rows alone — because a keyword list can't tell you WHY a page works (structure, depth, format). Use SERP/web evidence for page-level claims.
  • Estimating the user's own performance from third-party data when GSC exists — because first-party clicks/impressions/position are free and exact; third-party estimates of your own site are the worst data in the room.
  • Recommending "copy what they do" — because imitation pages lose to the original on authority and freshness. Recommend a stronger angle on the same intent, never a replica.
  • Separating evidence from inference nowhere — because "they rank for X" (evidence) and "their content strategy is Y" (inference) carry different confidence and must read differently in brand/competitors.md.

Adapted from every-app/open-seo .agents/skills/competitor-analysis (MIT). Workflow upstream; mktg brand-memory writes and handoff wiring added here.

Skill path
skills/openseo-competitor-analysis/SKILL.md
Commit SHA
f12fbcbe4929
Repository license
MIT
Data collected