Documentation
¶
Index ¶
- type ADL
- type Agent
- type AuthConfig
- type Capabilities
- type Card
- type DeploymentConfig
- type DevContainerConfig
- type FloxConfig
- type GeneratedMetadata
- type GoConfig
- type Hooks
- type Language
- type Metadata
- type RustConfig
- type SCM
- type SandboxConfig
- type Server
- type Skill
- type Spec
- type TypeScriptConfig
- type Validator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ADL ¶
type ADL struct {
APIVersion string `yaml:"apiVersion" json:"apiVersion"`
Kind string `yaml:"kind" json:"kind"`
Metadata Metadata `yaml:"metadata" json:"metadata"`
Spec Spec `yaml:"spec" json:"spec"`
}
ADL represents the complete Agent Definition Language structure
type Agent ¶
type Agent struct {
Provider string `yaml:"provider" json:"provider"`
Model string `yaml:"model" json:"model"`
SystemPrompt string `yaml:"systemPrompt" json:"systemPrompt"`
MaxTokens int `yaml:"maxTokens" json:"maxTokens"`
Temperature float64 `yaml:"temperature" json:"temperature"`
}
Agent configuration for AI providers
type AuthConfig ¶
type AuthConfig struct {
Enabled bool `yaml:"enabled" json:"enabled"`
}
AuthConfig for server authentication
type Capabilities ¶
type Capabilities struct {
Streaming bool `yaml:"streaming" json:"streaming"`
PushNotifications bool `yaml:"pushNotifications" json:"pushNotifications"`
StateTransitionHistory bool `yaml:"stateTransitionHistory" json:"stateTransitionHistory"`
}
Capabilities defines what the agent can do
type Card ¶ added in v0.12.0
type Card struct {
ProtocolVersion string `yaml:"protocolVersion,omitempty" json:"protocolVersion,omitempty"`
URL string `yaml:"url,omitempty" json:"url,omitempty"`
PreferredTransport string `yaml:"preferredTransport,omitempty" json:"preferredTransport,omitempty"`
DefaultInputModes []string `yaml:"defaultInputModes,omitempty" json:"defaultInputModes,omitempty"`
DefaultOutputModes []string `yaml:"defaultOutputModes,omitempty" json:"defaultOutputModes,omitempty"`
DocumentationURL string `yaml:"documentationUrl,omitempty" json:"documentationUrl,omitempty"`
IconURL string `yaml:"iconUrl,omitempty" json:"iconUrl,omitempty"`
}
Card represents the agent card configuration
type DeploymentConfig ¶ added in v0.7.0
type DeploymentConfig struct {
Type string `yaml:"type,omitempty" json:"type,omitempty"`
}
DeploymentConfig for deployment platform settings
type DevContainerConfig ¶ added in v0.7.0
type DevContainerConfig struct {
Enabled bool `yaml:"enabled" json:"enabled"`
}
DevContainerConfig for Dev Container environment settings
type FloxConfig ¶ added in v0.7.0
type FloxConfig struct {
Enabled bool `yaml:"enabled" json:"enabled"`
}
FloxConfig for Flox environment settings
type GeneratedMetadata ¶
type GeneratedMetadata struct {
GeneratedAt time.Time `json:"generatedAt"`
CLIVersion string `json:"cliVersion"`
Template string `json:"template"`
ADLFile string `json:"adlFile"`
}
GeneratedMetadata contains information about the generation
type GoConfig ¶
type GoConfig struct {
Module string `yaml:"module" json:"module"`
Version string `yaml:"version" json:"version"`
}
GoConfig for Go-specific settings
type Hooks ¶ added in v0.9.0
type Hooks struct {
Post []string `yaml:"post,omitempty" json:"post,omitempty"`
}
Hooks contains lifecycle hooks for the generation process
type Language ¶
type Language struct {
Go *GoConfig `yaml:"go,omitempty" json:"go,omitempty"`
TypeScript *TypeScriptConfig `yaml:"typescript,omitempty" json:"typescript,omitempty"`
Rust *RustConfig `yaml:"rust,omitempty" json:"rust,omitempty"`
}
Language configuration for different programming languages
type Metadata ¶
type Metadata struct {
Name string `yaml:"name" json:"name"`
Description string `yaml:"description" json:"description"`
Version string `yaml:"version" json:"version"`
}
Metadata contains agent metadata
type RustConfig ¶ added in v0.6.0
type RustConfig struct {
PackageName string `yaml:"packageName" json:"packageName"`
Version string `yaml:"version" json:"version"`
Edition string `yaml:"edition" json:"edition"`
}
RustConfig for Rust-specific settings
type SCM ¶
type SCM struct {
Provider string `yaml:"provider" json:"provider"`
URL string `yaml:"url,omitempty" json:"url,omitempty"`
}
SCM contains source control management configuration
type SandboxConfig ¶ added in v0.7.0
type SandboxConfig struct {
Flox *FloxConfig `yaml:"flox,omitempty" json:"flox,omitempty"`
DevContainer *DevContainerConfig `yaml:"devcontainer,omitempty" json:"devcontainer,omitempty"`
}
SandboxConfig for sandbox environment settings
type Server ¶
type Server struct {
Port int `yaml:"port" json:"port"`
Debug bool `yaml:"debug" json:"debug"`
Auth *AuthConfig `yaml:"auth,omitempty" json:"auth,omitempty"`
}
Server configuration
type Skill ¶ added in v0.12.0
type Skill struct {
ID string `yaml:"id" json:"id"`
Name string `yaml:"name" json:"name"`
Description string `yaml:"description" json:"description"`
Tags []string `yaml:"tags" json:"tags"`
Examples []string `yaml:"examples,omitempty" json:"examples,omitempty"`
InputModes []string `yaml:"inputModes,omitempty" json:"inputModes,omitempty"`
OutputModes []string `yaml:"outputModes,omitempty" json:"outputModes,omitempty"`
Schema map[string]any `yaml:"schema" json:"schema"`
Implementation string `yaml:"implementation,omitempty" json:"implementation,omitempty"`
}
Skill represents a distinct capability or function that an agent can perform
type Spec ¶
type Spec struct {
Capabilities *Capabilities `yaml:"capabilities,omitempty" json:"capabilities,omitempty"`
Card *Card `yaml:"card,omitempty" json:"card,omitempty"`
Agent *Agent `yaml:"agent,omitempty" json:"agent,omitempty"`
Skills []Skill `yaml:"skills,omitempty" json:"skills,omitempty"`
Server Server `yaml:"server" json:"server"`
Language *Language `yaml:"language,omitempty" json:"language,omitempty"`
SCM *SCM `yaml:"scm,omitempty" json:"scm,omitempty"`
Sandbox *SandboxConfig `yaml:"sandbox,omitempty" json:"sandbox,omitempty"`
Deployment *DeploymentConfig `yaml:"deployment,omitempty" json:"deployment,omitempty"`
Hooks *Hooks `yaml:"hooks,omitempty" json:"hooks,omitempty"`
}
Spec contains the agent specification
type TypeScriptConfig ¶
type TypeScriptConfig struct {
PackageName string `yaml:"packageName" json:"packageName"`
NodeVersion string `yaml:"nodeVersion" json:"nodeVersion"`
}
TypeScriptConfig for TypeScript-specific settings
type Validator ¶
type Validator struct {
// contains filtered or unexported fields
}
Validator validates ADL files against the schema
func NewValidator ¶
func NewValidator() *Validator
NewValidator creates a new validator with the embedded schema
func (*Validator) ValidateFile ¶
ValidateFile validates an ADL file