schema

package
v0.7.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

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 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 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 Spec

type Spec struct {
	Capabilities *Capabilities     `yaml:"capabilities,omitempty" json:"capabilities,omitempty"`
	Agent        *Agent            `yaml:"agent,omitempty" json:"agent,omitempty"`
	Tools        []Tool            `yaml:"tools,omitempty" json:"tools,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"`
}

Spec contains the agent specification

type Tool

type Tool struct {
	Name           string                 `yaml:"name" json:"name"`
	Description    string                 `yaml:"description" json:"description"`
	Schema         map[string]interface{} `yaml:"schema" json:"schema"`
	Implementation string                 `yaml:"implementation,omitempty" json:"implementation,omitempty"`
}

Tool represents a function the agent can call

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

func (v *Validator) ValidateFile(filePath string) error

ValidateFile validates an ADL file

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL