Tajo 사전 이용 신청

이름과 이메일 주소 또는 전화번호를 입력해 주세요. Tajo 이용 방법을 안내해 드립니다.

에이전트 명세 형식

Tajo 에이전트는 마크다운 파일로 정의합니다. 각 파일은 YAML 프론트매터(신원, 도구, 제약)와 마크다운 본문(지침, 전략, 규칙)으로 구성됩니다. 이 형식은 멀티 에이전트 오케스트레이션 시스템에서 실제로 사용되는 에이전트 패턴에서 착안했습니다.

파일 구조

---
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...

프론트매터 필드

필수 필드

필드타입설명
namestringkebab-case 형식의 고유 식별자 (예: cart-recovery-agent)
descriptionstring이 에이전트가 하는 일 (최대 160자)
versionstring시맨틱 버전 (예: 1.0.0)
toolsarray이 에이전트가 접근할 수 있는 Brevo MCP 서버 모듈

동작 필드

필드타입기본값설명
temperaturefloat0.3LLM temperature. 값이 낮을수록 결정적입니다. 데이터 작업에는 0.1-0.2, 캠페인 설계에는 0.3-0.5를 사용하세요
max_tokensinteger4096턴당 최대 응답 길이
modelstringclaude-sonnet-4-6사용할 LLM 모델

트리거 필드

필드타입기본값설명
triggersarray[]이 에이전트를 실행시키는 이벤트, 일정, 웹훅
triggers[].eventstring-이벤트 이름 (예: cart_abandoned, customer_created)
triggers[].schedulestring-Cron 표현식 (예: 매일 오전 9시는 0 9 * * *)
triggers[].webhookstring-웹훅 경로 (예: /agents/cart-recovery/trigger)
triggers[].conditionsarray[]트리거에 적용할 필터 조건
triggers[].debouncestring-디바운스 구간 (예: 5m, 1h)

권한 필드

필드타입기본값설명
permissionsarray[]감사 추적을 위해 필요한 권한 스코프
related_agentsarray[]이 에이전트가 작업을 위임할 수 있는 에이전트 ID
escalationstring-에이전트가 판단하기 어려울 때 넘길 대상 (human, supervisor-agent)

도구: Brevo MCP 서버와의 매핑

tools 필드는 Brevo MCP 서버 모듈 이름을 참조합니다. 각 모듈은 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

에이전트에 필요한 최소한의 도구만 사용하세요. 도구가 적을수록 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" # Every Monday at 9am
timezone: "America/New_York"
- schedule: "0 */4 * * *" # Every 4 hours
- schedule: "0 0 1 * *" # First day of each month

웹훅 트리거

HTTP로 에이전트를 호출합니다.

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

마크다운 본문: 지침

에이전트 명세의 본문은 자연어로 쓴 지침입니다. 숙련된 마케터에게 업무를 설명한다는 마음으로 작성하세요.

구조

# 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.

효과적인 지침 작성법

목표만 적지 말고 전략을 구체적으로 명시하세요.

## Bad
Re-engage churned customers.
## Good
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

가드레일을 명시적으로 정의하세요.

## 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

멀티 에이전트 체인

복잡한 워크플로에서는 여러 에이전트를 체인으로 구성합니다. 각 에이전트가 한 단계를 담당하고 컨텍스트를 다음 단계로 넘깁니다.

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
---
# 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

고객 인텔리전스 에이전트

---
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

배포

프로그래밍 방식으로 에이전트 실행하기

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

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"

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

다음 단계

Tajo 사전 이용 신청

이름과 이메일 주소 또는 전화번호를 입력해 주세요. Tajo 이용 방법을 안내해 드립니다.

자동 감지
AI 어시스턴트

안녕하세요! 문서에 대해 무엇이든 물어보세요.