File size: 713 Bytes
246d201
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from enum import Enum

from pydantic import BaseModel, Field


class MicroAgentType(str, Enum):
    """Type of microagent."""

    KNOWLEDGE = 'knowledge'
    REPO_KNOWLEDGE = 'repo'
    TASK = 'task'


class MicroAgentMetadata(BaseModel):
    """Metadata for all microagents."""

    name: str = 'default'
    type: MicroAgentType = Field(default=MicroAgentType.KNOWLEDGE)
    version: str = Field(default='1.0.0')
    agent: str = Field(default='CodeActAgent')
    triggers: list[str] = []  # optional, only exists for knowledge microagents


class TaskInput(BaseModel):
    """Input parameter for task-based agents."""

    name: str
    description: str
    required: bool = True