IKIGAI · SEO/GEO-стэк

Как работает наша SEO-фабрика

Шесть слоёв, 11 воркеров, 17 Skills, 15 ключей API и одна Google-таблица. Карта показывает потоки данных, расписание и текущий статус каждого узла на 28 апреля 2026.

работает в проде частично / тестируется ждёт внешних условий отложено

01Архитектура потоков данных

Слева — внешние источники, справа — куда уходят результаты. По центру воркеры на VPS.

flowchart LR classDef source fill:#1a2238,stroke:#6ba5ff,color:#e6e9f2,stroke-width:2px classDef worker fill:#1a2238,stroke:#ff6b9d,color:#e6e9f2,stroke-width:2px classDef storage fill:#1a2238,stroke:#4ade80,color:#e6e9f2,stroke-width:2px classDef output fill:#1a2238,stroke:#fbbf24,color:#e6e9f2,stroke-width:2px classDef todo fill:#0a0e1a,stroke:#6b7280,color:#8a93b0,stroke-width:1px,stroke-dasharray:5 5 subgraph SRC[ВНЕШНИЕ ИСТОЧНИКИ] GSC[Google Search Console
10 доменов] GA4[Google Analytics 4
11 properties] GADS[Google Ads
Keyword Planner] SERPER[Serper.dev
SERP API] DFS[DataForSEO
Labs + SERP] MOZ[Moz API
DA / PA] SITES[Наши сайты
HTML / robots] end subgraph VPS[VPS — воркеры на cron] SCI[sc-import
03:00 daily] DIG[digest
09:00 daily] ALR[alerts
каждые 4ч] CRW[crawl
Mon 04:00] SCO[scoring
Mon 04:30] SRP[serp-tracker
Mon 06:00] SYN[sync-analytics
Mon 10:00] CMP[competitor
1 числа] GAP[content-gap
1 числа] UI[url-inspect
manual] IDX[indexnow
post-deploy] end subgraph STORE[ХРАНИЛИЩЕ] SUPA[(Supabase
6 seo_* таблиц)] end subgraph OUT[ВЫХОДЫ] TG[Telegram
SEO канал] SHEET[Google Sheet
IKIGAI SEO Operations] REP[Markdown отчёты
reports/*.md] BING[Bing / Yandex
IndexNow] end GSC --> SCI --> SUPA GSC --> UI GA4 --> ALR --> TG GA4 --> SYN SITES --> CRW --> SUPA CRW --> SCO --> SUPA SERPER --> SRP --> SUPA DFS --> CMP --> SUPA DFS --> GAP --> SUPA GADS -.-> CMP MOZ -.-> SCO SUPA --> DIG --> TG SUPA --> SYN --> SHEET SCO --> REP CRW --> REP IDX --> BING class GSC,GA4,SERPER,DFS,SITES source class GADS,MOZ todo class SCI,DIG,ALR,CRW,SCO,SRP,UI worker class SYN,IDX,CMP,GAP todo class SUPA storage class TG,SHEET,REP,BING output

02Шесть слоёв стэка

Слой 1 · MCP-серверы

2 из 4 активны

В Claude встроены gsc и adloop (Google Ads + GA4 в одном). mcp-trends отложен до решения о Trends.

~/.claude.json
Слой 2 · Внешние API

15 ключей в .env

Supabase, Google OAuth (refresh + scopes), Serper Free, Moz Free, DataForSEO Business, TG-токены, IndexNow, Google Ads dev token.

seo-ops/.env
Слой 3 · Воркеры VPS

7/11 проверены вживую

Все 11 файлов на VPS, cron установлен. Боевой прогон прошли digest, crawl, scoring, serp-tracker, sc-import, url-inspect, alerts.

/home/ikigai/projects/seo-ops/workers
Слой 4 · Контракты + скоринг

5 yaml + Supabase

Контракты по типу страницы (lead-tilda, marketing-tilda, vercel-static, notion-public, noindex-app). Migration 0001 применена.

contracts/ · src/lib/contracts.js
Слой 5 · Apps Script + Sheet

Sheet LIVE, 11 .gs

«IKIGAI SEO Operations» Google-таблица. GEO Insights (4 аудита), SEO Operations (4 домена), Web Analytics Weekly заполнены.

scripts/apps-script · GCP project ikigai-seo-ops
Слой 6 · Claude Skills

17 / 17 установлены

geo-audit, geo-citability, geo-crawlers, geo-llmstxt, geo-schema, geo-technical, geo-content, geo-platform-optimizer, geo-brand-mentions, geo-report, geo-report-pdf, geo-proposal, geo-prospect, seo-audit, schema-markup, programmatic-seo, crawl4ai-seo.

~/.claude/skills/

03Расписание воркеров

Каждый день
Каждую неделю
Каждый месяц
Вручную / триггер
03:00sc-import — забирает данные GSC за сутки в Supabase
02 / 06 / 10 / 14 / 18 / 22alerts — проверяет аномалии трафика GA4, шлёт в Telegram
09:00digest — Telegram-сводка: рост / падение / новые проблемы за сутки
Пн 04:00crawl — HTML-краул всех доменов: title, meta, schema, canonical
Пн 04:30scoring — оценка страниц по контрактам, баллы и список проблем
Пн 06:00serp-tracker — позиции 10 якорных запросов через Serper
Пн 10:00sync-analytics — снапшот GA4 + GSC в Apps Script webhook
Вс 02:00лог-ротация — удаляет логи старше 30 дней
1-го 04:00competitor-discovery — сбор ключей конкурентов через DataForSEO Labs
1-го 05:00content-gap — контентные пробелы: их ключи минус наши
on-demandurl-inspect <url> — статус индексации через GSC Inspection API
post-deployindexnow <url> — пинг Bing / Yandex после релиза на Vercel

04Карта связей: источник → цель

Альтернативный взгляд: какие выходы зависят от каких источников. Полезно при поломке одного из API — сразу видно, что отвалится.

flowchart TB classDef good fill:#1a2238,stroke:#4ade80,color:#e6e9f2,stroke-width:2px classDef wait fill:#1a2238,stroke:#fbbf24,color:#e6e9f2,stroke-width:2px GSC([GSC]) --> SUPA[(Supabase)] GA4([GA4]) --> SUPA CRAWL([crawl HTML]) --> SUPA SERPER([Serper]) --> SUPA DFS([DataForSEO]) --> SUPA SUPA --> TGCH[/TG-канал SEO/] SUPA --> GS[/Google Sheet/] SUPA --> MD[/Markdown отчёты/] GA4 --> TG2[/TG-алерты/] CRAWL --> MD class GSC,GA4,SERPER,CRAWL,SUPA,TGCH,MD,TG2 good class DFS,GS wait

05Что работает, что осталось

Зелёная зона · 7 пунктов

Готово

MCP gsc / adloop · 15 ключей в .env · 7 воркеров протестированы · Supabase 6 таблиц · Google Sheet LIVE · 17 Skills · 4 GEO-аудита.

Жёлтая зона · 3 пункта

На завтра

Верифицировать 2 домена в GSC · Прогнать sync-analytics вручную · Разложить INDEXNOW .txt по корням Vercel-проектов.

Серая зона · 3 пункта

Ждёт внешнего

Пополнить DataForSEO ~$50 (для месячных воркеров) · Дождаться модерации Google Ads dev token · Решить судьбу mcp-trends.