naming-rules
Naming Rules
Интерактивный помощник для настройки правил именования Campaign/AdSet/Ad и структуры аккаунта.
Твои задачи
- Определить аккаунт для настройки
- Задать вопросы о структуре и нейминге
- Собрать существующие кампании из аккаунта
- Сгенерировать файл правил
config/naming/{account}_naming.md - Обновить бриф аккаунта (добавить ссылку на naming rules)
Что создаётся в результате
.claude/ads-agent/config/
└── naming/
└── {account}_naming.md ← правила нейминга для аккаунта
Workflow (7 шагов)
Шаг 0: Определи аккаунт
Для какого аккаунта настраиваем правила нейминга?
Проверь список в .claude/ads-agent/config/ad_accounts.md.
Прочитай бриф аккаунта из .claude/ads-agent/config/briefs/{account}.md.
Шаг 1: Структура кампаний (3 вопроса)
Q1: Что означает Campaign в твоём аккаунте?
1. Направление/услуга (Имплантация, Виниры, Гнатология)
2. Цель рекламы (WhatsApp, Lead Forms, Traffic)
3. Аудитория (Холодная, Ретаргетинг, LAL)
4. Другое (опиши)
Q2: Когда создаётся НОВАЯ кампания?
1. Новое направление/услуга
2. Новая цель (WhatsApp → Lead Forms)
3. Новый тип аудитории
4. Никогда — всё в одной кампании
5. Комбинация (опиши)
Q3: Шаблон названия Campaign:
Примеры:
1. {Направление}
2. {Направление}_{Цель}
3. {Цель}_{Направление}
4. {Направление} | {Цель} | {Дата}
5. Свой формат (опиши)
Доступные переменные:
- {Направление} — название услуги/продукта
- {Цель} — WhatsApp, Lead Forms, Traffic, etc.
- {Аудитория} — Cold, Retargeting, LAL
- {Дата} — дата создания
Шаг 2: Структура AdSets (3 вопроса)
Q4: Что означает AdSet в твоём аккаунте?
1. Один креатив = один AdSet
2. Один таргетинг = один AdSet (несколько креативов внутри)
3. Комбинация креатив + таргетинг
4. Тест гипотезы (A/B тест)
5. Другое (опиши)
Q5: Когда создаётся НОВЫЙ AdSet?
Выбери всё что применимо:
[ ] Новый креатив
[ ] Новый таргетинг (возраст, гео, интересы)
[ ] Изменение бюджета
[ ] Тест гипотезы
[ ] Другое (опиши)
Q6: Шаблон названия AdSet:
Примеры:
1. {Направление}_{Возраст}_{Гео}
2. {Creative}_{Дата}
3. {Направление}_{Creative}
4. {Направление}_{Аудитория}_{Бюджет}
5. Свой формат (опиши)
Доступные переменные:
- {Направление} — название услуги/продукта
- {Creative} — название креатива
- {Возраст} — диапазон (25-45)
- {Гео} — город/страна
- {Аудитория} — тип аудитории
- {Бюджет} — дневной бюджет
- {Дата} — дата создания
Шаг 3: Названия объявлений (3 вопроса)
Q7: Что ОБЯЗАТЕЛЬНО должно быть в названии Ad?
Выбери всё что нужно для группировки статистики:
[ ] Название креатива (РЕКОМЕНДУЕТСЯ — для группировки)
[ ] Направление
[ ] Формат (video/image/carousel)
[ ] Дата создания
[ ] Версия (v1, v2)
Q8: Шаблон названия Ad:
Примеры:
1. {creative_name}
2. {Направление} | {creative_name}
3. {Направление} | {creative_name} | {format}
4. {creative_name} | {format} | {date}
5. Свой формат (опиши)
Доступные переменные:
- {creative_name} — уникальное имя креатива
- {Направление} — название услуги
- {format} — video/image/carousel
- {date} — дата создания (YYYY-MM-DD)
- {version} — версия (v1, v2)
Q9: Как формировать creative_name?
1. По первым словам текста: "восстановим_за_4"
2. По названию файла: "SAK.mov"
3. Описательно: "девушка_улыбка_зелёный"
4. Код + описание: "CR001_имплант_видео"
5. Свой подход (опиши)
Шаг 4: Существующие кампании
Q10: Загрузить существующие кампании из аккаунта?
Если да — вызови get_campaigns(account_id, limit=50) и покажи список:
Найдены кампании:
| # | Название | Campaign ID | Статус |
|---|----------|-------------|--------|
| 1 | Имплантация | 123456789 | ACTIVE |
| 2 | Виниры | 234567890 | ACTIVE |
| 3 | Гнатология | 345678901 | PAUSED |
Какие из них активно используются? (укажи номера или "все")
Для каких направлений эти кампании?
Собери маппинг: Направление → Campaign ID
Шаг 5: Валидация
Покажи сводку всех правил:
📋 ПРАВИЛА НЕЙМИНГА — {account_name}
## Структура
### Campaign = {что означает}
- Новая когда: {условия}
- Шаблон: `{template}`
- Пример: `{example}`
### AdSet = {что означает}
- Новый когда: {условия}
- Шаблон: `{template}`
- Пример: `{example}`
### Ad
- Шаблон: `{template}`
- Пример: `{example}`
- creative_name: {как формируется}
## Существующие кампании
| Направление | Campaign ID | Использовать |
|-------------|-------------|--------------|
{campaigns_table}
---
Всё верно? (да / нет, изменить)
Шаг 6: Генерация файла
Создай директорию если не существует:
.claude/ads-agent/config/naming/
Создай файл {account}_naming.md:
# {Account Name} — Naming Rules
> Создан через /naming-rules {date}
---
## Структура аккаунта
### Campaign
**Означает:** {campaign_meaning}
**Создавать новую когда:**
- {condition_1}
- {condition_2}
**Шаблон:** `{campaign_template}`
**Примеры:**
- `Имплантация`
- `Виниры`
---
### AdSet
**Означает:** {adset_meaning}
**Создавать новый когда:**
- {condition_1}
- {condition_2}
**Шаблон:** `{adset_template}`
**Примеры:**
- `Имплантация_восстановим_за_4_$10`
- `Виниры_биркин_$15`
---
### Ad
**Шаблон:** `{ad_template}`
**Обязательные элементы:**
- {element_1}
- {element_2}
**Примеры:**
- `Имплантация | восстановим_за_4 | video`
- `Виниры | биркин | video`
---
### Creative Name
**Формируется:** {creative_name_rule}
**Примеры:**
- `восстановим_за_4`
- `биркин`
- `швейцарская_точность`
---
## Существующие кампании
| Направление | Campaign ID | Цель | Статус |
|-------------|-------------|------|--------|
{campaigns_rows}
---
## Сценарии использования
### Новый креатив для существующего направления
1. **Campaign:** использовать существующую (`{direction}` → `{campaign_id}`)
2. **AdSet:** создать по шаблону `{adset_example}`
3. **Ad:** создать по шаблону `{ad_example}`
### Новое направление
1. **Campaign:** создать `{campaign_example}`
2. **AdSet:** создать `{adset_example}`
3. **Ad:** создать `{ad_example}`
### Тест нового таргетинга
1. **Campaign:** использовать существующую
2. **AdSet:** создать новый с другим таргетингом
3. **Ad:** использовать существующие креативы
---
## История изменений
| Дата | Изменение |
|------|-----------|
| {date} | Создан через /naming-rules |
Шаг 7: Обновление брифа
Добавь в бриф аккаунта (briefs/{account}.md) ссылку на naming rules:
## Naming Rules
См. [naming/{account}_naming.md](../naming/{account}_naming.md)
Интеграция с другими скиллами
Как другие скиллы используют naming rules:
/campaign-manager:
1. Читает config/naming/{account}_naming.md
2. При создании Campaign/AdSet/Ad применяет шаблоны
3. Проверяет существующие кампании перед созданием новой
/ads-optimizer:
1. Читает naming rules
2. При создании нового adset применяет шаблон
3. Использует creative_name для логирования
/ads-reporter:
1. Группирует статистику по creative_name
2. Извлекает creative_name из названия Ad по шаблону
/creative-analyzer:
1. Парсит creative_name из названий объявлений
2. Группирует метрики по креативам
Валидация названий
При создании проверяй:
# Campaign
assert "{Направление}" in campaign_name or custom_format_valid
# AdSet
assert "{Creative}" in adset_name or "{Направление}" in adset_name
# Ad
assert "{creative_name}" in ad_name # ОБЯЗАТЕЛЬНО для группировки
Частые ошибки
| Ошибка | Решение |
|---|---|
| Нет creative_name в Ad | Добавь — иначе невозможно группировать статистику |
| Дубликат Campaign | Проверь существующие перед созданием |
| Разные форматы названий | Придерживайся шаблона из naming rules |
После настройки
Чек-лист:
- Файл создан в
config/naming/{account}_naming.md - Бриф обновлён (добавлена ссылка)
- Существующие кампании замаплены на направления
- Примеры названий валидны