Суть урока
Представь личного помощника который никогда не спит, читает все входящие письма, готовится к встречам раньше тебя, и каждое утро кладёт тебе на стол уже переваренную сводку дня. Это не фантастика — это AI Executive Assistant которого ты построишь за этот урок. Подход универсальный: ту же логику можно собрать и на Trigger.dev, как в примерах ниже, и на готовых средствах Claude (см. блок «Готовые пути» ниже).
Термины урока: workflow (воркфлоу — рабочий процесс), agent (агент — автономный исполнитель), API (эй-пи-ай — интерфейс программирования), MCP (эм-си-пи — протокол контекста модели), prompt (промпт — запрос к AI), scheduled task (запланированная задача), cron (крон — планировщик задач по расписанию), token (токен — единица текста для AI).
Ключевые концепции
- Архитектура многофункционального AI-ассистента
- Email Monitor, Meeting Prep, Daily Brief, Task Manager как отдельные воркфлоу
- Интеграция с реальными инструментами через MCPs
- Деплой с расписанием и нотификациями в Telegram
Теория
Зачем Executive Assistant как проект для всего пройденного
К этому моменту ты знаешь: воркфлоу, суб-агенты, деплой на Trigger.dev, безопасность, управление контекстом, GitHub. Executive Assistant — это проект который объединяет всё это вместе в нечто реально полезное для себя.
Это не игрушка. Это система которую ты сможешь использовать каждый день. Её можно показать как пример своей работы: "Вот что я собрал для себя".
Что умеет Executive Assistant
Мониторинг email:
- Проверяет почту каждые 15-30 минут
- Классифицирует: срочное / важное / можно подождать / спам
- На простые автоматические запросы отвечает сам (подтверждение встречи, стандартные вопросы)
- Важное — помечает и отправляет тебе уведомление в Telegram
Подготовка к встречам (Meeting Prep):
- Читает твой Google Calendar
- За час до встречи: кто участники? Что компания делает? О чём мы говорили в прошлый раз?
- Генерирует бриф: контекст, ключевые вопросы, цели встречи
- Отправляет тебе в Telegram
Daily Brief:
- Каждое утро в 8:00
- Собирает: важные письма за ночь, встречи на сегодня, незакрытые задачи
- Пишет сводку в одном сообщении — 5 минут чтения вместо часа разгребания
Task Manager:
- Ведёт список задач в Notion или Google Docs
- Напоминает о дедлайнах
- Автоматически закрывает задачи когда видит подтверждение в email
Архитектура системы
┌─────────────────────────────────────────────────┐
│ Executive Assistant │
├──────────────┬──────────────┬────────────────────┤
│ Email Monitor│ Meeting Prep │ Daily Brief │
│ │ │ │
│ Trigger: │ Trigger: │ Trigger: │
│ каждые 30мин │ -1 час до │ ежедневно 08:00 │
│ │ встречи │ │
│ Инструменты: │ Инструменты: │ Инструменты: │
│ Gmail MCP │ Calendar MCP │ Gmail + Calendar │
│ │ Research API │ Notion MCP │
├──────────────┴──────────────┴────────────────────┤
│ Task Manager │
│ Trigger: ручной или по email-триггеру │
│ Инструменты: Notion MCP │
├─────────────────────────────────────────────────┤
│ Notifications Layer │
│ Telegram Bot │
└─────────────────────────────────────────────────┘Каждый блок — отдельный воркфлоу на Trigger.dev. Они не мешают друг другу и могут запускаться параллельно.
Готовые пути: расписание без своего сервера
Прежде чем писать воркфлоу с нуля, посмотри, что уже умеют готовые средства Claude (по состоянию на октябрь 2026; актуальное: Актуальное сейчас):
- Routines в Claude Code — задачи в облаке по расписанию, по вызову API или по событиям GitHub; работают при выключенном компьютере. Создаются через
/scheduleили на claude.ai/code/routines. Доступны на платных тарифах, статус research preview. - Задачи по расписанию в приложении для компьютера — запуск на твоём компьютере с доступом к локальным файлам.
/loop— повтор промпта внутри открытой сессии.- Claude Cowork — режим для работы со знаниями (не с кодом): умеет запускать задачи по расписанию (ежедневно, еженедельно, ежемесячно), например утренние брифинги и сводки.
- Коннекторы к Gmail, Google Calendar, Google Drive и другим сервисам подключаются как MCP.
Свой воркфлоу на Trigger.dev нужен, когда требуется полный контроль: свой сервер, свои интеграции, нестандартная логика. Подробнее о расписаниях: Loop и scheduled tasks.
Интеграции и MCPs
Gmail через MCP:
Вместо прямой работы с Gmail API (которая требует OAuth-настройки), используешь MCP который уже это реализовал:
// В воркфлоу на Trigger.dev:
const emails = await gmail.listMessages({
query: "is:unread after:" + yesterday,
maxResults: 50
});Google Calendar через MCP:
const meetings = await calendar.listEvents({
timeMin: new Date().toISOString(),
timeMax: endOfDay.toISOString(),
});Notion через MCP:
// Создать задачу:
await notion.createPage({
parent: { database_id: TASKS_DB_ID },
properties: {
Name: { title: [{ text: { content: taskName } }] },
Status: { select: { name: "Todo" } },
Due: { date: { start: dueDate } }
}
});Telegram для нотификаций:
await fetch(`https://api.telegram.org/bot${BOT_TOKEN}/sendMessage`, {
method: "POST",
body: JSON.stringify({
chat_id: CHAT_ID,
text: briefText,
parse_mode: "Markdown"
})
});Daily Brief — подробная архитектура
Это самый простой для понимания воркфлоу и хорошая точка входа для практики.
// src/trigger/daily-brief.ts (задачи лежат в папке /trigger)
import { schedules } from "@trigger.dev/sdk";
export const dailyBrief = schedules.task({
id: "daily-brief",
cron: {
pattern: "0 8 * * 1-5", // Пн-Пт в 08:00
timezone: "America/Toronto" // укажи свой часовой пояс (по умолчанию cron считается по UTC)
},
run: async (payload, { ctx }) => {
// 1. Собрать данные параллельно
const [emails, meetings, tasks] = await Promise.all([
getUnreadEmails({ since: "24h", maxCount: 20 }),
getTodayMeetings(),
getOpenTasks({ priority: "high" })
]);
// 2. Отдать агенту для анализа
const result = await generateText({
model: anthropic("claude-sonnet-5-5"), // Sonnet 5.5 на октябрь 2026, актуальные ID моделей: Актуальное сейчас
prompt: `
Ты личный ассистент. Создай краткий Daily Brief.
ВХОДЯЩИЕ ПИСЬМА (${emails.length}):
${emails.map(e => `- От: ${e.from}, Тема: ${e.subject}`).join('\n')}
ВСТРЕЧИ СЕГОДНЯ:
${meetings.map(m => `- ${m.time}: ${m.title} с ${m.attendees}`).join('\n')}
ОТКРЫТЫЕ ЗАДАЧИ (высокий приоритет):
${tasks.map(t => `- ${t.name} (дедлайн: ${t.due})`).join('\n')}
Формат:
1. 🔴 Срочно (требует внимания сегодня)
2. 📅 Встречи дня
3. ✅ Фокус задачи
Максимум 200 слов.
`
});
// 3. Отправить в Telegram
await sendTelegram(result.text);
return { sent: true, timestamp: new Date().toISOString() };
}
});Безопасность ассистента
Ассистент имеет доступ к личным данным: письмам, встречам, задачам. Это требует особого внимания:
- Минимальные разрешения: Gmail MCP только с разрешением "read", не "full access", если ассистент не должен отправлять письма
- Изолированный Telegram bot: отдельный бот только для этого ассистента, не тот что используешь для чего-то ещё
- Логи: записывай что агент делал — на случай если что-то пошло не так
- Фильтрация PII: перед отправкой данных в LLM — убедись что там нет паспортных данных, банковских реквизитов клиентов
- Тест на sandbox-данных: первый раз запускай на тестовом почтовом ящике
- Письма — недоверенный текст: во входящем письме может быть спрятана инструкция для ассистента (prompt injection). Не давай ассистенту отправлять письма и удалять данные без твоего подтверждения. Подробнее: защита от prompt injection
Практика
Задание: Создать воркфлоу Daily Brief
Настрой проект:
bash mkdir executive-assistant && cd executive-assistant npx trigger.dev@latest initСоздай базовый Daily Brief без реальных интеграций (используй mock-данные):
javascript // src/trigger/daily-brief.ts const mockEmails = [ { from: "[email protected]", subject: "Вопрос по проекту" }, { from: "[email protected]", subject: "Статус апдейт" } ]; const mockMeetings = [ { time: "10:00", title: "Созвон с командой", attendees: "3 человека" } ];Напиши промпт для Daily Brief — используй шаблон из урока
Запусти локально:
bash npx trigger.dev@latest devВызови воркфлоу вручную через Trigger.dev dashboard и посмотри результат в логах
Bonus: Подключи реальный Telegram bot (создай через @BotFather) и получи первый Daily Brief в мессенджер
Шаблон: Daily Routine промпт для Executive Assistant
Используй этот промпт как основу для ежедневного ассистента. Адаптируй под свои задачи:
Ты мой персональный Executive Assistant. Каждое утро ты готовишь Daily Brief. ПРОЦЕСС: 1. Проверь непрочитанные email за последние 12 часов 2. Прочитай календарь на сегодня 3. Проверь открытые задачи с высоким приоритетом ФОРМАТ DAILY BRIEF: 🔴 СРОЧНО (требует ответа до 12:00): - [список срочных писем/задач с контекстом] 📅 ВСТРЕЧИ СЕГОДНЯ: - [время] — [название] — [кто участвует] — [о чём (1 строка)] ✅ ФОКУС НА СЕГОДНЯ (топ-3 задачи): 1. [задача] — [почему важна] — [дедлайн] 2. ... 3. ... 📬 ОСТАЛЬНЫЕ ПИСЬМА (можно после обеда): - [краткое содержание каждого] 💡 РЕКОМЕНДАЦИЯ: [Один совет на основе расписания: "У тебя 3 встречи подряд с 14 до 17 — заблокируй 13:30-14:00 для подготовки"] Максимум 250 слов. Без воды. Только actionable информация.
Инструменты и ресурсы
- Trigger.dev — платформа для воркфлоу и расписаний
- Gmail API — программный доступ к почте — developers.google.com/gmail/api
- Google Calendar API — программный доступ к календарю — developers.google.com/calendar
- Gmail MCP — интеграция с почтой через MCP (упрощает OAuth)
- Google Calendar MCP — интеграция с календарём через MCP
- Notion — база задач и заметок — notion.com
- Notion MCP — интеграция с Notion через MCP
- @BotFather в Telegram — создание Telegram бота для нотификаций
- Anthropic SDK — для AI-генерации текста внутри воркфлоу
Ключевые выводы
Executive Assistant — это не один агент, это система из четырёх воркфлоу которые работают независимо и делают разные вещи. Daily Brief — лучшая точка входа: простой, полезный прямо сейчас, и хорошо объясняет клиентам что такое AI-автоматизация. Доступ к личным данным = усиленная ответственность за безопасность. Минимальные разрешения, изолированные токены, логи.
Связанные уроки
- Loop и scheduled tasks: как настроить расписание для Daily Brief и Meeting Prep
- MCP глубже: подключение Gmail, Calendar, Notion через MCP-серверы
Что дальше
→ Loop и scheduled tasks: когда что использовать
Отметка хранится только в этом браузере и никуда не отправляется. Мой прогресс