# Competitor Analysis

Analyze one competitor's organic footprint, ranking keywords, content themes...

- Repository: https://github.com/every-app/open-seo (25988 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add every-app/open-seo --skill competitor-analysis -g -a claude-code -y`
Codex: `npx skills add every-app/open-seo --skill competitor-analysis -g -a codex -y`
Cursor: `npx skills add every-app/open-seo --skill competitor-analysis -g -a cursor -y`
Gemini CLI: `npx skills add every-app/open-seo --skill competitor-analysis -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add every-app/open-seo`

## Description

Analyze one competitor's organic footprint, ranking keywords, content themes, backlinks, and gaps.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# OpenSEO Competitor Analysis

## Goal

Analyze one competitor deeply enough to decide what to learn from, avoid, counter-position against, or outrank.

Use this for a named competitor. For identifying the market leaders first, use `competitive-landscape`.

## Required inputs

- `projectId`
- Competitor domain
- User's domain when comparison is requested
- Optional topic/category/location/language

## Project context

The project-context tools are free and shared with the app and other agents.

1. Call `get_project_context` first and ground the analysis in it, the saved competitors say whether this domain is already known and what was concluded about it before.
2. This skill needs competitors. If none are saved, run a minimal inline setup: save the competitor being analyzed, and ask the user (or infer from `find_serp_competitors` and confirm) whether there are others, write them back with `update_project_context` (`addCompetitors`), then continue the analysis. Never front-load the full interview; suggest `seo-project-setup` at the end for the rest.
3. Before spending credits, check the research log. If the same research ran within the last 30 days, reuse that result and say so instead of re-buying it.
4. On finish, write back what is durable with `update_project_context`, an `addCompetitors` upsert for this domain with a short note on its strengths and where it is vulnerable, and append a research log entry: `{ appendResearchLog: { summary: "Competitor analysis: <domain>. Verdict: <conclusion>" } }`.

## Deliver as a report

Deliver through the `seo-report` skill, saving with `skill: "competitor-analysis"`. If that skill is not available, say so and stop before writing HTML.

## OpenSEO MCP tools

The rest: https://github.com/every-app/open-seo/blob/HEAD/.agents/skills/competitor-analysis/SKILL.md
