Формат на спецификация на агент

Формат на спецификация на агент

Агентите на Tajo се дефинират в маркдаун файлове. Всеки файл съдържа YAML frontmatter (идентичност, инструменти, ограничения) и маркдаун тяло (инструкции, стратегия, правила). Този формат е вдъхновен от производствени модели на агенти, използвани в системи за многоагентна оркестрация.

Структура на файла

---
name: agent-name
description: Какво прави този агент (максимум 160 знака)
version: 1.0.0
temperature: 0.2
max_tokens: 4096
tools:
- brevo_contacts
- brevo_email_campaign_management
- brevo_sms_campaigns
triggers:
- event: cart_abandoned
- schedule: "0 */4 * * *"
permissions:
- contacts:read
- email:send
- sms:send
---
# Наименование на агента
Инструкции за агента на естествен език...

Полета на Frontmatter

Задължителни полета

ПолеТипОписание
namestringУникален идентификатор в kebab-case (напр. cart-recovery-agent)
descriptionstringКакво прави агентът (максимум 160 знака)
versionstringСемантична версия (напр. 1.0.0)
toolsarrayМодули на Brevo MCP сървър, до които агентът може да получи достъп

Полета за поведение

ПолеТипПо подразбиранеОписание
temperaturefloat0.3Температура на LLM. По-ниска = по-детерминистична. Използвайте 0.1-0.2 за операции с данни, 0.3-0.5 за проектиране на кампании
max_tokensinteger4096Максимална дължина на отговора на оборот
modelstringclaude-sonnet-4-6LLM модел за използване

Полета за тригер

ПолеТипПо подразбиранеОписание
triggersarray[]Събития, разписания или webhook-и, активиращи агента
triggers[].eventstring-Наименование на събитие (напр. cart_abandoned, customer_created)
triggers[].schedulestring-Cron израз (напр. 0 9 * * * за ежедневно в 9:00)
triggers[].webhookstring-Път на webhook (напр. /agents/cart-recovery/trigger)
triggers[].conditionsarray[]Условия за филтриране на тригера
triggers[].debouncestring-Прозорец за debounce (напр. 5m, 1h)

Полета за разрешения

ПолеТипПо подразбиранеОписание
permissionsarray[]Необходими обхвати на разрешения за одитна следа
related_agentsarray[]ID на агенти, на които агентът може да делегира
escalationstring-Накъде да насочите при несигурност на агента (human, supervisor-agent)

Инструменти: Съпоставяне с MCP сървъри на Brevo

Полето tools препраща към наименованията на модули на Brevo MCP сървъри. Всеки модул се съпоставя с конкретна крайна точка на mcp.brevo.com:

tools:
# Контакти и сегментиране
- brevo_contacts # /v1/brevo_contacts/mcp
- brevo_lists # /v1/brevo_lists/mcp
- brevo_segments # /v1/brevo_segments/mcp
- brevo_attributes # /v1/brevo_attributes/mcp
# Кампании и съобщения
- brevo_email_campaign_management # /v1/brevo_email_campaign_management/mcp
- brevo_templates # /v1/brevo_templates/mcp
- brevo_sms_campaigns # /v1/brevo_sms_campaigns/mcp
- brevo_whatsapp_campaigns # /v1/brevo_whatsapp_campaigns/mcp
# Анализи
- brevo_campaign_analytics # /v1/brevo_campaign_analytics/mcp
# Продажби CRM
- brevo_deals # /v1/brevo_deals/mcp
- brevo_companies # /v1/brevo_companies/mcp
- brevo_tasks # /v1/brevo_tasks/mcp
- brevo_pipelines # /v1/brevo_pipelines/mcp
- brevo_notes # /v1/brevo_notes/mcp

Tip

Използвайте минималния набор инструменти, необходим на вашия агент. По-малко инструменти = по-добро разсъждение на AI и по-бързи отговори. Вижте Brevo MCP сървър за всички налични модули.

Тригери

Тригери за събития

Активирайте агента при нещо, случващо се в системата ви:

triggers:
- event: cart_abandoned
conditions:
- cart_value: "> 50"
- items_count: ">= 1"
- time_since_activity: "> 30m"
debounce: 5m

Тригери по разписание

Стартирайте агента по повтарящо се разписание:

triggers:
- schedule: "0 9 * * MON" # Всеки понеделник в 9:00
timezone: "America/New_York"
- schedule: "0 */4 * * *" # На всеки 4 часа
- schedule: "0 0 1 * *" # Първия ден на всеки месец

Тригери за webhook

Извикайте агента чрез HTTP:

triggers:
- webhook: /agents/win-back/trigger
method: POST
authentication: api_key

Маркдаун тяло: Инструкции

Тялото на спецификацията на агента е инструкции на естествен език. Пишете го като инструктаж на опитен маркетолог:

Структура

# Наименование на агента
Контекстен параграф, какво прави агентът и защо.
## Стратегия
Подход стъпка по стъпка, следван от агента.
## Рамка за вземане на решения
Правила за вземане на избори (напр. кой канал да използвате въз основа на стойността на количката).
## Правила
Твърди ограничения, неща, които агентът трябва ВИНАГИ или НИКОГА да прави.
## Шаблони
Препратки към ID на шаблони в Brevo, текст за SMS, шаблони за WhatsApp.
## Метрики
Събития за проследяване за измерване на успеха.

Писане на ефективни инструкции

Бъдете конкретни относно стратегията, не само целите:

## Лошо
Повторно ангажиране на напуснали клиенти.
## Добро
Когато клиент не е направил покупка от 90+ дни:
1. Проверете последните им 3 поръчки за предпочитания за продуктова категория
2. Създайте персонализирана отстъпка въз основа на AOV (10% ако AOV > $100, 15% ако < $100)
3. Изпратете имейл с тема, препращаща към предпочитаната категория
4. Изчакайте 72 часа, при липса на отваряне, изпратете SMS с код за отстъпка
5. Изчакайте 7 дни, при липса на покупка, маркирайте като дълбоко напуснал и спрете поредицата

Дефинирайте ограниченията изрично:

## Правила
- НИКОГА не изпращайте повече от 3 съобщения на поредица
- НИКОГА не се свързвайте с клиенти, отписали се
- ВИНАГИ проверявайте дали клиентът е конвертирал преди изпращане на следващата стъпка
- ВИНАГИ спазвайте тихите часове (без SMS 21:00-9:00 местно време)
- При несигурност в решението, насочете към преглед от човек

Вериги от много агенти

За сложни работни потоци съставяйте множество агенти в верига. Всеки агент обработва една фаза, предавайки контекст на следващия:

chain.yaml
name: quarterly-retention-campaign
steps:
- agent: customer-intelligence
input: |
Analyze customer segments for Q2 retention campaign.
Goal: {task}
Identify:
1. At-risk customers (declining purchase frequency)
2. VIP customers (top 10% by LTV)
3. Win-back candidates (90+ days since last order)
- agent: campaign-designer
input: |
Design retention campaigns for these segments:
{previous}
Create differentiated approaches per segment:
- At-risk: gentle nudge with product recommendations
- VIP: exclusive early access or loyalty reward
- Win-back: aggressive discount with urgency
- agent: campaign-executor
input: |
Execute these campaigns via Brevo:
{previous}
Use appropriate channels per segment preference.
Set up A/B tests for subject lines.
Schedule sends for optimal times.
- agent: campaign-reporter
input: |
Generate the retention campaign launch report:
{previous}
Include: segments targeted, campaigns created,
expected reach, A/B test configurations.

Променливи на верига

ПроменливаОписание
{task}Оригиналната цел/заявка
{previous}Изходът от предишната стъпка
{step_N}Изходът от стъпка N (с индекс 0)
{artifacts_dir}Директория за файлови изходи

Предварително изградени спецификации на агенти

Оркестратор на кампании

---
name: campaign-orchestrator
description: Design and execute multi-channel campaigns from natural language prompts
version: 2.0.0
temperature: 0.3
tools:
- brevo_contacts
- brevo_segments
- brevo_email_campaign_management
- brevo_templates
- brevo_sms_campaigns
- brevo_whatsapp_campaigns
- brevo_campaign_analytics
triggers:
- webhook: /agents/campaign/trigger
method: POST
---
# Оркестратор на кампании
Вие сте специалист по многоканални маркетингови кампании.
При даден кратък преглед на кампания проектирайте, изградете и пускайте
кампании в имейл, SMS и WhatsApp чрез Brevo.
## Процес
1. Разберете краткия преглед на кампанията (аудитория, съобщение, цел, времева линия)
2. Създайте или идентифицирайте целевия сегмент в Brevo
3. Изберете най-добрия(те) канал(и) въз основа на данни за предпочитания на аудиторията
4. Изградете съдържание на кампанията с помощта на съществуващи шаблони или ги създайте нови
5. Конфигурирайте разписание за изпращане и A/B тестове
6. Пуснете и отчетете начални метрики за доставка
## Избор на канал
- Имейл: по подразбиране за всички кампании
- SMS: добавяйте за оферти чувствителни към времето или възстановяване на количка
- WhatsApp: добавяйте за разговорни кампании или сегменти с висока стойност
## Правила
- ВИНАГИ преглеждайте кампаниите преди изпращане
- НИКОГА не изпращайте на отписани контакти
- ВИНАГИ настройвайте проследяване за атрибутиране на кампании
- Максимум 2 варианта за A/B тест на кампания

Агент за клиентско разузнаване

---
name: customer-intelligence
description: Autonomous segmentation, RFM scoring, and churn prediction
version: 1.5.0
temperature: 0.2
tools:
- brevo_contacts
- brevo_segments
- brevo_attributes
- brevo_lists
- brevo_campaign_analytics
triggers:
- schedule: "0 6 * * MON"
timezone: "UTC"
---
# Агент за клиентско разузнаване
Анализирате клиентски данни в Brevo, за да генерирате
приложими сегменти и прозрения за маркетингови екипи.
## Седмичен анализ
1. Извличайте данни за активността на контакти от анализите на кампании
2. Изчислявайте RFM оценки (Recency, Frequency, Monetary)
3. Идентифицирайте промени в сегментите (клиенти, движещи се между нива)
4. Маркирайте рискове от напускане (намаляващо ангажиране за 4+ седмици)
5. Генерирайте препоръки за сегменти за предстоящи кампании
## Дефиниции на сегменти
- Шампиони: R=5, F=5, M=5, скорошни, чести, с висока стойност
- Лоялни: R>=3, F>=4, M>=3, последователни купувачи
- В риск: R<=2, F>=3, M>=3, бяха лоялни, сега намаляват
- Hibernating: R=1, F>=2, M>=2, отдавна, бяха активни
- Нови: първа покупка в последните 30 дни
## Изход
Генерирайте маркдаун отчет с:
- Размери на сегменти и промени за седмицата
- Топ 10 клиента в риск по LTV
- Препоръчани действия по сегмент
- Предложени теми на кампании за седмицата

Внедряване

Програмно стартиране на агент

import { TajoAgent } from "@tajo/agent-sdk";
const agent = new TajoAgent({
specPath: "./agents/cart-recovery-agent.md",
brevoToken: process.env.BREVO_MCP_TOKEN,
model: "claude-sonnet-4-6",
// Свържете само MCP сървърите, изброени в полето tools на агента
autoConnectServers: true,
});
const result = await agent.run(
"Recover abandoned carts over $50 from the last 4 hours"
);
console.log(result.summary);
console.log(result.toolCalls); // Пълна одитна следа
console.log(result.metrics); // Проследени събития

Стартиране чрез Claude Code

Terminal window
# Насочете към вашата спецификация на агент и нека Claude я изпълни
claude "Run the agent defined in ./agents/cart-recovery-agent.md for today's abandoned carts"

Планиране с cron

Terminal window
# Стартирайте агента за клиентско разузнаване всеки понеделник в 6:00
0 6 * * MON claude --print "Run ./agents/customer-intelligence.md weekly analysis" >> /var/log/tajo-agents.log 2>&1

Следващи стъпки

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI асистент

Здравейте! Попитайте ме за документацията.

Започнете безплатно с Brevo