naming-rules
npx skills add https://github.com/dengineproblem/agents-monorepo --skill naming-rules
Agent 安装分布
Skill 文档
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 - ÐÑÐ¸Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»Ñн (добавлена ÑÑÑлка)
- СÑÑеÑÑвÑÑÑие кампании Ð·Ð°Ð¼Ð°Ð¿Ð»ÐµÐ½Ñ Ð½Ð° напÑавлениÑ
- ÐÑимеÑÑ Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ð¹ валиднÑ