The AgentConfig interface defines all configuration options for generated agents. This reference documents every field.
Full Type Definition 1 interface 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 Field Type Required Description namestring Yes Display name for the agent descriptionstring Yes Brief description of the agent's purpose domainAgentDomain Yes Agent's area of expertise templateIdstring No ID of selected template
AgentDomain 1 type AgentDomain =
2 | 'development'
3 | 'business'
4 | 'creative'
5 | 'data'
6 | 'knowledge' ; AI Provider Field Type Required Description sdkProviderSDKProvider Yes AI provider (claude, openai, copilot, or huggingface) modelstring No Specific model ID
Note: Credentials are configured via environment variables (ANTHROPIC_API_KEY, OPENAI_API_KEY, or GITHUB_TOKEN) when running the generated agent. Copilot agents can also reuse an existing Copilot CLI or gh CLI login.
SDKProvider 1 type SDKProvider = 'claude' | 'openai' | 'huggingface' | 'copilot' ; Capabilities Field Type Required Description toolsAgentTool[] Yes Enabled tools mcpServersMCPServer[] Yes MCP server configurations customInstructionsstring No Additional system prompt instructions
AgentTool 1 interface AgentTool {
2 id : string ;
3 name : string ;
4 description : string ;
5 category : ToolCategory ;
6 enabled : boolean ;
7 }
8
9 type ToolCategory =
10 | 'file'
11 | 'command'
12 | 'web'
13 | 'database'
14 | 'integration'
15 | 'custom' ; MCPServer 1 type MCPServer =
2 | MCPStdioServer
3 | MCPHttpServer
4 | MCPSseServer
5 | MCPSdkServer ;
6
7 interface 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
17 interface MCPHttpServer {
18 id : string ;
19 name : string ;
20 transportType : 'http' ;
21 url : string ;
22 headers ? : Record < string , string > ;
23 enabled : boolean ;
24 }
25
26 interface MCPSseServer {
27 id : string ;
28 name : string ;
29 transportType : 'sse' ;
30 url : string ;
31 headers ? : Record < string , string > ;
32 enabled : boolean ;
33 }
34
35 interface MCPSdkServer {
36 id : string ;
37 name : string ;
38 transportType : 'sdk' ;
39 serverModule : string ;
40 enabled : boolean ;
41 } Advanced Settings Field Type Default Description permissionsPermissionLevel balanced Tool permission level maxTokensnumber 4096 Max response tokens (1000-8000) temperaturenumber 0.7 Response randomness (0.0-1.0)
PermissionLevel 1 type PermissionLevel =
2 | 'restrictive'
3 | 'balanced'
4 | 'permissive' ; Project Output Field Type Required Description projectNamestring Yes Directory name packageNamestring Yes npm package name versionstring Yes Semantic version authorstring Yes Author name licensestring Yes License identifier repositorystring No Git repository URL