Agentspecifikationsformat

Agentspecifikationsformat

Tajo-agenter definieras i markdown-filer. Varje fil innehåller YAML frontmatter (identitet, verktyg, begränsningar) och en markdown-brödtext (instruktioner, strategi, regler). Det här formatet är inspirerat av produktionsagentmönster som används i multi-agent-orkestreringssystem.

Filstruktur

---
name: agent-name
description: What this agent does (max 160 chars)
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
---
# Agent Name
Instructions for the agent in natural language...

Frontmatter-fält

Obligatoriska fält

FältTypBeskrivning
namesträngUnik identifierare i kebab-case (t.ex. cart-recovery-agent)
descriptionsträngVad agenten gör (max 160 tecken)
versionsträngSemantisk version (t.ex. 1.0.0)
toolsarrayBrevo MCP-servermoduler som agenten kan få åtkomst till

Beteendefält

FältTypStandardBeskrivning
temperaturedecimaltal0.3LLM-temperatur. Lägre = mer deterministisk. Använd 0.1-0.2 för dataoperationer, 0.3-0.5 för kampanjdesign
max_tokensheltal4096Maximal svarslängd per tur
modelsträngclaude-sonnet-4-6LLM-modell som ska användas

Utlösarfält

FältTypStandardBeskrivning
triggersarray[]Händelser, scheman eller webhooks som aktiverar agenten
triggers[].eventsträng-Händelsenamn (t.ex. cart_abandoned, customer_created)
triggers[].schedulesträng-Cron-uttryck (t.ex. 0 9 * * * för dagligen kl. 9)
triggers[].webhooksträng-Webhook-sökväg (t.ex. /agents/cart-recovery/trigger)
triggers[].conditionsarray[]Filtervillkor för utlösaren
triggers[].debouncesträng-Debounce-fönster (t.ex. 5m, 1h)

Behörighetsfält

FältTypStandardBeskrivning
permissionsarray[]Obligatoriska behörighetsomfång för granskningsspår
related_agentsarray[]Agent-ID:n som agenten kan delegera till
escalationsträng-Vart man ska dirigera när agenten är osäker (human, supervisor-agent)

Verktyg: Mappning till Brevo MCP-servrar

Fältet tools refererar till Brevo MCP-servermodulnamn. Varje modul mappar till ett specifikt endpoint på mcp.brevo.com:

tools:
# Contacts & Segmentation
- brevo_contacts # /v1/brevo_contacts/mcp
- brevo_lists # /v1/brevo_lists/mcp
- brevo_segments # /v1/brevo_segments/mcp
- brevo_attributes # /v1/brevo_attributes/mcp
# Campaigns & Messaging
- 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
# Analytics
- brevo_campaign_analytics # /v1/brevo_campaign_analytics/mcp
# Sales 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

Använd den minimala uppsättningen verktyg som din agent behöver. Färre verktyg = bättre AI-resonemang och snabbare svar. Se Brevo MCP-server för alla tillgängliga moduler.

Utlösare

Händelseutlösare

Aktivera agenten när något händer i ditt system:

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

Schemautlösare

Kör agenten på ett återkommande schema:

triggers:
- schedule: "0 9 * * MON" # Every Monday at 9am
timezone: "America/New_York"
- schedule: "0 */4 * * *" # Every 4 hours
- schedule: "0 0 1 * *" # First day of each month

Webhook-utlösare

Anropa agenten via HTTP:

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

Markdown-brödtext: Instruktioner

Brödtexten i agentspecifikationen är instruktioner på naturligt språk. Skriv det som om du briefar en skicklig marknadsförare:

Struktur

# Agent Name
Context paragraph, what this agent does and why.
## Strategy
Step-by-step approach the agent should follow.
## Decision Framework
Rules for making choices (e.g., which channel to use based on cart value).
## Rules
Hard constraints, things the agent must ALWAYS or NEVER do.
## Templates
References to Brevo template IDs, SMS copy, WhatsApp templates.
## Metrics
Events to track for measuring success.

Skriva effektiva instruktioner

Var specifik om strategi, inte bara mål:

## Dåligt
Re-engage churned customers.
## Bra
When a customer hasn't purchased in 90+ days:
1. Check their last 3 orders for product category preferences
2. Create a personalized discount based on AOV (10% if AOV > $100, 15% if < $100)
3. Send email with subject line referencing their preferred category
4. Wait 72 hours, if no open, send SMS with discount code
5. Wait 7 days, if no purchase, mark as deep-churn and stop sequence

Definiera skyddsräcken explicit:

## Rules
- NEVER send more than 3 messages per sequence
- NEVER contact customers who unsubscribed
- ALWAYS check if the customer converted before sending the next step
- ALWAYS respect quiet hours (no SMS 9pm-9am local time)
- If unsure about a decision, escalate to human review

Multi-agentkedjor

För komplexa arbetsflöden kan du komponera flera agenter i en kedja. Varje agent hanterar en fas och skickar kontext till nästa:

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.

Kedjevariabler

VariabelBeskrivning
{task}Det ursprungliga målet/förfrågan
{previous}Utdata från föregående steg
{step_N}Utdata från steg N (0-indexerat)
{artifacts_dir}Katalog för filudata

Förbyggda agentspecifikationer

Kampanjorkestrator

---
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
---
# Campaign Orchestrator
You are a multi-channel marketing campaign specialist.
Given a campaign brief, you design, build, and launch
campaigns across email, SMS, and WhatsApp via Brevo.
## Process
1. Parse the campaign brief (audience, message, goal, timeline)
2. Create or identify the target segment in Brevo
3. Select the best channel(s) based on audience preference data
4. Build campaign content using existing templates or creating new ones
5. Configure send schedule and A/B tests
6. Launch and report initial delivery metrics
## Channel Selection
- Email: default for all campaigns
- SMS: add for time-sensitive offers or cart recovery
- WhatsApp: add for conversational campaigns or high-value segments
## Rules
- ALWAYS preview campaigns before sending
- NEVER send to unsubscribed contacts
- ALWAYS set up tracking for campaign attribution
- Maximum 2 A/B test variants per campaign

Kundintelligenssagent

---
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"
---
# Customer Intelligence Agent
You analyze customer data in Brevo to generate actionable
segments and insights for marketing teams.
## Weekly Analysis
1. Pull contact activity data from campaign analytics
2. Calculate RFM scores (Recency, Frequency, Monetary)
3. Identify segment shifts (customers moving between tiers)
4. Flag churn risks (declining engagement over 4+ weeks)
5. Generate segment recommendations for upcoming campaigns
## Segment Definitions
- Champions: R=5, F=5, M=5, recent, frequent, high-value
- Loyal: R>=3, F>=4, M>=3, consistent buyers
- At Risk: R<=2, F>=3, M>=3, were loyal, now fading
- Hibernating: R=1, F>=2, M>=2, long gone, were once active
- New: first purchase in last 30 days
## Output
Produce a markdown report with:
- Segment sizes and week-over-week changes
- Top 10 at-risk customers by LTV
- Recommended actions per segment
- Suggested campaign themes for the week

Distribution

Köra en agent programmatiskt

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",
// Only connect the MCP servers listed in the agent's tools field
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); // Full audit trail
console.log(result.metrics); // Events tracked

Köra via Claude Code

Terminal window
# Point to your agent spec and let Claude execute it
claude "Run the agent defined in ./agents/cart-recovery-agent.md for today's abandoned carts"

Schemaläggning med Cron

Terminal window
# Run the customer intelligence agent every Monday at 6am
0 6 * * MON claude --print "Run ./agents/customer-intelligence.md weekly analysis" >> /var/log/tajo-agents.log 2>&1

Nästa steg

Subscribe to updates

developer-docs

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

AI-assistent

Hej! Fråga mig om dokumentationen.

Börja gratis med Brevo