Суть урока
Теория закончилась — начинается строительство. Этот урок проводит тебя шаг за шагом через создание реальной newsletter automation: от пустой папки до рабочей системы которая ищет новости, создаёт письмо и отправляет его. Делаем вживую, не на слайдах.
Ключевые концепции
- Plan Mode для старта с размытого запроса
- Выбор стека через диалог с агентом (агент — автономный AI-исполнитель)
- Брендовые ассеты как контекст (контекст — текст который AI «видит» в данный момент) для агента
- Пять инструментов newsletter automation
- Настройка .env с API (эй-пи-ай — интерфейс программирования приложений) ключами
- Human review point — когда агент должен остановиться
- Запуск и первая реальная рассылка
Теория
Почему newsletter automation — идеальный первый проект
Newsletter automation — отличный первый проект потому что:
- Понятная бизнес-ценность: каждый бизнес понимает зачем это нужно
- Все компоненты WAT: есть воркфлоу (воркфлоу — рабочий процесс), есть инструменты, агент координирует
- Human review point: понятно где нужна проверка человека перед отправкой
- Реальный результат: в конце урока ты увидишь реальное письмо в своём inbox
- Масштабируемость: этот воркфлоу можно упаковать как готовый продукт или услугу, но результат зависит от ниши и твоей работы
Стек который мы выберем (и почему)
В реальной работе ты объясняешь агенту задачу — и он предлагает стек. Мы пройдём через этот процесс. Но вот что получится в итоге:
| Компонент | Инструмент | Зачем |
|---|---|---|
| Поиск новостей | Perplexity API | Поиск с реальными ссылками и актуальными данными |
| Написание текста | Anthropic Claude API | Качественная генерация на русском языке |
| Инфографика | Nano Banana (модель изображений Google, Gemini API) | Генерация изображений через промпт |
| Отправка | Gmail API | Простая интеграция, бесплатно в рамках дневных лимитов Google (актуальные лимиты смотри в документации Gmail) |
| Архив | Google Sheets | Лог отправок, удобно для анализа |
Почему Perplexity, а не просто Google?
Perplexity возвращает структурированные данные с реальными ссылками и свежими источниками. Обычный поиск через scraping — нестабильно, Google блокирует, API дорогой. Perplexity API даёт чистый JSON (джейсон — формат данных) с источниками.
Почему Gmail, а не SendGrid?
Для первого проекта Gmail проще: не нужно верифицировать домен, можно начать за 10 минут. Специализированные сервисы рассылок (например, SendGrid) лучше для промышленных рассылок на тысячи человек.
Шаг 1: Plan Mode — начинаем с размытого запроса
Открой Claude Code в новой пустой папке newsletter-automation.
Напиши такой первый запрос:
Хочу построить автоматическую еженедельную рассылку новостей о [твоя тема] для клиентов. Прежде чем начинать — задай мне уточняющие вопросы, составь план, потом покажи мне структуру WAT которую собираешься создать.
Агент задаст вопросы вроде:
- «Из каких источников брать новости — конкретные сайты или общий поиск?»
- «Как хранится список получателей?»
- «Нужна ли инфографика в письме?»
- «На каком языке письма?»
- «Нужно ли твоё одобрение перед каждой отправкой?»
Отвечай честно. По итогу агент составит план. Ты согласуешь его — и начнётся строительство.
Шаг 2: Загрузка брендовых ассетов
До того как агент начнёт генерировать контент — дай ему брендовый контекст.
Создай папку /brand_assets/ и положи туда:
logo.png— твой логотип (или скачай любой placeholder)brand_guidelines.md— описание бренда
Пример brand_guidelines.md:
# Brand Guidelines ## Tone of Voice - Профессиональный но доступный - Без лишнего пафоса - Конкретика важнее красивых слов - Предложения короткие ## Цвета - Основной: #1A56DB (синий) - Дополнительный: #F3F4F6 (светло-серый) - Акцент: #10B981 (зелёный для позитивных новостей) ## Типографика - Заголовки: жирный, крупный - Текст: 16px, межстрочный 1.6 ## Что НЕ писать - Никаких «революционных» и «уникальных» - Не начинать с «В эпоху...» - Не использовать слово «инновационный»
После загрузки ассетов скажи агенту:
Я добавил в /brand_assets/ логотип и brand guidelines. При генерации контента и верстке письма используй эти материалы. Упомяни файлы через @brand_assets/logo.png и @brand_assets/brand_guidelines.md.
Шаг 3: Агент создаёт пять инструментов
Агент сам напишет все инструменты на основе плана. Вот что получится:
Инструмент 1: tools/research_news.py
Вызывает Perplexity API с заданным запросом, возвращает список из 5-7 новостей в формате [{title, description, url, date, source}].
Инструмент 2: tools/generate_infographic.py
Принимает список новостей, создаёт промпт (промпт — запрос к AI) для image generation API, возвращает URL или base64 изображения. Nano Banana (через Gemini API) принимает текстовый запрос и возвращает изображение.
Инструмент 3: tools/assemble_html.py
Берёт новости + инфографику + brand guidelines, вызывает Claude API, генерирует готовый HTML-шаблон письма. Вставляет логотип, применяет цвета из brand guidelines.
Инструмент 4: tools/send_via_gmail.py
Принимает HTML, список получателей и тему письма. Использует Gmail API через OAuth 2.0. Отправляет письмо каждому получателю.
Инструмент 5: tools/archive_to_sheets.py
Записывает в Google Sheets строку: дата отправки, количество получателей, тема письма, статус. Создаёт лог для анализа.
Шаг 4: Конфигурационные файлы
Агент создаст два конфига:
config/newsletter_style.json
{
"font_family": "system-ui, -apple-system, sans-serif",
"font_size_body": "16px",
"line_height": "1.6",
"colors": {
"primary": "#1A56DB",
"background": "#F3F4F6",
"accent": "#10B981",
"text": "#111827"
},
"max_width": "600px",
"news_count": 5
}config/recipients.json
{
"test": ["[email protected]"],
"production": [
"[email protected]",
"[email protected]"
]
}Начни с test — отправляй себе. Когда всё настроено, добавляй реальных получателей в production.
Шаг 5: Настройка .env с API ключами
Агент создаст шаблон .env.example:
# Anthropic API (platform.claude.com → API Keys)
ANTHROPIC_API_KEY=your_key_here
# Perplexity API (perplexity.ai → API)
PERPLEXITY_API_KEY=your_key_here
# Gmail API (Google Cloud Console → Credentials)
GMAIL_CLIENT_ID=your_client_id
GMAIL_CLIENT_SECRET=your_client_secret
GMAIL_REFRESH_TOKEN=your_refresh_token
# Google Sheets (тот же Google Cloud проект)
GOOGLE_SHEETS_ID=your_spreadsheet_id
# Gemini API для генерации картинок через Nano Banana (optional)
GEMINI_API_KEY=your_key_hereКак получить ключи:
- Anthropic API: зайди в Console (platform.claude.com) → API Keys → Create Key
- Perplexity API: зайди на perplexity.ai → Settings → API → Generate
- Gmail API: самый сложный. Google Cloud Console → New Project → Enable Gmail API → Credentials → OAuth 2.0 Client ID → скачай JSON → используй
google-auth-oauthlibдля получения refresh token - Google Sheets API: тот же Google Cloud проект → Enable Sheets API → можно использовать тот же OAuth
Скопируй .env.example в .env и заполни реальными ключами. Убедись что .env добавлен в .gitignore.
Шаг 6: Human Review Point — агент останавливается
Это критически важная часть воркфлоу. Перед отправкой писем агент должен остановиться и показать тебе превью.
В воркфлоу это выглядит как явная инструкция:
### Шаг 3: ⚠️ ОБЯЗАТЕЛЬНАЯ ПРОВЕРКА ЧЕЛОВЕКОМ ОСТАНОВИСЬ. Не продолжай автоматически. Покажи мне: 1. HTML-превью письма 2. Список получателей (из какого режима — test или production) 3. Тему письма 4. Количество новостей и их заголовки Жди явного подтверждения: "Отправляй" или "OK send" или "go" Если получил "стоп" или "подожди" — не отправляй, жди инструкций.
Почему это важно: агент мог сгенерировать новость с фактической ошибкой. Или выбрать неподходящую тему. Или в список получателей попало лишнее. Ты проверяешь один раз — потом система работает автономно с периодическими проверками.
Реальный пример промпта для newsletter automation
Вот полный промпт который ты можешь использовать как шаблон для своей ниши:
Создай автоматизацию еженедельного newsletter для агентства недвижимости. Что должна делать система: 1. Каждый понедельник в 10:00 — искать 5-7 свежих новостей по запросу "рынок недвижимости Эквадор 2026" через Perplexity API 2. На основе найденных новостей — сгенерировать HTML-письмо в стиле brand guidelines из /brand_assets/ 3. Добавить секцию "Объект недели" с placeholder для ручного заполнения 4. ОСТАНОВИТЬСЯ и показать мне превью перед отправкой 5. После моего "ok" — отправить через Gmail API по списку из config/recipients.json 6. Записать лог отправки в Google Sheets Важно: - Тон письма: профессиональный, без пафоса, конкретные цифры - Язык: русский - Максимум 800 слов на весь newsletter - Обязательно ссылки на источники новостей
Шаг 7: Запуск — «Напиши мне newsletter об агентном AI»
После всей настройки напиши агенту:
Запусти newsletter воркфлоу. Тема этой недели: агентный AI для малого бизнеса. Используй тестовый список получателей.
Агент:
- Вызовет
research_newsс твоей темой - Покажет найденные новости (ты можешь что-то убрать)
- Вызовет
generate_infographic - Вызовет
assemble_html - Остановится и покажет превью
- После твоего «Отправляй» — вызовет
send_via_gmail - Вызовет
archive_to_sheets
Через ~3-5 минут в твоём inbox будет реальное письмо.
Практика
Задание: Построить newsletter automation от начала до первой отправки.
Шаг 1 — Подготовка (15 мин):
- Создай папку
newsletter-automation - Открой в VS Code с Claude Code
- Создай
brand_assets/brand_guidelines.mdдля своей темы - Создай
.gitignoreс.envиlogs/
Шаг 2 — Plan Mode (10 мин):
- Напиши Plan Mode запрос (текст из Шага 1 теории)
- Ответь на вопросы агента
- Согласуй план
Шаг 3 — Строительство (25 мин):
- Дай агенту go: «Начинай строить по плану»
- Наблюдай как он создаёт структуру, воркфлоу, инструменты
- Периодически отвечай на уточняющие вопросы если агент останавливается
Шаг 4 — API ключи (15 мин):
- Заполни
.env(минимум: ANTHROPIC_API_KEY и один email-сервис) - Если нет Perplexity — используй Anthropic API с WebSearch или просто тестовые данные
Шаг 5 — Первый запуск (10 мин):
- Запусти тестовый воркфлоу на свою email
- Проверь письмо в inbox
- Сделай скриншот — это твой первый агентный продукт
Инструменты и ресурсы
- Claude Code в VS Code — основной инструмент
- Anthropic Console — создание и управление API ключами
- Perplexity API — perplexity.ai/settings для получения ключа
- Google Cloud Console — Gmail и Sheets API (бесплатный tier)
- Resend — альтернатива Gmail API для отправки писем (проще настройка, у сервиса есть бесплатный уровень)
- SendGrid — промышленная рассылка; условия бесплатного доступа смотри на сайте
- Mailgun — ещё одна альтернатива для email API
- trigger.dev — деплой (деплой — публикация на сервере) воркфлоу на продакшн с расписанием
- Nano Banana (Gemini) — генерация инфографики через Gemini API
- Claude Code: команды — справочник по встроенным командам
Частые ошибки
Ошибка 1: Запуск без .gitignore
Создал проект, настроил .env с ключами, сделал git add . — и ключи утекли в репо. Всегда создавай .gitignore ДО первого коммита.
Ошибка 2: Пропуск Human Review Point
Написал "отправляй автоматически" в воркфлоу — агент отправил непроверенное письмо с фактической ошибкой всем клиентам. Первые 10-20 запусков — всегда ручная проверка перед отправкой.
Ошибка 3: Слишком общий начальный промпт
"Сделай мне newsletter" — без деталей о теме, аудитории, языке, стиле. Чем конкретнее начальный промпт, тем меньше итераций потом. Используй Plan Mode чтобы агент задал правильные вопросы.
Перекрёстные ссылки
- WAT-фреймворк — архитектура Workflow-Agent-Tools на которой построен этот воркфлоу
- Дебаггинг и самоисправление — что делать когда первый запуск сломается (а он сломается)
- API ключи и .env — детально про безопасную настройку
.envи хранение секретов - Деплой на Cloudflare — как задеплоить этот воркфлоу в продакшн на Cloudflare Workers
Ключевые выводы
Plan Mode позволяет начинать с размытой идеи — агент сам задаёт правильные вопросы и составляет план.
Брендовые ассеты + brand guidelines дают агенту контекст для создания контента в нужном стиле.
Human Review Point — обязательная остановка перед любым необратимым действием (отправка, публикация, платёж).
В конце у тебя не просто файлы — у тебя работающая система, которую можно упаковать в услугу или продукт.
Следующий урок
→ Дебаггинг и самоисправление — что делать, когда первый запуск сломается
Отметка хранится только в этом браузере и никуда не отправляется. Мой прогресс