OmniRoute Provider Management
diegosouzapw/OmniRoute
Manages AI provider connections, API keys, OAuth flows and connection tests through OmniRoute's REST API across its 327-provider catalog.
[RU: Яндекс.Вебмастер API — поисковые запросы, индексация, переобход URL, sitemap] Yandex.Webmaster REST API v4 — OAuth 2.0, popular/history search queries, recrawl with daily quota, sitemap CRUD…
$ npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install VKirill/claude-lane-stack yandex-webmaster --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/VKirill/claude-lane-stack.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/lane-stack/skills/yandex/yandex-webmaster .claude/skills/yandex-webmaster && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "yandex-webmaster" agent skill from https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmaster into .claude/skills/yandex-webmaster/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yandex-webmaster", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmasterType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install VKirill/claude-lane-stack yandex-webmaster --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VKirill/claude-lane-stack.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/lane-stack/skills/yandex/yandex-webmaster .agents/skills/yandex-webmaster && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "yandex-webmaster" agent skill from https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmaster into .agents/skills/yandex-webmaster/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yandex-webmaster", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install VKirill/claude-lane-stack yandex-webmaster --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VKirill/claude-lane-stack.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/lane-stack/skills/yandex/yandex-webmaster .cursor/skills/yandex-webmaster && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "yandex-webmaster" agent skill from https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmaster into .cursor/skills/yandex-webmaster/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yandex-webmaster", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/VKirill/claude-lane-stack.git --path plugins/lane-stack/skills/yandex/yandex-webmaster--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install VKirill/claude-lane-stack yandex-webmaster --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VKirill/claude-lane-stack.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/lane-stack/skills/yandex/yandex-webmaster .gemini/skills/yandex-webmaster && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "yandex-webmaster" agent skill from https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmaster into .gemini/skills/yandex-webmaster/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yandex-webmaster", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install VKirill/claude-lane-stack yandex-webmasterInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/VKirill/claude-lane-stack.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/lane-stack/skills/yandex/yandex-webmaster .github/skills/yandex-webmaster && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "yandex-webmaster" agent skill from https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmaster into .github/skills/yandex-webmaster/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yandex-webmaster", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install VKirill/claude-lane-stack yandex-webmaster --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VKirill/claude-lane-stack.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/lane-stack/skills/yandex/yandex-webmaster .opencode/skills/yandex-webmaster && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "yandex-webmaster" agent skill from https://github.com/VKirill/claude-lane-stack/tree/main/plugins/lane-stack/skills/yandex/yandex-webmaster into .opencode/skills/yandex-webmaster/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yandex-webmaster", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
yandex-webmaster[RU: Яндекс.Вебмастер API — поисковые запросы, индексация, переобход URL, sitemap] Yandex.Webmaster REST API v4 — OAuth 2.0, popular/history search queries, recrawl with daily quota, sitemap CRUD…
Yandex Webmaster is an agent skill from VKirill/claude-lane-stack. [RU: Яндекс.Вебмастер API — поисковые запросы, индексация, переобход URL, sitemap] Yandex.Webmaster REST API v4 — OAuth 2.0, popular/history search queries, recrawl with daily quota, sitemap CRUD, diagnostics, host verification. Use when: yandex webmaster, яндекс вебмастер, webmaster api, api.webmaster.yandex.net, /v4/user, hostid, recrawl, переобход url, popular search queries, TOTALSHOWS, AVGSHOWPOSITION, sitemap api, OAuth Яндекс, верификация прав, диагностика, индексация. SKIP: Wordstat frequency (→mutagen)…
Its SKILL.md is about 4.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including reference files (for example `references/cookbook.md`, `references/diagnostics.md` and `references/errors.md`).
It sits in Backend & APIs, covering OAuth and OpenID Connect, Technical SEO and REST APIs. It works with Google Search Console. The repository describes itself as: Multi-agent AI coding factory for one person — Claude Code PM + Codex/Qwen/Grok/Kimi/AGY writers, durable conveyor, auto-merge to main. The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 45fa19e. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
oauth.yandex.comapi.webmaster.yandex.netFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
INVALID_OAUTH_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Yandex Webmaster loads about 4.9k tokens when it runs, and up to ~27k if it reads all its reference files. Until then it costs about 166 tokens; SKILL.md has 1,842 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from VKirill/claude-lane-stack at commit 45fa19e, republished under its MIT licence (© VKirill). 1,842 words, ~4,945 tokens.
.claude/skills/yandex-webmaster/SKILL.md (or your agent's skills folder). This skill also uses 11 other files; get the full folder from GitHub.<!-- versions:start -->
<!-- versions:end -->
Loaded automatically when the description matches the active task. Read only the section you need, then follow the link to the relevant reference file.
search-queries/popular or search-queries/all/historyindexing/history, indexing/samples, indexing/insearch/historyPOST recrawl/queue + GET recrawl/quotasitemaps, user-added-sitemapsdiagnosticslinks/external/samples, links/internal/samplesverificationsqi-history, search-eventshttpx) / Node.js (undici) OAuth client with refresh-token, task_id persistence, recrawl daily quotaoauth.yandex.com and obtaining a long-lived tokenmutagen (cascade)xmlstock (cascade)google-search-console (cascade)yandex-metrica (cascade)yandex-direct (cascade)xmlstock or your own scraper via proxy6httpx, nodejs, postgresql, redisYandex.Webmaster API v4 (https://api.webmaster.yandex.net/v4/) — official REST interface for managing sites in Yandex.Webmaster: search analytics (what users searched and clicked), indexing, page recrawl, problem diagnostics, sitemaps, links, ownership verification. Auth is OAuth 2.0 with Authorization: OAuth <token> header.
This skill is high-stakes because:
POST /recrawl/queue spends 1 unit; a batch of 5000 URLs without a pre-check hits 429 QUOTA_EXCEEDED after ~N successful posts. Duplicate URL returns 409 URL_ALREADY_ADDED (no quota spent, but trips batch logic). Quota varies with SQI / site type; always call GET /recrawl/quota first.expires_in expire quickly. Refresh logic is mandatory.host_id is not a domain. It is an internal id like https:example.com:443 (colon-separated) — never guess; fetch from GET /v4/user/{user-id}/hosts and persist.HOST_NOT_VERIFIED) returns 404 on most endpoints. Filter verified=true before analytics calls.HOSTS_LIMIT_EXCEEDED per user (historically ~1703) — verify before bulk adds.SITEMAP_ALREADY_ADDED — catch and treat as success.The skill owns provider domain knowledge: v4 endpoints, OAuth lifecycle, recrawl quota semantics, search-query indicators, diagnostics enums, sitemap flow, error table. HTTP transport itself belongs to httpx / nodejs.
Full step-by-step API interaction: references/workflow.md — bootstrap, host verification, sitemap submission, search analytics, indexing & recrawl, diagnostics, links, daily ETL pattern. Each step includes HTTP method + URL template, request/response shape, error paths, curl + Python snippets.
Quick map of the workflow file:
| Stage | What |
|---|---|
| 1. Bootstrap | OAuth app → scopes → token → user_id → list hosts |
| 2. Host verification | Add host → choose verifier (DNS/HTML_FILE/META_TAG/TXT_FILE) → poll state |
| 3. Sitemap management | Submit user-added sitemap → poll processing → handle errors |
| 4. Search analytics | Pull popular queries → query history → handle 90-day retention |
| 5. Indexing & recrawl | Read indexing history → check quota → submit URL → poll task |
| 6. Diagnostics | Pull problems → classify by severity → wire to monitoring |
| 7. Links | External/internal samples → paginate |
| 8. Daily ETL | Cron / BullMQ → persist to Postgres → dedupe → alert on quota |
Register an app on oauth.yandex.com with scopes webmaster:hostinfo, webmaster:verify. Authorization Code flow: https://oauth.yandex.com/authorize?response_type=code&client_id=... → exchange at https://oauth.yandex.com/token (form grant_type=authorization_code&code=...&client_id=...&client_secret=...). Response: access_token, refresh_token, expires_in, token_type=bearer. Use header Authorization: OAuth <access_token> (literal word OAuth, not Bearer). Refresh with grant_type=refresh_token.
Full reference: references/setup.md
GET /v4/user → user_id. GET /v4/user/{user-id}/hosts → array with host_id, ascii_host_url, unicode_host_url, verified, main_mirror, host_data_status (NOT_INDEXED / NOT_LOADED / OK). POST /v4/user/{user-id}/hosts body {"host_url": "..."} → 201. DELETE /v4/user/{user-id}/hosts/{host-id}. Verification: GET .../verification (state), POST .../verification?verification_type={DNS|HTML_FILE|META_TAG|TXT_FILE} (start). States: NONE, IN_PROGRESS, VERIFIED, VERIFICATION_FAILED, INTERNAL_ERROR.
Full reference: references/hosts-and-sitemaps.md
GET .../search-queries/popular?order_by={TOTAL_SHOWS|TOTAL_CLICKS}&query_indicator=...&device_type_indicator=...&date_from=...&date_to=...&offset=...&limit=... — TOP-3000 queries for last week by default, page up to 500. Indicators: TOTAL_SHOWS, TOTAL_CLICKS, AVG_SHOW_POSITION, AVG_CLICK_POSITION. Device: ALL (default), DESKTOP, MOBILE, TABLET, MOBILE_AND_TABLET. Single query history: .../search-queries/{query-id}/history. All-queries aggregated history: .../search-queries/all/history. query_id comes from popular response.
Full reference: references/search-queries.md
GET .../indexing/history?date_from=...&date_to=...&indexing_indicators=... — page-load dynamics split by HTTP code (HTTP_2XX, HTTP_3XX, HTTP_4XX, HTTP_5XX, OTHER). .../indexing/samples — sample loaded pages. .../indexing/insearch/history — pages in search; .../indexing/insearch/samples — sample searchable pages. .../search-events/history + .../search-events/samples — added/removed from search. Indicators: SEARCHABLE, DOWNLOADED, EXCLUDED, FAILED_TO_DOWNLOAD.
Full reference: references/indexing.md
GET .../recrawl/quota → {daily_quota, quota_remainder}. Always check before batches. POST .../recrawl/queue body {"url": "..."} → 202 {task_id, quota_remainder}. Each POST = 1 quota unit. Duplicate → 409 URL_ALREADY_ADDED (no quota spent). GET .../recrawl/queue?offset=&limit=&date_from=&date_to= — task list. GET .../recrawl/queue/{task-id} → {task_id, url, added_time, state}. State: IN_PROGRESS, DONE, FAILED. For idempotency: persist URL → task_id mapping; do not re-POST.
Full reference: references/indexing.md
GET .../sitemaps?limit=&from= — all sitemaps discovered by the bot, with sources (ROBOTS_TXT, WEBMASTER, INDEX_SITEMAP) and sitemap_type. Fields: sitemap_id, sitemap_url, last_access_date, errors_count, urls_count, children_count. GET .../sitemaps/{sitemap-id} — one. GET .../user-added-sitemaps — user-added only. POST .../user-added-sitemaps body {"url": "..."} → 201 {sitemap_id}. DELETE .../user-added-sitemaps/{sitemap-id}. Duplicate → 409 SITEMAP_ALREADY_ADDED (catch, treat as success).
Full reference: references/hosts-and-sitemaps.md
External links: GET .../links/external/samples?offset=&limit= (limit 1-100, default 10) → array {source_url, destination_url, discovery_date, source_last_access_date} + count. History: .../links/external/history?date_from=&date_to=. Internal (broken): .../links/internal/samples + .../links/internal/history. Used for backlink audits and broken-internal-link discovery.
Full reference: references/links.md
GET .../diagnostics → {problems: {[PROBLEM_TYPE]: {severity, state, last_state_update}}}. Severity: FATAL (DISALLOWED_IN_ROBOTS, DNS_ERROR, MAIN_PAGE_ERROR, THREATS), CRITICAL (SSL_CERTIFICATE_ERROR, SLOW_AVG_RESPONSE_TIME), POSSIBLE_PROBLEM (NO_SITEMAPS, NO_ROBOTS_TXT, TOO_MANY_PAGE_DUPLICATES), RECOMMENDATION (NOT_MOBILE_FRIENDLY, FAVICON_PROBLEM, NO_METRIKA_COUNTER). State: PRESENT, ABSENT, UNDEFINED. Use for auto-alerting on FATAL/CRITICAL.
Full reference: references/diagnostics.md
| Section | Endpoint | Method | Returns |
|---|---|---|---|
| User | /v4/user | GET | user_id (needed by all other calls) |
| Hosts | /v4/user/{user-id}/hosts | GET / POST | list / add |
| Host | /v4/user/{user-id}/hosts/{host-id} | GET / DELETE | info / delete |
| Verification | .../hosts/{host-id}/verification | GET / POST | state / start (DNS, HTML_FILE, META_TAG, TXT_FILE) |
| Summary | .../hosts/{host-id}/summary | GET | aggregated site stats |
| Search Queries (popular) | .../search-queries/popular | GET | TOP-3000 / week, page up to 500 |
| Search Queries (all history) | .../search-queries/all/history | GET | aggregated history |
| Search Queries (specific) | .../search-queries/{query-id}/history | GET | one query history |
| Indexing History | .../indexing/history | GET | HTTP_2XX/3XX/4XX/5XX/OTHER × date |
| Indexing Samples | .../indexing/samples | GET | sample loaded pages |
| In-Search History | .../indexing/insearch/history | GET | pages in search × date |
| Recrawl Quota | .../recrawl/quota | GET | daily_quota, quota_remainder |
| Recrawl Queue | .../recrawl/queue | GET / POST | tasks / submit URL |
| Recrawl Task | .../recrawl/queue/{task-id} | GET | state: IN_PROGRESS / DONE / FAILED |
| Sitemaps | .../sitemaps | GET | all discovered by bot |
| User Sitemaps | .../user-added-sitemaps | GET / POST | user-added |
| User Sitemap | .../user-added-sitemaps/{sitemap-id} | GET / DELETE | one / delete |
| Links External | .../links/external/samples | GET | sample inbound links |
| Links Internal | .../links/internal/samples | GET | sample broken internal |
| Diagnostics | .../diagnostics | GET | problems with severity |
| SQI History | .../sqi-history | GET | SQI time series |
| Important URLs | .../important-urls | GET / POST | key-page monitoring |
| Indicator | Where | Note |
|---|---|---|
TOTAL_SHOWS | search-queries | times shown in SERP |
TOTAL_CLICKS | search-queries | clicks from SERP |
AVG_SHOW_POSITION | search-queries | avg position on shows |
AVG_CLICK_POSITION | search-queries | avg position on clicks |
SEARCHABLE | indexing | page in search |
DOWNLOADED | indexing | bot loaded |
EXCLUDED | indexing | excluded from search |
FAILED_TO_DOWNLOAD | indexing | load failed |
| HTTP | Code | Quota spent? | Action |
|---|---|---|---|
| 400 | ENTITY_VALIDATION_ERROR / FIELD_VALIDATION_ERROR / INVALID_URL | — | fix body / params |
| 401 | (missing/invalid token) | — | refresh access_token |
| 403 | INVALID_OAUTH_TOKEN / INVALID_USER_ID / ACCESS_FORBIDDEN | — | check scopes / user_id |
| 403 | HOSTS_LIMIT_EXCEEDED | — | stop adding sites |
| 404 | RESOURCE_NOT_FOUND / HOST_NOT_FOUND / HOST_NOT_VERIFIED / HOST_NOT_INDEXED / HOST_NOT_LOADED | — | verify site |
| 404 | SITEMAP_NOT_FOUND / TASK_NOT_FOUND / QUERY_ID_NOT_FOUND | — | id stale / missing |
| 409 | URL_ALREADY_ADDED | no | already queued — ignore |
| 409 | HOST_ALREADY_ADDED / SITEMAP_ALREADY_ADDED / VERIFICATION_ALREADY_IN_PROGRESS | — | treat as success |
| 422 | (length violation) | — | check url/text length |
| 429 | QUOTA_EXCEEDED | yes (recrawl) | daily limit drained, wait reset |
| 429 | TOO_MANY_REQUESTS_ERROR | — | rate limit, backoff + Retry-After |
recrawl/quota. After quota_remainder successful POSTs the rest gets 429. Fix: GET recrawl/quota first, clamp batch to quota_remainder - safety_margin.Bearer <token> instead of OAuth <token>. Yandex accepts only Authorization: OAuth ya29.... Bearer returns 401. Fix: hardcode OAuth prefix.host_id from the domain. host_id looks like https:example.com:443 (colon-separated) — must come from GET /v4/user/{user-id}/hosts and be persisted. Fix: cache domain → host_id.HOST_NOT_VERIFIED. Fix: filter verified=true before polling.SITEMAP_ALREADY_ADDED as an error and retrying. Fix: treat as idempotent success, fetch sitemap_id via GET.references/integration.md).429 QUOTA_EXCEEDED on the first recrawl POST of the day — someone else is using the same OAuth app today. Check other integrations / second worker / cron.recrawl/quota returns daily_quota=0 — site is unverified (or lost verification, e.g. meta tag removed). Verify owns first.401 INVALID_OAUTH_TOKEN mid-batch — token just expired. Refresh, persist, retry the batch from the same offset.FATAL DISALLOWED_IN_ROBOTS or DNS_ERROR on a production site — that is a real incident, alert the owner, do not silence.task_id mass-FAILED in recrawl/queue/{task-id} — site is temporarily unreachable (5xx / timeout / Yandex bot IP block). Fix the site, do not re-POST.recrawl/quota, list verified hosts, list existing sitemaps.*_ALREADY_ADDED as idempotent success. Log INFO, not WARN.user_id, host_id, sitemap_id, task_id, query_id. Do not recreate per call.webmaster:hostinfo) vs write ops (webmaster:verify, recrawl, sitemap CRUD).recrawl/queue without first GETting /recrawl/quota for server-side batches (an interactive UI button is fine — 1 click = 1 unit).client_secret or access_token in code / git / public configs. Env or secret store only.host_id == ascii_host_url. They are different fields.Bearer prefix. Only OAuth .verified=false separately — skip search-queries, indexing, recrawl for those.Retry-After on 429; otherwise exponential backoff (2→4→8→16→32 s, max 60 s, jitter).mutagen — Wordstat frequency (cascade); Webmaster shows shows-that-already-happened on your site, mutagen shows phrase volume in Yandex overallxmlstock — arbitrary SERP position parsing (cascade); Webmaster covers only verified hostsgoogle-search-console — Google counterpart (cascade); different provider and APIyandex-metrica — behavioral and traffic data (cascade); different Yandex productyandex-direct — Yandex.Direct for paid search (cascade); different producthttpx, nodejs — HTTP transport for your own clientpostgresql, redis — persistence for user_id, host_id, task_id, daily search-query snapshots| File | Content |
|---|---|
| references/cookbook.md | 20+ ready-to-use yandex_webmaster_api recipes: bootstrap, hosts, verification, search queries, diagnostics, indexing, recrawl, sitemaps, links, SQI, important-URLs; migration from v0.4 narrow tools |
| references/workflow.md | End-to-end API workflow: bootstrap → verify → sitemap → analytics → recrawl → diagnostics → daily ETL |
| references/setup.md | OAuth flow, app registration, scopes, code→token, refresh, headers |
| references/hosts-and-sitemaps.md | /v4/user, /hosts, verification, sitemap CRUD |
| references/search-queries.md | popular, history, query_id, indicators, device filter |
| references/indexing.md | indexing history/samples, recrawl quota/queue/task |
| references/links.md | external/internal links samples + history |
| references/diagnostics.md | problems, severity, problem types, recommendations |
| references/errors.md | full error-code table, retry strategy |
| references/rate-limits.md | 429, concurrency, recrawl daily quota |
| references/integration.md | Production Python (httpx async) + Node.js (undici) clients, Postgres schema |
© VKirill, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 11 other files (references) in plugins/lane-stack/skills/yandex/yandex-webmaster of VKirill/claude-lane-stack.
Open the folder on GitHubat commit 45fa19e
Yandex Webmaster next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Yandex Webmaster this skillVKirill/claude-lane-stack | 122 | — | ~4.9k | Automated safety check: Pass | MIT | |
| OmniRoute Provider Managementdiegosouzapw/OmniRoute | 74k | — | ~2.4k | Automated safety check: Pass | MIT | |
| Twitterapi IokaitoInfra/twitterapi-io | 450 | — | ~3.1k | Automated safety check: Pass | MIT | |
| Neo4j Aura Agent Skillneo4j-contrib/neo4j-skills | 114 | — | ~3.8k | Automated safety check: Notes | MIT | |
| Soundcloud API Integrationsoundcloud/api | 259 | — | ~787 | Automated safety check: Pass | None | |
| Openloomi APImelandlabs/openloomi | 1k | — | ~4.2k | Automated safety check: Pass | Apache-2.0 |
diegosouzapw/OmniRoute
Manages AI provider connections, API keys, OAuth flows and connection tests through OmniRoute's REST API across its 327-provider catalog.
kaitoInfra/twitterapi-io
Official skill for twitterapi.io — query Twitter/X data (tweets, profiles, followers, advanced search, trends, spaces, communities, lists) and perform authenticated actions (post, reply, like…
neo4j-contrib/neo4j-skills
Manages Neo4j Aura Agents via the v2beta1 REST API — create, list, get, update, delete, and invoke Aura agents backed by an AuraDB instance.
soundcloud/api
Integrates applications with the SoundCloud HTTP API using OAuth 2.1, OpenAPI, and developer docs.
melandlabs/openloomi
openloomi HTTP API reference (local-first, served from the OpenLoomi Desktop app at http://localhost:3414).
gjovanovicst/golang-auth-api
Complete module inventory of the Auth API project with file paths, dependencies, and architecture overview.
VKirill/claude-lane-stack
Lane-stack design + brand intelligence (vendored ui-ux-pro-max).
VKirill/claude-lane-stack
Owner-facing architect for a new app or service. An agent skill from VKirill/claude-lane-stack.
VKirill/claude-lane-stack
Live browser QA + Playwright-compatible replay. An agent skill from VKirill/claude-lane-stack.
VKirill/claude-lane-stack
Карта файлов копирайта в .agents/copy/: шаблоны, статусы, цепочка audience→headlines→ux.
VKirill/claude-lane-stack
Dispatch copy-lead helpers: Tavily, Codex luna/terra, grok/X, OpenCode DeepSeek, Cursor Grok 4.6 medium-fast.
VKirill/claude-lane-stack
Keep living docs/ honest after code changes. An agent skill from VKirill/claude-lane-stack.
Works with
Categories
[RU: Яндекс.Вебмастер API — поисковые запросы, индексация, переобход URL, sitemap] Yandex.Webmaster REST API v4 — OAuth 2.0, popular/history search queries, recrawl with daily quota, sitemap CRUD…. Yandex Webmaster is an agent skill from VKirill/claude-lane-stack.0, popular/history search queries, recrawl with daily quota, sitemap CRUD, diagnostics, host verification.
Yandex Webmaster fits situations like: : yandex webmaster; Яндекс вебмастер; api.webmaster.yandex.net; popular search queries.
Run `npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a claude-code`. Or copy the skill folder (plugins/lane-stack/skills/yandex/yandex-webmaster in VKirill/claude-lane-stack) into .claude/skills/yandex-webmaster in your project. Claude Code loads it when a task matches its description.
Run `npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a codex`. Or copy the skill folder (plugins/lane-stack/skills/yandex/yandex-webmaster in VKirill/claude-lane-stack) into .agents/skills/yandex-webmaster in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add VKirill/claude-lane-stack --skill yandex-webmaster -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/yandex-webmaster, .gemini/skills/yandex-webmaster, .github/skills/yandex-webmaster and .opencode/skills/yandex-webmaster in your project.
Going by SKILL.md and its folder, Yandex Webmaster needs credentials named INVALID_OAUTH_TOKEN. Our summary lists: Python 3; Node.js.
SKILL.md names 2 domains. In commands or code: oauth.yandex.com and api.webmaster.yandex.net; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Yandex Webmaster is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.9k tokens (SKILL.md is roughly 20k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 22k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Yandex Webmaster: OmniRoute Provider Management (diegosouzapw/OmniRoute, 74k stars), Twitterapi Io (kaitoInfra/twitterapi-io, 450 stars), Neo4j Aura Agent Skill (neo4j-contrib/neo4j-skills, 114 stars) and Soundcloud API Integration (soundcloud/api, 259 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
VKirill (a GitHub user) maintains it in VKirill/claude-lane-stack, which has 122 GitHub stars. The repository holds 49 skills in this directory. The repository was last updated on October 9, 2026.
Source: VKirill/claude-lane-stack on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.