--- name: seo-tools description: "[RU: SEO-инструментарий] Роутер платных SEO-API: Mutagen (Wordstat, конкуренция, биды) и xmlstock (SERP XML Яндекс/Google). SKILL.md не содержит API — читает дочерний SKILL.md. Use when: seo tools, частотность, вордстат, wordstat, позиции сайта, парсинг выдачи, mutagen, xmlstock, /seo-tools. SKIP: Вебмастер/GSC своего сайта→yandex/google; кокон/текст→drmax-cocoon-engine-x4; Ahrefs/Semrush." stacks: - seo - ru-seo tags: - seo - dispatcher - mutagen - xmlstock - ru source: vechkasov-global-skills risk: high-stakes --- # SEO tools This `SKILL.md` is a **router**. Tool knowledge lives in the child folders. Do not answer APIs from this file. Inventory is two tools now. To add a third: drop a folder next to `mutagen/` / `xmlstock/` and add one row to the tables below. ## Protocol 1. Match the task to the route table. 2. **Read** that child's `SKILL.md`. 3. Load only that child's `references/` named in its API Reference table. 4. Two tools → read both. Do not merge their APIs, keys, or billing. ## Use this skill when - Частотность / Wordstat / конкуренция фразы / биды Директа - Позиции в выдаче Яндекса или Google по списку ключей - Парсинг SERP / сниппетов / `site:` индексация через XML - Slash command `/seo-tools` ## Do not use this skill when - Поисковые запросы **своего** сайта → `yandex` (Вебмастер) или `google` (Search Console) - Написать SEO-текст / кокон → `drmax-cocoon-engine-x4` затем `drmax-text-humanization` - Живая URL + GSC эксперимент → `drmax-signalforge` - Key Collector desktop, Ahrefs, Semrush, официальный Wordstat API — **нет скилла** - Свой скрапер SERP через прокси → `proxy6` ## Route table | Task | Child | |---|---| | Точная частотность, `strong`, биды Direct, Wordstat колонки, кластеризация | [mutagen/SKILL.md](mutagen/SKILL.md) | | Живая выдача, позиции, сниппеты, `site:`, картинки/видео, Яндекс XML / Google XML | [xmlstock/SKILL.md](xmlstock/SKILL.md) | `mutagen.serp.report` — отчёты Mutagen по своей базе, **не** живой XML. Живой SERP → `xmlstock`. ## Ambiguous prompts | User says | Default | Not this | |---|---|---| | «частотность» / Wordstat / «сколько ищут» | `mutagen` | xmlstock не считает частотность | | «конкуренция ключа» / `strong` / биды | `mutagen` | Direct API → `yandex` | | «позиции по ключам» / ТОП-10 / сниппеты | `xmlstock` | Mutagen SERP-отчёт — другая база | | «позиции **моего** сайта в Вебмастере/GSC» | `yandex` / `google` | xmlstock = произвольный SERP | | «проиндексирован ли URL» через `site:` | `xmlstock` | переобход → Webmaster/GSC | | «семантика + позиции» | `mutagen` → `xmlstock` | не одним API | If still unclear — one question, then route. ## Cross-product | Situation | Load in order | |---|---| | Собрать ядро, потом снять позиции | `mutagen` → `xmlstock` | | Частотность + запросы **этого** сайта | `mutagen` + `yandex` (webmaster) | | Позиции Google + GSC своего домена | `xmlstock` + `google` (search-console) | ## Money Both tools **charge per call**. Read the child's billing rules before any batch. | Tool | Wallet | |---|---| | `mutagen` | `mutagen.balance()`; persist `task_id` / `mass_id` — repeat `*.new` double-charges | | `xmlstock` | ЛК / error 200; persist `req_id` — repeat `delayed=1` double-charges | Do not share API keys or one HTTP client across the two. ## Behavioral Traits - Picks **one** child before curl - Reads that child's SKILL.md; does not quote endpoints from this file - Checks balance / quota **before** a paid batch - Names the child folder in the answer ## Important Constraints - NEVER invent Mutagen methods or xmlstock error codes in this dispatcher - NEVER mix Mutagen `serp.report` with xmlstock live SERP - NEVER resubmit a paid job without checking persisted `task_id` / `req_id` - ALWAYS Read the child before the first paid call - ALWAYS say «нет скилла» for Ahrefs / Semrush / Key Collector / official Wordstat API ## Related Skills - `yandex` — Вебмастер (запросы **своего** сайта), Direct - `google` — Search Console (запросы **своего** сайта) - `proxy6` — свой скрапинг SERP, если xmlstock не подходит - `drmax-cocoon-engine-x4`, `drmax-text-humanization`, `drmax-signalforge` — метод, не API ## API Reference Children own the docs. Inventory of this skill: | Tool | File | |---|---| | Mutagen — Wordstat, `strong`, биды, parser.mass, serp.report | [mutagen/SKILL.md](mutagen/SKILL.md) | | xmlstock — Яндекс/Google XML SERP, Live, async req_id | [xmlstock/SKILL.md](xmlstock/SKILL.md) | **How to use**: open only the matching child, then that child's `references/` row. New tool later = new folder + one row here.