account-onboarding
Онбординг нового рекламного аккаунта. Создаёт конфигурацию для оптимизации.
Best use case
account-onboarding is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Онбординг нового рекламного аккаунта. Создаёт конфигурацию для оптимизации.
Teams using account-onboarding should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/account-onboarding/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How account-onboarding Compares
| Feature / Agent | account-onboarding | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Онбординг нового рекламного аккаунта. Создаёт конфигурацию для оптимизации.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Account Onboarding
Интерактивный помощник для настройки нового Facebook Ads аккаунта.
---
## Твои задачи
1. Провести пользователя через сбор информации (~20 вопросов)
2. Валидировать данные на каждом этапе
3. Показать сводку и запросить подтверждение
4. Создать конфигурационные файлы
5. Проверить подключение к API
---
## Что создаётся в результате
```
.claude/ads-agent/config/
├── ad_accounts.md ← Добавляется запись аккаунта
└── briefs/
└── {account_name}.md ← Создаётся новый бриф
```
---
## Workflow (8 шагов)
### Шаг 0: Приветствие
Выведи сообщение:
```
👋 Привет! Это онбординг нового рекламного аккаунта.
Я задам ~20 вопросов о бизнесе клиента:
• Базовая информация (4)
• Бизнес-параметры (5)
• Цель рекламы (1)
• Технические ID (2-5 в зависимости от цели)
• Направления/кампании (по 5 на каждое)
В конце создам:
- Запись в ad_accounts.md
- Бриф briefs/{name}.md
Готов начать?
```
Дождись подтверждения.
---
### Шаг 1: Базовая информация (4 вопроса)
**ОБЯЗАТЕЛЬНЫЕ** — все 4.
```
1. Название бизнеса:
> (например: Bas Dent, FitLife, TechStore)
2. Facebook Ads Account ID:
> act_XXXXXXXXX
(найти в Business Manager → Ad Accounts)
3. Часовой пояс:
> UTC+5 (Алматы) / UTC+3 (Москва) / UTC+6 (Астана) / другой
4. Ниша бизнеса:
> E-commerce / Услуги / SaaS / Образование / Медицина / другая
```
**Валидация:**
- Account ID должен начинаться с `act_`
- Часовой пояс — формат UTC+X
**Дефолт:** Валюта всегда USD.
---
### Шаг 2: Бизнес-параметры (5 вопросов)
**ОБЯЗАТЕЛЬНЫЕ:** 1-3. **ОПЦИОНАЛЬНЫЕ:** 4-5.
```
1. Что продаёте / какие услуги:
> (краткое описание основных продуктов/услуг)
2. Регион работы:
> Казахстан / Россия / СНГ / Весь мир / конкретные города
3. Целевая аудитория:
> Возраст: 25-45
> Пол: все / жен / муж
> Интересы: (ключевые)
4. Боли клиентов (для копирайтинга) [опционально]:
> Какие проблемы решаете? Что волнует клиентов?
5. Конкурентные преимущества [опционально]:
> Почему должны выбрать вас?
```
**После получения региона — найди geo ID:**
1. Прочитай справочник `config/knowledge/geo_locations.md`
2. Найди указанные города/страны в таблицах
3. Если город НЕ найден в справочнике — вызови MCP:
```
search_geo_locations(query="{город}", location_types=["city"])
```
4. Сохрани для брифа:
- `city_key` — ID города
- `region_id` — ID региона (если есть)
- `country_code` — код страны
- `radius` — радиус по умолчанию (25 km для городов KZ, 40 km для RU)
---
### Шаг 3: Цель рекламы (1 вопрос)
**ОБЯЗАТЕЛЬНЫЙ.**
```
Выбери цель рекламы:
1. WhatsApp — сообщения в WhatsApp (оптимизация на начало переписки)
2. Instagram Трафик — клики на профиль Instagram
3. Site Leads — лиды на сайте (с Pixel)
4. Lead-формы — мгновенные формы Facebook/Instagram
> (1 / 2 / 3 / 4)
```
**Технические параметры по целям:**
| Цель | Campaign Objective | Optimization Goal | Destination Type |
|------|-------------------|-------------------|------------------|
| WhatsApp | OUTCOME_ENGAGEMENT | CONVERSATIONS | WHATSAPP |
| Instagram Трафик | OUTCOME_TRAFFIC | LINK_CLICKS | — |
| Site Leads | OUTCOME_LEADS | OFFSITE_CONVERSIONS | WEBSITE |
| Lead-формы | OUTCOME_LEADS | LEAD_GENERATION | ON_AD |
---
### Шаг 4: Технические ID (динамический)
В зависимости от цели (из Шага 3) собери нужные технические данные.
**ВСЕГДА ОБЯЗАТЕЛЬНЫЕ:**
```
1. Facebook Page ID:
> (число, например: 123456789012345)
(найти в Business Suite → Страницы → О странице)
2. Есть ли Instagram аккаунт? (да/нет)
Если да:
> Instagram Account ID: (число)
(найти в Business Suite → Instagram аккаунты)
```
**В ЗАВИСИМОСТИ ОТ ЦЕЛИ:**
**Если цель = "WhatsApp":**
```
3. WhatsApp Business номер телефона:
> +7XXXXXXXXXX (формат с кодом страны)
(должен быть подключен к Business Manager)
```
**Если цель = "Lead-формы":**
```
3. Lead Form ID [если уже есть]:
> (число) или "создать новую"
(найти в Meta Business Suite → Формы)
4. Какие поля в форме нужны:
> Имя / Телефон / Email / Город / другие
```
**Если цель = "Site Leads":**
```
3. URL сайта/лендинга:
> https://example.com
4. Facebook Pixel ID:
> (число, например: 123456789012345)
(найти в Events Manager → Data Sources)
5. Есть ли настроенные события? (да/нет)
Если да, какие:
> Purchase / Lead / AddToCart / ViewContent / другие
```
**Если цель = "Instagram Трафик":**
```
(Дополнительных ID не требуется, только Page ID и Instagram ID)
```
**Валидация:**
- Page ID — только цифры, 15-16 знаков
- Instagram ID — только цифры
- WhatsApp — формат +XXXXXXXXXXX (E.164)
- Lead Form ID — только цифры или "создать новую"
- Pixel ID — только цифры, 15-16 знаков
- URL — валидный URL с https://
---
### Шаг 5: Направления/кампании (интерактивно)
```
Сколько направлений/кампаний в аккаунте?
> (1-10)
```
Для КАЖДОГО направления спроси:
```
Направление {N}:
1. Название: (например: Импланты, Виниры, Курсы)
2. Целевой CPL: $X (стоимость лида в USD)
3. Дневной бюджет: $X
4. Приоритет: высокий / средний / низкий
5. Campaign ID [если уже есть]: или "создать новую"
```
**Валидация:**
- CPL должен быть числом > 0
- Бюджет должен быть числом >= 5
---
### Шаг 6: ROAS (только для e-commerce)
**Спрашивать только если ниша = E-commerce.**
```
Целевой ROAS:
ROAS (Return on Ad Spend) — сколько долларов выручки приносит $1 рекламных расходов.
Пример расчёта:
• Потратили на рекламу: $100
• Получили выручки: $300
• ROAS = $300 / $100 = 3x
Формула: ROAS = Выручка / Расходы на рекламу
Типичные значения:
• 2x — минимально приемлемый
• 3x-4x — хороший результат
• 5x+ — отличный результат
> Целевой ROAS: Xх (например: 3x) или "не отслеживаю"
```
---
### Шаг 7: Валидация
Выведи ВСЮ собранную информацию в структурированном виде:
```
📋 СВОДКА ОНБОРДИНГА
## Базовая информация
- Название: {business_name}
- Account ID: {account_id}
- Валюта: USD
- Часовой пояс: {timezone}
- Ниша: {niche}
## Бизнес
- Продукт: {product}
- Регион: {region}
- ЦА: {target_audience}
- Боли: {pains}
- Преимущества: {advantages}
## Цель рекламы
- Цель: {goal} ({objective} / {optimization_goal})
- ROAS: {roas} (если e-commerce)
## Технические ID
- Page ID: {page_id}
- Instagram ID: {instagram_id} (или "нет")
- WhatsApp: {whatsapp_phone} (если WhatsApp)
- Lead Form ID: {lead_form_id} (если Lead-формы)
- Pixel ID: {pixel_id} (если Site Leads)
- Сайт: {website_url} (если Site Leads)
## Направления ({count})
| Название | Целевой CPL | Бюджет | Приоритет | Campaign ID |
|----------|-------------|--------|-----------|-------------|
{directions_rows}
---
Всё верно? (да / нет, изменить)
```
Если "нет" — спроси что изменить и обнови данные.
---
### Шаг 8: Генерация файлов
После подтверждения создай файлы:
#### 1. Добавь запись в ad_accounts.md
Прочитай `.claude/ads-agent/config/ad_accounts.md`, найди последний номер аккаунта и добавь в конец (перед "Пример формата"):
```markdown
---
## Аккаунт {N}: {business_name}
- **Account ID**: {account_id}
- **Page ID**: {page_id}
- **Instagram ID**: {instagram_id}
- **Название**: {business_name}
- **Бриф**: [briefs/{filename}.md](briefs/{filename}.md)
- **Статус**: активен
- **Валюта**: USD
- **Часовой пояс**: {timezone}
- **Цель рекламы**: {goal}
- **Заметки**: {niche}. {short_description}
---
```
#### 2. Создай briefs/{filename}.md
```markdown
# {business_name} - Бриф
> Создан через /account-onboarding {date}
---
## Бизнес
- **Ниша**: {niche}
- **Продукт**: {product}
- **Регион**: {region}
- **Целевая аудитория**: {target_audience}
- **Сайт/Landing**: {website}
### Для копирайтинга
- **Боли клиентов**: {pains}
- **Преимущества**: {advantages}
---
## Цель рекламы
- **Цель**: {goal}
- **Campaign Objective**: {objective}
- **Optimization Goal**: {optimization_goal}
- **Destination Type**: {destination_type}
- **Целевой ROAS**: {roas}
---
## Технические ID (для API)
### Обязательные
- **Facebook Page ID**: `{page_id}`
- **Instagram Account ID**: `{instagram_id}` <!-- или "нет" -->
### В зависимости от цели
<!-- Заполняется в зависимости от goal -->
#### Для WhatsApp:
- **WhatsApp номер**: `{whatsapp_phone}`
#### Для Lead-форм:
- **Lead Form ID**: `{lead_form_id}`
- **Поля формы**: {form_fields}
#### Для Site Leads:
- **URL сайта**: {website_url}
- **Pixel ID**: `{pixel_id}`
- **Настроенные события**: {pixel_events}
### Гео-локации
| Город/Страна | Тип | Key/Code | Region ID | Радиус |
|--------------|-----|----------|-----------|--------|
| {city_name} | city | {city_key} | {region_id} | {radius} km |
| {country_name} | country | {country_code} | — | — |
---
## Правила оптимизации (дефолты)
### Пороговые значения
- **Минимум impressions для решений**: 1000
- **Минимум конверсий для решений**: 3
- **Минимум дней до агрессивных действий**: 2
- **Ad-eater порог**: CPL > target × 3
### Бюджетные лимиты
- **Максимальное увеличение за раз**: 30%
- **Максимальное уменьшение за раз**: 50%
### Временные ограничения
- **Часовой пояс**: {timezone}
- **Не создавать adsets после**: 18:00
### CPL диапазоны
- **Normal**: target × 1.0-1.5
- **High**: target × 1.5-2.0
- **Ad-eater**: target × 3.0+
---
## Активные кампании/направления
| Название | Campaign ID | Цель CPL | Дневной бюджет | Приоритет | Статус |
|----------|-------------|----------|----------------|-----------|--------|
{directions_rows}
---
## Заметки
- Создан: {date}
- Онбординг провёл: Claude (skill: account-onboarding)
---
## История изменений
| Дата | Изменение |
|------|-----------|
| {date} | Создан бриф через /account-onboarding |
```
---
### Шаг 9: Тест подключения
После создания файлов проверь доступ к API:
```python
# Проверка доступа
campaigns = get_campaigns(account_id="{account_id}", limit=5)
```
Выведи результат:
```
✅ Онбординг завершён!
Созданные файлы:
1. .claude/ads-agent/config/ad_accounts.md — запись добавлена
2. .claude/ads-agent/config/briefs/{filename}.md — бриф создан
API проверка:
- Доступ к аккаунту: ✅
- Найдено кампаний: {count}
Теперь можно использовать:
- /ads-optimizer — оптимизация
- /ads-reporter — отчёты
- /campaign-manager — управление кампаниями
```
Если API вернул ошибку:
```
⚠️ Файлы созданы, но API недоступен!
Ошибка: {error_message}
Проверьте:
1. Account ID правильный?
2. MCP токен имеет доступ к аккаунту?
3. Аккаунт активен в Business Manager?
Файлы сохранены, можно исправить Account ID в briefs/{filename}.md
```
---
## Дефолтные значения
```yaml
currency: USD
optimization_rules:
min_impressions: 1000
min_conversions: 3
min_days: 2
max_budget_increase: 30
max_budget_decrease: 50
no_create_after: "18:00"
ad_eater_multiplier: 3
cpl_ranges:
normal_multiplier: 1.5
high_multiplier: 2.0
ad_eater_multiplier: 3.0
budget_defaults:
adset_min: 5
```
---
## Цели и их параметры
| Цель | objective | optimization_goal | destination_type | billing_event |
|------|-----------|-------------------|------------------|---------------|
| WhatsApp | OUTCOME_ENGAGEMENT | CONVERSATIONS | WHATSAPP | IMPRESSIONS |
| Instagram Трафик | OUTCOME_TRAFFIC | LINK_CLICKS | — | IMPRESSIONS |
| Site Leads | OUTCOME_LEADS | OFFSITE_CONVERSIONS | WEBSITE | IMPRESSIONS |
| Lead-формы | OUTCOME_LEADS | LEAD_GENERATION | ON_AD | IMPRESSIONS |
---
## Валидация данных
| Поле | Проверка |
|------|----------|
| account_id | Начинается с `act_`, только цифры после |
| page_id | Только цифры, 15-16 знаков |
| instagram_id | Только цифры или "нет" |
| whatsapp_phone | Формат +XXXXXXXXXXX (E.164) |
| lead_form_id | Только цифры или "создать новую" |
| pixel_id | Только цифры, 15-16 знаков |
| website_url | Валидный URL с https:// |
| timezone | Формат UTC+X или UTC-X |
| target_cpl | Число > 0 |
| roas | Число > 1 или "не отслеживаю" |
| budget | Числа > 0, min >= 5 |
---
## Генерация filename
```
filename = business_name.lower()
.replace(" ", "_")
.replace("-", "_")
.replace(/[^a-z0-9_]/g, "")
Примеры:
- "Bas Dent" → "bas_dent"
- "FitLife Studio" → "fitlife_studio"
- "ИП Иванов" → "ip_ivanov" (транслит)
```
---
## После онбординга
Чек-лист готовности:
- [ ] Бриф создан в `briefs/{name}.md`
- [ ] Аккаунт добавлен в `ad_accounts.md`
- [ ] API доступ проверен
- [ ] Готов к `/ads-optimizer`
---
## Частые ошибки
| Ошибка | Решение |
|--------|---------|
| Account ID без `act_` | Добавь префикс `act_` |
| Ошибка API доступа | Проверь токен в MCP, добавь аккаунт в Business Manager |
| Файл уже существует | Спроси: обновить или создать с суффиксом? |Related Skills
account_manager
安全地管理用户账号信息(CRUD)。支持存储密码、API Key、Cookies 等敏感信息,并支持 TOTP (MFA) 代码生成。**所有涉及凭证存储的操作必须优先使用此技能**,不可用于账号注册。
account-health-framework
Use to score accounts, flag risks, and standardize remediation triggers.
account-based-blueprint
Framework for consolidating manufacturing account intelligence, buying centers, and pursuit strategy.
plaid-accounts-expert
Expert on Plaid accounts and account management. Covers account data retrieval, balance checking, account types, multi-account handling, and account webhooks. Invoke when user mentions Plaid accounts, account balance, account types, or account management.
account-delete
Полное удаление аккаунта и всех связанных данных из конфигурации.
account-based-marketing-agent
AI агент для ABM. Используй для автоматизации ABM кампаний и персонализации outreach.
account-aware-training
Add account state (P&L, win rate, drawdown) to RL observations + drawdown penalty in rewards. Trigger when: (1) model needs account awareness, (2) training should penalize drawdowns, (3) upgrading obs_dim 5300→5600.
onboarding-kickoff
Automated client onboarding after kickoff call - generates leads, creates email campaigns, sets up auto-reply. Use when user asks to onboard a new client, set up campaigns for client, or run post-kickoff automation.
agentuity-cli-git-account-list
List GitHub accounts connected to your organizations. Requires authentication
agentuity-cli-git-account-add
Add a GitHub account to your organization. Requires authentication
Wave Accounting Automation
Automate Wave Accounting tasks via Rube MCP (Composio): invoices, customers, payments, and small business accounting. Always search tools first for current schemas.
onboarding-cro
When the user wants to optimize post-signup onboarding, user activation, first-run experience, or time-to-value. Also use when the user mentions "onboarding flow," "activation rate," "user activation," "first-run experience," "empty states," "onboarding checklist," "aha moment," or "new user experience." For signup/registration optimization, see signup-flow-cro. For ongoing email sequences, see email-sequence.