plugins/yandex-search-api/skills/yandex-search-api/SKILL.md
Парсинг выдачи Яндекса через Yandex Cloud Search API v2. Синхронный и асинхронный режимы. Кэширование результатов. Triggers: yandex search api, поиск в яндексе, выдача яндекса, serp яндекс, парсинг выдачи.
npx skillsauth add artwist-polyakov/polyakov-claude-skills yandex-search-apiInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Parse Yandex SERP via Yandex Cloud Search API v2 (sync + async).
Для работы нужен сервисный аккаунт Яндекс.Облака. Пошаговая инструкция (6 шагов, ~10 минут): config/README.md.
Краткий чеклист:
config.jsonconfig/service_account_key.jsonbash scripts/iam_token_get.shmacOS: может потребоваться
brew install openssl— подробности в config/README.md.
Определи регион:
bash scripts/search_region.sh --name "Казань"
"Для какого региона искать?
- Вся Россия (по умолчанию)
- Москва
- Конкретный город (какой?)"
НЕ ПРОДОЛЖАЙ пока пользователь не ответит!search_region.sh --name "..." → получаешь IDРежим поиска берётся из config.json → search.mode (по умолчанию sync).
Не спрашивай — используй то, что в конфиге.
Verify config: bash scripts/iam_token_get.sh
Run search с полученным region ID
Present results with position, title, URL, snippet
Generate or validate IAM token from Service Account key.
bash scripts/iam_token_get.sh
Token is cached in cache/iam_token.json and auto-refreshed when expired.
Synchronous search — one query at a time, immediate results.
# Single query
bash scripts/web_search_sync.sh \
--query "купить дымоход" \
--region-id 213
# Batch from file
bash scripts/web_search_sync.sh \
--file queries.txt \
--region-id 225 \
--results 20
| Param | Required | Default | Values |
|-------|----------|---------|--------|
| --query, -q | yes* | - | Search text |
| --file, -f | yes* | - | File with queries (one per line) |
| --region-id, -r | no | from config (225) | Region ID |
| --results, -n | no | 10 | Results per page (1-100) |
| --page, -p | no | 0 | Page number |
| --search-type | no | SEARCH_TYPE_RU | SEARCH_TYPE_RU / SEARCH_TYPE_TR / SEARCH_TYPE_COM / SEARCH_TYPE_KK / SEARCH_TYPE_BE / SEARCH_TYPE_UZ |
| --family-mode | no | FAMILY_MODE_MODERATE | FAMILY_MODE_NONE / FAMILY_MODE_MODERATE / FAMILY_MODE_STRICT |
* Either --query or --file is required.
Results saved to cache/results/<hash>.json (parsed) and cache/results/<hash>.raw (XML).
Asynchronous batch search — submit many queries, poll for results.
# Submit batch and wait
bash scripts/web_search_async.sh \
--file queries.txt \
--region-id 213
# Resume after timeout/interrupt
bash scripts/web_search_async.sh --resume
| Param | Required | Default | Values |
|-------|----------|---------|--------|
| --file, -f | yes | - | File with queries |
| --region-id, -r | no | from config (225) | Region ID |
| --poll-interval | no | 10 | Poll interval (minutes) |
| --max-wait | no | 120 | Max wait before timeout (minutes) |
| --resume | no | - | Continue polling pending ops |
Async workflow:
poll_interval minutes for completionmax_wait exceeded: prints summary + resume command--resume: continues from cache/ops/, no duplicatesNOTE for agent: Async execution can take minutes to hours.
The script handles polling automatically. If it times out,
re-run with --resume to continue.
Show common region IDs.
bash scripts/regions_tree.sh
Find region ID by name.
bash scripts/search_region.sh --name "Казань"
Each search result contains:
position — rank in SERPtitle — page titleurl — page URLsnippet — text snippet (up to 300 chars)domain — site domainResults cached in cache/results/:
<hash>.raw — raw XML from API<hash>.json — parsed JSON array| Region | ID | |--------|-----| | Россия | 225 | | Москва | 213 | | Москва и область | 1 | | Санкт-Петербург | 2 | | Екатеринбург | 54 | | Новосибирск | 65 | | Казань | 43 |
Run bash scripts/regions_tree.sh for full list.
Yandex Search API v2 pricing (as of 2025):
User: Найди топ выдачи яндекса по запросу "купить сэндвич дымоход" в Москве
Claude: Уточню: Москва-город или Москва и область?
User: Москва город
Claude: [Находит ID региона]
bash scripts/search_region.sh --name "Москва"
→ Москва = 213
[Проверяет токен]
bash scripts/iam_token_get.sh
[Выполняет поиск — 1 запрос, автоматически sync]
bash scripts/web_search_sync.sh --query "купить сэндвич дымоход" --region-id 213
Результаты поиска (топ-10):
1. Сэндвич-дымоходы купить в Москве — Леруа Мерлен
https://leroymerlin.ru/...
Широкий ассортимент сэндвич-дымоходов...
2. Дымоходы сэндвич — купить в интернет-магазине
https://...
...
User: Проверь выдачу по запросам из файла queries.txt в Казани
Claude: [Находит ID региона]
bash scripts/search_region.sh --name "Казань"
→ Казань = 43
[Проверяет токен]
bash scripts/iam_token_get.sh
[Режим sync из конфига — запускает батч по одному]
bash scripts/web_search_sync.sh --file queries.txt --region-id 43
development
Компилирует личные книги, PDF/EPUB/TXT/Markdown и длинные материалы в прикладной Claude Code skill с картой источников, решающими правилами, плейбуками, словарём и проверкой качества. Используй, когда пользователь просит превратить книгу, документ, учебник, статью или набор заметок в рабочий скилл, личную карту знаний, прикладного советника, справочник по источнику или reusable skill.
development
Publish static page artifacts to SourceCraft Sites (Yandex infrastructure, works in Russia), with advisory image optimization and an original-image path. Use when a static page/React artifact needs to be deployed to SourceCraft under YYYY/YYYY-MM/page-slug directory layout.
development
Publish static page artifacts from the publisher workspace to a GitHub Pages repository using a fine-grained token, with advisory image optimization and an original-image path. Use when a React/static page artifact is already prepared and needs to be copied into the Pages repo under a strict year/year-month/page-slug directory layout, then committed and pushed, with a final public artifact URL returned.
development
Workflow кросс-агентного ревью с Codex. Triggers (RU): "кодекс ревью". Triggers (EN): "with codex review", "codex review workflow", "start codex review". ВАЖНО: при срабатывании триггера прочитай SKILL.md до любых других шагов.