Domain sections attach business context to your traces, giving Maestro richer signal for evaluation. Each section is a TypeScript interface you can pass as a property on sendTask(), sendTaskData(), or via TraceBuilder.setSection().
How to Use
// As a property on sendTask()
await client.sendTask({
name: 'Handle ticket',
description: 'Resolved a billing inquiry.',
duration: 3.2,
customer: { customerName: 'Acme Corp', customerEmail: '[email protected]' },
support: { issueType: 'billing', priority: 'high', resolution: 'Refund issued' },
});
// With TraceBuilder
const trace = new TraceBuilder('Handle ticket', 'Resolved a billing inquiry.');
trace.setSection('customer', { customerName: 'Acme Corp' });
trace.setSection('support', { issueType: 'billing', priority: 'high' });
Customer
Context about the customer the agent is serving.
import type { Customer } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
customerName | string | undefined | Customer’s name |
customerEmail | string | undefined | Customer’s email |
customerPhone | string | undefined | Customer’s phone number |
customerAddress | string | undefined | Customer’s address |
clientCompany | string | undefined | Company name |
clientIndustry | string | undefined | Industry vertical |
Example use case: Customer support agent, account management bot.
Support
Context for support/helpdesk interactions.
import type { Support } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
callId | string | undefined | Ticket or call identifier |
issueDescription | string | undefined | Description of the issue |
issueType | string | undefined | Category (billing, technical, etc.) |
resolution | string | undefined | How the issue was resolved |
priority | string | undefined | Priority level |
followUpRequired | string | undefined | Whether follow-up is needed |
agentNotes | string | undefined | Internal notes |
Example use case: Ticket classifier, auto-resolution agent.
Sales
Context for sales pipeline activities.
import type { Sales } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
leadSource | string | undefined | Where the lead came from |
salesStage | string | undefined | Pipeline stage |
dealValue | string | undefined | Deal value |
conversionRate | string | undefined | Conversion rate |
salesNotes | string | undefined | Sales notes |
Example use case: Lead scoring agent, proposal generator.
Marketing
Context for marketing campaigns and activities.
import type { Marketing } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
campaignName | string | undefined | Campaign identifier |
campaignType | string | undefined | Type (email, social, ads, etc.) |
targetAudience | string | undefined | Target demographic |
marketingChannel | string | undefined | Distribution channel |
engagementMetrics | string | undefined | Engagement data |
conversionMetrics | string | undefined | Conversion data |
Example use case: Content generator, audience segmentation agent.
Content
Context for content creation tasks.
import type { Content } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
contentType | string | undefined | Type (blog, email, social post, etc.) |
contentFormat | string | undefined | Format (markdown, HTML, plain text) |
contentLength | string | undefined | Length or word count |
contentTopic | string | undefined | Topic or subject |
targetPlatform | string | undefined | Publishing platform |
Example use case: Blog writer, social media manager, newsletter generator.
Research
Context for research and analysis tasks.
import type { Research } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
researchTopic | string | undefined | Topic being researched |
researchMethod | string | undefined | Methodology used |
dataSources | string | undefined | Sources consulted |
researchFindings | string | undefined | Summary of findings |
analysisType | string | undefined | Type of analysis |
Example use case: Market research agent, competitive analysis bot.
Project
Context for project management activities.
import type { Project } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
projectName | string | undefined | Project identifier |
projectPhase | string | undefined | Current phase |
deliverables | string | undefined | Expected deliverables |
stakeholders | string | undefined | Key stakeholders |
projectStatus | string | undefined | Current status |
milestoneAchieved | string | undefined | Milestone completed |
taskPriority | string | undefined | Task priority |
resourceUtilization | string | undefined | Resource usage |
riskAssessment | string | undefined | Risk level |
Example use case: Sprint planning agent, status report generator.
Development
Context for software development tasks.
import type { Development } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
programmingLanguage | string | undefined | Language used |
frameworkUsed | string | undefined | Framework or library |
bugsFound | string | undefined | Number of bugs found |
bugsFixed | string | undefined | Number of bugs fixed |
testCoverage | string | undefined | Test coverage percentage |
performanceMetrics | string | undefined | Performance data |
deploymentStatus | string | undefined | Deployment state |
technicalDebt | string | undefined | Tech debt assessment |
Example use case: Code review agent, test generation bot, CI/CD automation.
Executive
Context for executive and meeting activities.
import type { Executive } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
meetingType | string | undefined | Type of meeting |
attendeesCount | string | undefined | Number of attendees |
agendaItems | string | undefined | Meeting agenda |
actionItems | string | undefined | Action items generated |
calendarConflicts | string | undefined | Scheduling conflicts |
Example use case: Meeting summarizer, agenda planner, action item tracker.
General
Catch-all section for general-purpose context.
import type { General } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
toolsUsed | string | undefined | Tools the agent used |
agentNotes | string | undefined | Free-form agent notes |
Example use case: Any agent that doesn’t fit a specific domain.
TimeTracking
Simple start/end time tracking.
import type { TimeTracking } from 'infinium-o2';
| Field | Type | Description |
|---|---|---|
startTime | string | undefined | ISO 8601 start timestamp |
endTime | string | undefined | ISO 8601 end timestamp |
Multiple Sections
You can attach multiple domain sections to a single trace:
await client.sendTask({
name: 'Research & report',
description: 'Researched market trends and generated a report.',
duration: 12.5,
research: { researchTopic: 'AI market trends', dataSources: '5 reports' },
content: { contentType: 'report', contentLength: '2500 words' },
customer: { clientCompany: 'Acme Corp', clientIndustry: 'Technology' },
});