AgentConfig Schema

Complete reference for the AgentConfig type.

The AgentConfig interface defines all configuration options for generated agents. This reference documents every field.

Full Type Definition

1interface AgentConfig {
2  // Basic Information
3  name: string;
4  description: string;
5  domain: AgentDomain;
6  templateId?: string;
7
8  // AI Provider
9  sdkProvider: SDKProvider;
10  model?: string;
11
12  // Capabilities
13  tools: AgentTool[];
14  mcpServers: MCPServer[];
15  customInstructions: string;
16
17  // Advanced Settings
18  permissions: PermissionLevel;
19  maxTokens?: number;
20  temperature?: number;
21
22  // Project Output
23  projectName: string;
24  packageName: string;
25  version: string;
26  author: string;
27  license: string;
28  repository?: string;
29}

Field Reference

Basic Information

FieldTypeRequiredDescription
namestringYesDisplay name for the agent
descriptionstringYesBrief description of the agent's purpose
domainAgentDomainYesAgent's area of expertise
templateIdstringNoID of selected template

AgentDomain

1type AgentDomain =
2  | 'development'
3  | 'business'
4  | 'creative'
5  | 'data'
6  | 'knowledge';

AI Provider

FieldTypeRequiredDescription
sdkProviderSDKProviderYesAI provider (claude or openai)
modelstringNoSpecific model ID

Note: API keys are configured via environment variables (ANTHROPIC_API_KEY or OPENAI_API_KEY) when running the generated agent.

SDKProvider

1type SDKProvider = 'claude' | 'openai';

Capabilities

FieldTypeRequiredDescription
toolsAgentTool[]YesEnabled tools
mcpServersMCPServer[]YesMCP server configurations
customInstructionsstringNoAdditional system prompt instructions

AgentTool

1interface AgentTool {
2  id: string;
3  name: string;
4  description: string;
5  category: ToolCategory;
6  enabled: boolean;
7}
8
9type ToolCategory =
10  | 'file'
11  | 'command'
12  | 'web'
13  | 'database'
14  | 'integration'
15  | 'custom';

MCPServer

1type MCPServer =
2  | MCPStdioServer
3  | MCPHttpServer
4  | MCPSseServer
5  | MCPSdkServer;
6
7interface MCPStdioServer {
8  id: string;
9  name: string;
10  transportType: 'stdio';
11  command: string;
12  args?: string[];
13  env?: Record<string, string>;
14  enabled: boolean;
15}
16
17interface MCPHttpServer {
18  id: string;
19  name: string;
20  transportType: 'http';
21  url: string;
22  headers?: Record<string, string>;
23  enabled: boolean;
24}
25
26interface MCPSseServer {
27  id: string;
28  name: string;
29  transportType: 'sse';
30  url: string;
31  headers?: Record<string, string>;
32  enabled: boolean;
33}
34
35interface MCPSdkServer {
36  id: string;
37  name: string;
38  transportType: 'sdk';
39  serverModule: string;
40  enabled: boolean;
41}

Advanced Settings

FieldTypeDefaultDescription
permissionsPermissionLevelbalancedTool permission level
maxTokensnumber4096Max response tokens (1000-8000)
temperaturenumber0.7Response randomness (0.0-1.0)

PermissionLevel

1type PermissionLevel =
2  | 'restrictive'
3  | 'balanced'
4  | 'permissive';

Project Output

FieldTypeRequiredDescription
projectNamestringYesDirectory name
packageNamestringYesnpm package name
versionstringYesSemantic version
authorstringYesAuthor name
licensestringYesLicense identifier
repositorystringNoGit repository URL