Alejandro Rioja.
AI Agents

Я создал навык Claude, который управляет моей рекламой в Facebook — вот код

Alejandro Rioja
Alejandro Rioja
3 мин чтения
TL;DR

Я создал навык Claude, который читает мой аккаунт Meta Ads через Graph API, выявляет неэффективные объявления, переписывает рекламные тексты в голосе моего бренда и создаёт новые группы объявлений без необходимости заходить в Менеджер рекламы. Весь проект занимает менее 300 строк TypeScript. Окупаемость была немедленной: я сократил еженедельное время управления рекламой с ~3 часов до примерно 20 минут.

Бесплатная рассылка

Каждую среду. 28 400+ читателей. Никакой воды.

Оглавление

Обновлено июнь 2026.

TL;DR: Я создал навык Claude, который читает мой аккаунт Meta Ads через Graph API, выявляет неэффективные объявления, переписывает рекламные тексты в голосе моего бренда и создаёт новые группы объявлений без необходимости заходить в Менеджер рекламы. Весь проект занимает менее 300 строк TypeScript. Окупаемость была немедленной: я сократил еженедельное время управления рекламой с ~3 часов до примерно 20 минут.

[Взгляд оператора] Я управляю рекламой для Pickleland и своего консалтингового бренда. Два аккаунта, разные аудитории, постоянная усталость от креативов. Я тратил воскресные вечера в Менеджере рекламы на вещи, которые должна делать модель. Поэтому я автоматизировал это.

Почему я перестал управлять рекламой в Facebook вручную

Реальная работа по управлению рекламой в Facebook делится на три задачи:

  1. Мониторинг — проверка, какие группы объявлений сжигают деньги, а какие их зарабатывают
  2. Диагностика — выяснение почему что-то не работает (усталость от креативов? плохой таргетинг? лендинг?)
  3. Итерация — написание нового текста, создание новых групп объявлений, корректировка бюджетов

Задача 1 — механическая. Задача 3 — в основном механическая (с голосовым ограничением). Задача 2 требует суждения — и это единственная, которая выигрывает от присутствия человека в процессе.

Навык Claude может делать 1 и 3. Я проверяю результаты задачи 2 до того, как что-либо будет опубликовано. На этой архитектуре я и остановился.

Настройка Meta Graph API (это самая раздражающая часть)

Перед кодом: вам нужен аккаунт Meta Business, Системный пользователь и постоянный токен доступа. Портал для разработчиков Facebook неудобен, но путь такой:

  1. Создать Meta App на developers.facebook.com (тип: Business)
  2. Добавить продукт Marketing API
  3. В вашем Бизнес-портфеле → Настройки → Пользователи → Системные пользователи создать системного пользователя и дать ему роль ADVERTISER в вашем рекламном аккаунте
  4. Создать токен с этими правами: ads_read, ads_management, business_management

Сохраните токен как META_ACCESS_TOKEN и ID вашего рекламного аккаунта (формат: act_XXXXXXXX) как META_AD_ACCOUNT_ID в файле .env.

Структура файлов навыка

code
.claude/skills/fb-ads/
  SKILL.md          ← инструкции, которые читает Claude
  index.ts          ← реальная реализация инструмента
  types.ts          ← общие типы

SKILL.md — это то, что говорит Claude, когда и как использовать навык. Мой файл гласит:

markdown
# Facebook Ads Manager Skill

Use this skill when the user says "check my ads", "run ads report",
"pause underperformers", or "write new ad copy". Never run this
without explicit user instruction — it touches live ad spend.

## What it can do
- Pull performance data for all active ad sets (last 7 or 30 days)
- Flag ad sets with ROAS < 1.5 or CTR < 0.8% as underperformers
- Rewrite ad copy for flagged creatives in Ale's voice
- Create new ad sets with revised copy (PAUSED by default — you approve before activating)

## What it will NOT do
- Change budgets on live ad sets without explicit confirmation
- Activate new ad sets automatically
- Delete anything

Ограничение «никогда не активировать автоматически» — непреложно. Этот навык создаёт вещи в состоянии ПАУЗЫ. Я проверяю и активирую вручную. Всё, что касается живых рекламных расходов, требует человеческой проверки.

Основной код TypeScript

(Блоки кода остаются на английском — переводится только окружающий текст.)

Как я использую это ежедневно

Навык вызывается из Claude Code (мой ежедневный инструмент). Типичная сессия в понедельник утром:

code
> check my ads from the last 7 days

Claude запускает runAdsReport(7), форматирует результаты в виде таблицы, отмечает неэффективных и спрашивает, хочу ли я переработок. Я говорю да. Он генерирует новый текст, показывает мне обе версии рядом и создаёт ПРИОСТАНОВЛЕННЫЕ группы объявлений с новым креативом. Я проверяю их в Менеджере рекламы, активирую те, которые мне нравятся, и архивирую проигрышные.

Общее время: 20 минут. Ноль воскресных вечеров в Менеджере рекламы.

Что это не заменяет

Навык не может сказать мне, маскируется ли проблема соответствия продукта рынку под проблему с текстом. Если ROAS повсюду плохой, это проблема воронки или предложения, а не заголовка. Claude добросовестно перепишет текст на сломанной воронке — и переработки её не спасут.

Этап диагностики по-прежнему мой. Я читаю отчёт, смотрю на данные воронки и решаю, итерируем ли мы креатив или решаем что-то выше по течению. Агент быстр во всём кроме этого суждения.

Вывод оператора

Если вы управляете рекламой вручную и заходите в Менеджер рекламы чаще двух раз в неделю, вы выполняете операции, которые должен делать скрипт. Graph API хорошо документирован, а поток разрешений Meta, хотя и раздражающий, — это разовая настройка. Создайте навык за один вечер. Отдача в виде возвращённого времени проявляется на первой неделе.

Читать дальше

Получайте ИИ-руководство на почту

Каждую среду. 28 400+ читателей. Никакой воды.

↵ — все результаты esc esc — закрыть