# πŸ”₯ fire-your-seo-agency [ν•œκ΅­μ–΄](./README.ko.md) Β· **English** [![GitHub stars](https://img.shields.io/github/stars/leopard627/fire-your-seo-agency?style=flat&logo=github)](https://github.com/leopard627/fire-your-seo-agency/stargazers) [![GitHub forks](https://img.shields.io/github/forks/leopard627/fire-your-seo-agency?style=flat&logo=github)](https://github.com/leopard627/fire-your-seo-agency/fork) [![Latest release](https://img.shields.io/github/v/release/leopard627/fire-your-seo-agency?style=flat&label=release)](https://github.com/leopard627/fire-your-seo-agency/releases/latest) [![License: MIT](https://img.shields.io/badge/license-MIT-green?style=flat)](./LICENSE) ![fire-your-seo-agency](./assets/social-preview.png) > **Paying $400–$2,500/month for an SEO or "AI visibility" agency? Fire them. Your AI agent can do the work.** A wave of services now charges monthly retainers for "AI-era search optimization", "guaranteed ChatGPT citations", and "LLM visibility". Most of what they actually do is **public standards and repeatable checklists**. When a human does it, it's a retainer. When your agent does it, it's a skill. This repository is a [Claude Code](https://claude.com/claude-code) skill. Install it and your agent audits your site, fixes what's broken, and measures the results. ## Built on real numbers This is not theory. The same playbook, applied to [Chickenstock](https://www.chickstockfi.com) β€” a solo-built Korean stock research service: - **1.54M search impressions in 30 days** (+85,578% MoM), 7.4K clicks - Pages **cited paragraph-by-paragraph by Naver's AI Briefing** (Korea's answer engine) - Zero ad spend β€” all inbound from search and AI citations The journey is documented publicly on [Threads @kindainvestor](https://www.threads.com/@kindainvestor). ## The five lanes "Search optimization" means different things to different engines. This skill treats them as five distinct lanes: | Lane | Target | The question it answers | |---|---|---| | **SEO** | Google & Bing crawlers | Can crawlers read and index my content at all? | | **AEO** (Answer Engine) | Google AI Overviews, Bing Copilot | Does the AI answer box above the results cite me? | | **GEO** (Generative Engine) | ChatGPT, Perplexity, Claude | When generative AI browses, am I the primary source? | | **LLMO** (LLM Optimization) | The model's own knowledge | Does the model know my brand β€” and know it correctly? | | **NEO** (Naver Engine) | Naver search & AI Briefing | Half of the Korean market β€” does Naver cite me? | **NEO is what makes this skill different.** Global AEO guides ignore Naver entirely, but if you serve the Korean market, half your traffic lives there. **Plus a content engine.** Most of a retainer pays for "N posts a month". This skill replaces that with a pipeline: a question backlog pulled from your own search data, a frontmatter content model that generates the JSON-LD, a publish gate every post must pass, and a refresh/merge policy so posts don't rot. Output is measured as "posts that get seen and cited", not "posts published". ## Install As a plugin (recommended β€” one command, easy updates): ``` /plugin marketplace add leopard627/fire-your-seo-agency /plugin install fire-your-seo-agency@fire-your-seo-agency ``` Or via git clone: ```bash # As a project skill (this project only) git clone https://github.com/leopard627/fire-your-seo-agency.git .claude/skills/fire-your-seo-agency # Or as a personal skill (every project) git clone https://github.com/leopard627/fire-your-seo-agency.git ~/.claude/skills/fire-your-seo-agency ``` Then in Claude Code: ``` /fire-your-seo-agency audit my site ``` Your agent starts with a crawler-eye audit and returns a scorecard like this before touching anything: | Lane | Status | Evidence | |---|---|---| | SEO | ⚠️ | Body is SSR'd, but 214 detail pages missing from sitemap | | AEO | ❌ | No direct-answer first paragraphs; FAQ structured data: 0 | | GEO | ❌ | No llms.txt; GPTBot/PerplexityBot policy undecided in robots.txt | | LLMO | ⚠️ | Brand name spelled 3 different ways across surfaces | | NEO | ❌ | Not registered in Naver Search Advisor | …then proposes priorities, implements them, and schedules the re-measurement. ## What it does 1. **Audit** β€” reads your site the way a crawler does (no JavaScript) and scores all five lanes 2. **Technical base** β€” fixes SSR exposure, sitemaps, meta, structured data 3. **Intent landing pages** β€” designs pages on the "one question = one page" principle 4. **Machine readability** β€” llms.txt, JSON-LD, citation-ready paragraph structure 5. **Naver** β€” from Search Advisor registration to AI Briefing citation requirements 6. **Content engine** β€” sub-blog setup, question backlog, publish gate, refresh & merge policy 7. **Measurement loop** β€” schedules a re-measurement and proves the change with numbers ## What it refuses to do - ❌ Buying backlinks, engagement pods, content spam β€” **we don't fight the search engine** - ❌ "Guaranteed rankings" promises β€” no claims without measurement - ❌ Keyword stuffing, hidden text, cloaking β€” nothing that gets your domain killed The whole philosophy fits in one line: **AI doesn't cite good writing. AI cites accurate data.** Become the primary source for a number, and the citations follow. ## Structure ``` SKILL.md ← agent operating procedure (audit β†’ implement β†’ measure) references/ seo.md ← technical SEO checklist + real-world traps aeo.md ← answer engine optimization (Bing WMT Β· AI Overviews Β· Copilot Β· E-E-A-T) geo.md ← generative engine optimization (AI crawler policy Β· llms.txt Β· primary source) llmo.md ← model-knowledge optimization (brand entity) neo-naver.md ← Naver (Search Advisor Β· AI Briefing Β· blog two-track) content.md ← content ops (sub-blog Β· content model Β· backlog Β· publish gate Β· refresh) measure.md ← the measurement loop (fixing it is not the finish line) en/ ← English mirrors of all reference docs (for human readers) .claude-plugin/ ← plugin & marketplace manifests (/plugin install support) tools/ ← repository checks (validate.py) + lossless asset optimizer tests/ ← unit tests for the checks .github/workflows/ ← CI: checks, tests and the asset check on every push/PR ``` > The Korean documents under `references/` are canonical (the agent reads those); > `references/en/` mirrors them in English for human readers. ## Repository checks This repo checks itself β€” `.github/workflows/validate.yml` runs all of it on every push and pull request: ```bash python3 tools/validate.py --strict # 10 checks, standard library only python3 -m unittest discover -s tests -t . # unit tests for every check python3 -m pip install pillow python3 tools/optimize_assets.py --check # flags recompressible assets ``` `tools/validate.py` enforces the things that rot silently in a docs-only repo: the `SKILL.md` frontmatter contract (kebab-case name, 64-character name limit, 1024-character single-line description), `plugin.json` ↔ `marketplace.json` version and name agreement, `CHANGELOG.md` matching the manifest version, relative links and anchors, Korean/English reference parity (heading counts, table rows, checkboxes, section numbering), the asset budget and preview dimensions, the MIT license metadata, and a secret scan over every text file. ## Star History Star History Chart ## License MIT β€” use it freely, and keep the retainer money.