23 lines
710 B
Go
23 lines
710 B
Go
package prompt
|
|
|
|
// RoleDefinition represents a single agent role loaded from YAML.
|
|
type RoleDefinition struct {
|
|
ID string `yaml:"id"`
|
|
Name string `yaml:"name"`
|
|
Description string `yaml:"description"`
|
|
Tags []string `yaml:"tags"`
|
|
SystemPrompt string `yaml:"system_prompt"`
|
|
Defaults struct {
|
|
Models []string `yaml:"models"`
|
|
Capabilities []string `yaml:"capabilities"`
|
|
Expertise []string `yaml:"expertise"`
|
|
MaxTasks int `yaml:"max_tasks"`
|
|
} `yaml:"defaults"`
|
|
}
|
|
|
|
// RolesFile is the top-level structure for a roles YAML file.
|
|
type RolesFile struct {
|
|
Roles map[string]RoleDefinition `yaml:"roles"`
|
|
}
|
|
|