OpenParable
Skip to content
← Back to skills

yandex-metrika

Apps & Automation

Аналитика Yandex Metrika: трафик, конверсии, UTM, поисковые системы. Cache-first подход для гигиены контекстного окна. Triggers: яндекс метрика, yandex metrika, metrika analytics, метрика трафик, метрика конверсии, метрика отчёт.

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/artwist-polyakov/polyakov-claude-skills/blob/HEAD/plugins/yandex-metrika/skills/yandex-metrika/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/yandex-metrika, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

yandex-metrika

Работа с Yandex Metrika Reporting API v1. Отчёты по трафику, конверсиям, UTM-меткам, поисковым системам.

Config

Требуется YANDEX_METRIKA_TOKEN в config/.env. Инструкция: config/README.md.

Philosophy

  1. Cache-first — конфигурационные данные (счётчики, цели, инфо) кешируются надолго. Отчёты кешируются по ключу counter+dates+params. Перед API-запросом всегда проверяем кеш.
  2. Context window hygiene — stdout ограничен 30 строками. Полные данные в CSV/файл. Кеш доступен через grep/rg для поиска без загрузки в контекст.
  3. Точные данные — accuracy=1 (без сэмплирования), фильтр isRobot по умолчанию.
  4. Атрибуция — дефолт lastsign (последний значимый источник). Спрашиваем пользователя при первом запуске.

Workflow

STOP! Перед любым анализом:

  1. Получи список счётчиков:

    bash scripts/counters.sh
    
  2. Спроси пользователя (если счётчик не очевиден из контекста):

    "О каком счётчике/сайте идёт речь?
    Укажите ID, название или домен."
    

    Если пользователь назвал сайт/домен — ищи через --search:

    bash scripts/counters.sh --search "metallik"
    

    Это grep по TSV (id + name + site), поэтому находит и по домену.

  3. Получи инфо о счётчике и его цели:

    bash scripts/counter_info.sh --counter <ID>
    bash scripts/goals.sh --counter <ID>
    
  4. Спроси про конверсионные цели:

    "Какие из этих целей являются конверсионными для вашего бизнеса?
    [список целей из goals.sh]
    Сохраню выбранные для будущих отчётов."
    
  5. Сохрани конфигурацию в cache/counter_<id>/config.json:

    {
      "attribution": "lastsign",
      "conversion_goals": [
        {"id": 12345, "name": "Заказ оформлен"},
        {"id": 67890, "name": "Заявка отправлена"}
      ]
    }
    
  6. Запускай отчёты по задаче пользователя.

Scripts

Общий паттерн вызова:

bash scripts/<script>.sh --counter <ID> --date1 YYYY-MM-DD [--date2 ...] [--group month] [--csv path]
ScriptDescriptionSpecial params
counters.shСписок счётчиков--search "query"
goals.shЦели счётчика—
counter_info.shМетаданные счётчика—
traffic_summary.shТрафик по источникам—
conversions.shДостижение целей--goals "ID,ID" / --all-goals; по умолчанию из config.json
utm_report.shUTM-разбивка—
search_engines.shПоисковые системы (organic)—
ecommerce.shПокупки, выручка, средний чек--currency RUB|USD|EUR; авто из counter_info
direct_clients.shЛогины Директа—
direct_costs.shРасходы Директа (ym:ad:*)--direct-client-logins "login"; нет --group/--device/--source
comparison.shСравнение двух периодов--date1a/--date2a/--date1b/--date2b; --dimension, --metrics

Не все скрипты поддерживают все общие параметры — см. Special params.

Общие параметры отчётных скриптов

ParamRequiredDefaultValues
--counteryes-ID счётчика
--date1yes-YYYY-MM-DD
--date2notodayYYYY-MM-DD
--groupno-day, week, month
--devicenoalldesktop, mobile, tablet
--sourcenoallorganic, ad, referral, direct, social
--attributionnolastsignlastsign, last, first
--limitnoAPI defaultчисло строк
--csvno-путь для экспорта
--no-cacheno-пропустить кеш

Кеш-стратегия

Кеш хранится в cache/:

  • counters.json + counters.tsv — все счётчики
  • counter_<id>/info.json — метаданные (permanent)
  • counter_<id>/goals.json + goals.tsv — цели
  • counter_<id>/config.json — атрибуция, конверсионные цели
  • counter_<id>/direct_clients.json — логины Директа
  • counter_<id>/reports/*.csv — результаты отчётов

Для поиска по кешу: grep "text" cache/counters.tsv или rg "text" cache/.

Расширенные сценарии

Лимиты API

  • Reporting API: ~200 запросов / 5 минут (при превышении — ждите ~5 минут)
  • Скрипты автоматически обрабатывают 429 (Retry-After ≤ 60s → retry, иначе fail с сообщением)