Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the agent v1alpha1 API group. +kubebuilder:object:generate=true +groupName=kagent.dev
Index ¶
- Constants
- Variables
- type A2AConfig
- type Agent
- type AgentList
- type AgentSkill
- type AgentSpec
- type AgentStatus
- type AgentType
- type AnthropicConfig
- type AnthropicVertexAIConfig
- type AzureOpenAIConfig
- type BYOAgentSpec
- type BaseVertexAIConfig
- type ByoDeploymentSpec
- type DeclarativeAgentSpec
- type DeclarativeDeploymentSpec
- type GeminiConfig
- type GeminiVertexAIConfig
- type MCPTool
- type McpServerTool
- type ModelConfig
- type ModelConfigList
- type ModelConfigSpec
- type ModelConfigStatus
- type ModelProvider
- type OllamaConfig
- type OpenAIConfig
- type OpenAIReasoningEffort
- type RemoteMCPServer
- type RemoteMCPServerList
- type RemoteMCPServerProtocol
- type RemoteMCPServerSpec
- func (in *RemoteMCPServerSpec) DeepCopy() *RemoteMCPServerSpec
- func (in *RemoteMCPServerSpec) DeepCopyInto(out *RemoteMCPServerSpec)
- func (s *RemoteMCPServerSpec) ResolveHeaders(ctx context.Context, client client.Client, namespace string) (map[string]string, error)
- func (t *RemoteMCPServerSpec) Scan(src any) error
- func (t RemoteMCPServerSpec) Value() (driver.Value, error)
- type RemoteMCPServerStatus
- type SharedDeploymentSpec
- type Tool
- type ToolProviderType
- type TypedLocalReference
- type ValueRef
- type ValueSource
- type ValueSourceType
Constants ¶
const ( AgentConditionTypeAccepted = "Accepted" AgentConditionTypeReady = "Ready" )
const (
ModelConfigConditionTypeAccepted = "Accepted"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "kagent.dev", Version: "v1alpha2"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type A2AConfig ¶
type A2AConfig struct { // +kubebuilder:validation:MinItems=1 Skills []AgentSkill `json:"skills,omitempty"` }
func (*A2AConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new A2AConfig.
func (*A2AConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Agent ¶
type Agent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AgentSpec `json:"spec,omitempty"` Status AgentStatus `json:"status,omitempty"` }
Agent is the Schema for the agents API.
func (*Agent) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Agent.
func (*Agent) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Agent) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AgentList ¶
type AgentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Agent `json:"items"` }
AgentList contains a list of Agent.
func (*AgentList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentList.
func (*AgentList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AgentList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AgentSkill ¶
type AgentSkill server.AgentSkill
func (*AgentSkill) DeepCopy ¶
func (in *AgentSkill) DeepCopy() *AgentSkill
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSkill.
func (*AgentSkill) DeepCopyInto ¶
func (in *AgentSkill) DeepCopyInto(out *AgentSkill)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentSpec ¶
type AgentSpec struct { // +kubebuilder:validation:Enum=Declarative;BYO // +kubebuilder:default=Declarative Type AgentType `json:"type"` // +optional BYO *BYOAgentSpec `json:"byo,omitempty"` // +optional Declarative *DeclarativeAgentSpec `json:"declarative,omitempty"` // +optional Description string `json:"description,omitempty"` }
AgentSpec defines the desired state of Agent. +kubebuilder:validation:XValidation:message="type must be specified",rule="has(self.type)" +kubebuilder:validation:XValidation:message="type must be either Declarative or BYO",rule="self.type == 'Declarative' || self.type == 'BYO'" +kubebuilder:validation:XValidation:message="declarative must be specified if type is Declarative, or byo must be specified if type is BYO",rule="(self.type == 'Declarative' && has(self.declarative)) || (self.type == 'BYO' && has(self.byo))"
func (*AgentSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSpec.
func (*AgentSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentStatus ¶
type AgentStatus struct { ObservedGeneration int64 `json:"observedGeneration"` Conditions []metav1.Condition `json:"conditions,omitempty"` }
AgentStatus defines the observed state of Agent.
func (*AgentStatus) DeepCopy ¶
func (in *AgentStatus) DeepCopy() *AgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentStatus.
func (*AgentStatus) DeepCopyInto ¶
func (in *AgentStatus) DeepCopyInto(out *AgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentType ¶
type AgentType string
AgentType represents the agent type +kubebuilder:validation:Enum=Declarative;BYO
type AnthropicConfig ¶
type AnthropicConfig struct { // Base URL for the Anthropic API (overrides default) // +optional BaseURL string `json:"baseUrl,omitempty"` // Maximum tokens to generate // +optional MaxTokens int `json:"maxTokens,omitempty"` // Temperature for sampling // +optional Temperature string `json:"temperature,omitempty"` // Top-p sampling parameter // +optional TopP string `json:"topP,omitempty"` // Top-k sampling parameter // +optional TopK int `json:"topK,omitempty"` }
AnthropicConfig contains Anthropic-specific configuration options
func (*AnthropicConfig) DeepCopy ¶
func (in *AnthropicConfig) DeepCopy() *AnthropicConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnthropicConfig.
func (*AnthropicConfig) DeepCopyInto ¶
func (in *AnthropicConfig) DeepCopyInto(out *AnthropicConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AnthropicVertexAIConfig ¶
type AnthropicVertexAIConfig struct { BaseVertexAIConfig `json:",inline"` // Maximum tokens to generate // +optional MaxTokens int `json:"maxTokens,omitempty"` }
func (*AnthropicVertexAIConfig) DeepCopy ¶
func (in *AnthropicVertexAIConfig) DeepCopy() *AnthropicVertexAIConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnthropicVertexAIConfig.
func (*AnthropicVertexAIConfig) DeepCopyInto ¶
func (in *AnthropicVertexAIConfig) DeepCopyInto(out *AnthropicVertexAIConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureOpenAIConfig ¶
type AzureOpenAIConfig struct { // Endpoint for the Azure OpenAI API // +required Endpoint string `json:"azureEndpoint,omitempty"` // API version for the Azure OpenAI API // +required APIVersion string `json:"apiVersion,omitempty"` // Deployment name for the Azure OpenAI API // +optional DeploymentName string `json:"azureDeployment,omitempty"` // Azure AD token for authentication // +optional AzureADToken string `json:"azureAdToken,omitempty"` // Temperature for sampling // +optional Temperature string `json:"temperature,omitempty"` // Maximum tokens to generate // +optional MaxTokens *int `json:"maxTokens,omitempty"` // Top-p sampling parameter // +optional TopP string `json:"topP,omitempty"` }
AzureOpenAIConfig contains Azure OpenAI-specific configuration options
func (*AzureOpenAIConfig) DeepCopy ¶
func (in *AzureOpenAIConfig) DeepCopy() *AzureOpenAIConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureOpenAIConfig.
func (*AzureOpenAIConfig) DeepCopyInto ¶
func (in *AzureOpenAIConfig) DeepCopyInto(out *AzureOpenAIConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BYOAgentSpec ¶
type BYOAgentSpec struct { // Trust relationship to the agent. // +optional Deployment *ByoDeploymentSpec `json:"deployment,omitempty"` }
func (*BYOAgentSpec) DeepCopy ¶
func (in *BYOAgentSpec) DeepCopy() *BYOAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BYOAgentSpec.
func (*BYOAgentSpec) DeepCopyInto ¶
func (in *BYOAgentSpec) DeepCopyInto(out *BYOAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BaseVertexAIConfig ¶
type BaseVertexAIConfig struct { // The project ID // +required ProjectID string `json:"projectID"` // The project location // +required Location string `json:"location,omitempty"` // Temperature // +optional Temperature string `json:"temperature,omitempty"` // Top-p sampling parameter // +optional TopP string `json:"topP,omitempty"` // Top-k sampling parameter // +optional TopK string `json:"topK,omitempty"` // Stop sequences // +optional StopSequences []string `json:"stopSequences,omitempty"` }
func (*BaseVertexAIConfig) DeepCopy ¶
func (in *BaseVertexAIConfig) DeepCopy() *BaseVertexAIConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseVertexAIConfig.
func (*BaseVertexAIConfig) DeepCopyInto ¶
func (in *BaseVertexAIConfig) DeepCopyInto(out *BaseVertexAIConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ByoDeploymentSpec ¶
type ByoDeploymentSpec struct { // +kubebuilder:validation:MinLength=1 Image string `json:"image,omitempty"` // +optional Cmd *string `json:"cmd,omitempty"` // +optional Args []string `json:"args,omitempty"` }
func (*ByoDeploymentSpec) DeepCopy ¶
func (in *ByoDeploymentSpec) DeepCopy() *ByoDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ByoDeploymentSpec.
func (*ByoDeploymentSpec) DeepCopyInto ¶
func (in *ByoDeploymentSpec) DeepCopyInto(out *ByoDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeclarativeAgentSpec ¶
type DeclarativeAgentSpec struct { // SystemMessage is a string specifying the system message for the agent // +optional SystemMessage string `json:"systemMessage,omitempty"` // SystemMessageFrom is a reference to a ConfigMap or Secret containing the system message. // +optional SystemMessageFrom *ValueSource `json:"systemMessageFrom,omitempty"` // The name of the model config to use. // If not specified, the default value is "default-model-config". // Must be in the same namespace as the Agent. // +optional ModelConfig string `json:"modelConfig,omitempty"` // Whether to stream the response from the model. // If not specified, the default value is true. // +optional Stream *bool `json:"stream,omitempty"` // +kubebuilder:validation:MaxItems=20 Tools []*Tool `json:"tools,omitempty"` // A2AConfig instantiates an A2A server for this agent, // served on the HTTP port of the kagent kubernetes // controller (default 8083). // The A2A server URL will be served at // <kagent-controller-ip>:8083/api/a2a/<agent-namespace>/<agent-name> // Read more about the A2A protocol here: https://github.com/google/A2A // +optional A2AConfig *A2AConfig `json:"a2aConfig,omitempty"` // +optional Deployment *DeclarativeDeploymentSpec `json:"deployment,omitempty"` }
+kubebuilder:validation:XValidation:rule="!has(self.systemMessage) || !has(self.systemMessageFrom)",message="systemMessage and systemMessageFrom are mutually exclusive"
func (*DeclarativeAgentSpec) DeepCopy ¶
func (in *DeclarativeAgentSpec) DeepCopy() *DeclarativeAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeclarativeAgentSpec.
func (*DeclarativeAgentSpec) DeepCopyInto ¶
func (in *DeclarativeAgentSpec) DeepCopyInto(out *DeclarativeAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeclarativeDeploymentSpec ¶
type DeclarativeDeploymentSpec struct { // +optional ImageRegistry string `json:"imageRegistry,omitempty"` }
func (*DeclarativeDeploymentSpec) DeepCopy ¶
func (in *DeclarativeDeploymentSpec) DeepCopy() *DeclarativeDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeclarativeDeploymentSpec.
func (*DeclarativeDeploymentSpec) DeepCopyInto ¶
func (in *DeclarativeDeploymentSpec) DeepCopyInto(out *DeclarativeDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GeminiConfig ¶
type GeminiConfig struct{}
func (*GeminiConfig) DeepCopy ¶
func (in *GeminiConfig) DeepCopy() *GeminiConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeminiConfig.
func (*GeminiConfig) DeepCopyInto ¶
func (in *GeminiConfig) DeepCopyInto(out *GeminiConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GeminiVertexAIConfig ¶
type GeminiVertexAIConfig struct { BaseVertexAIConfig `json:",inline"` // Maximum output tokens // +optional MaxOutputTokens int `json:"maxOutputTokens,omitempty"` // Candidate count // +optional CandidateCount int `json:"candidateCount,omitempty"` // Response mime type // +optional ResponseMimeType string `json:"responseMimeType,omitempty"` }
GeminiVertexAIConfig contains Gemini Vertex AI-specific configuration options
func (*GeminiVertexAIConfig) DeepCopy ¶
func (in *GeminiVertexAIConfig) DeepCopy() *GeminiVertexAIConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeminiVertexAIConfig.
func (*GeminiVertexAIConfig) DeepCopyInto ¶
func (in *GeminiVertexAIConfig) DeepCopyInto(out *GeminiVertexAIConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MCPTool ¶
func (*MCPTool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MCPTool.
func (*MCPTool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type McpServerTool ¶
type McpServerTool struct { // The reference to the ToolServer that provides the tool. // Can either be a reference to the name of a ToolServer in the same namespace as the referencing Agent, or a reference to the name of an ToolServer in a different namespace in the form <namespace>/<name> // +optional TypedLocalReference `json:",inline"` // The names of the tools to be provided by the ToolServer // For a list of all the tools provided by the server, // the client can query the status of the ToolServer object after it has been created ToolNames []string `json:"toolNames,omitempty"` }
func (*McpServerTool) DeepCopy ¶
func (in *McpServerTool) DeepCopy() *McpServerTool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new McpServerTool.
func (*McpServerTool) DeepCopyInto ¶
func (in *McpServerTool) DeepCopyInto(out *McpServerTool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModelConfig ¶
type ModelConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ModelConfigSpec `json:"spec,omitempty"` Status ModelConfigStatus `json:"status,omitempty"` }
ModelConfig is the Schema for the modelconfigs API.
func (*ModelConfig) DeepCopy ¶
func (in *ModelConfig) DeepCopy() *ModelConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModelConfig.
func (*ModelConfig) DeepCopyInto ¶
func (in *ModelConfig) DeepCopyInto(out *ModelConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ModelConfig) DeepCopyObject ¶
func (in *ModelConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ModelConfigList ¶
type ModelConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ModelConfig `json:"items"` }
ModelConfigList contains a list of ModelConfig.
func (*ModelConfigList) DeepCopy ¶
func (in *ModelConfigList) DeepCopy() *ModelConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModelConfigList.
func (*ModelConfigList) DeepCopyInto ¶
func (in *ModelConfigList) DeepCopyInto(out *ModelConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ModelConfigList) DeepCopyObject ¶
func (in *ModelConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ModelConfigSpec ¶
type ModelConfigSpec struct { Model string `json:"model"` // The name of the secret that contains the API key. Must be a reference to the name of a secret in the same namespace as the referencing ModelConfig // +optional APIKeySecret string `json:"apiKeySecret"` // The key in the secret that contains the API key // +optional APIKeySecretKey string `json:"apiKeySecretKey"` // +optional DefaultHeaders map[string]string `json:"defaultHeaders,omitempty"` // The provider of the model // +kubebuilder:default=OpenAI Provider ModelProvider `json:"provider"` // OpenAI-specific configuration // +optional OpenAI *OpenAIConfig `json:"openAI,omitempty"` // Anthropic-specific configuration // +optional Anthropic *AnthropicConfig `json:"anthropic,omitempty"` // Azure OpenAI-specific configuration // +optional AzureOpenAI *AzureOpenAIConfig `json:"azureOpenAI,omitempty"` // Ollama-specific configuration // +optional Ollama *OllamaConfig `json:"ollama,omitempty"` // Gemini-specific configuration // +optional Gemini *GeminiConfig `json:"gemini,omitempty"` // Gemini Vertex AI-specific configuration // +optional GeminiVertexAI *GeminiVertexAIConfig `json:"geminiVertexAI,omitempty"` // Anthropic-specific configuration // +optional AnthropicVertexAI *AnthropicVertexAIConfig `json:"anthropicVertexAI,omitempty"` }
ModelConfigSpec defines the desired state of ModelConfig.
+kubebuilder:validation:XValidation:message="provider.openAI must be nil if the provider is not OpenAI",rule="!(has(self.openAI) && self.provider != 'OpenAI')" +kubebuilder:validation:XValidation:message="provider.anthropic must be nil if the provider is not Anthropic",rule="!(has(self.anthropic) && self.provider != 'Anthropic')" +kubebuilder:validation:XValidation:message="provider.azureOpenAI must be nil if the provider is not AzureOpenAI",rule="!(has(self.azureOpenAI) && self.provider != 'AzureOpenAI')" +kubebuilder:validation:XValidation:message="provider.ollama must be nil if the provider is not Ollama",rule="!(has(self.ollama) && self.provider != 'Ollama')" +kubebuilder:validation:XValidation:message="provider.gemini must be nil if the provider is not Gemini",rule="!(has(self.gemini) && self.provider != 'Gemini')" +kubebuilder:validation:XValidation:message="provider.geminiVertexAI must be nil if the provider is not GeminiVertexAI",rule="!(has(self.geminiVertexAI) && self.provider != 'GeminiVertexAI')" +kubebuilder:validation:XValidation:message="provider.anthropicVertexAI must be nil if the provider is not AnthropicVertexAI",rule="!(has(self.anthropicVertexAI) && self.provider != 'AnthropicVertexAI')" +kubebuilder:validation:XValidation:message="apiKeySecret must be set if apiKeySecretKey is set",rule="!(has(self.apiKeySecretKey) && !has(self.apiKeySecret))" +kubebuilder:validation:XValidation:message="apiKeySecretKey must be set if apiKeySecret is set",rule="!(has(self.apiKeySecret) && !has(self.apiKeySecretKey))"
func (*ModelConfigSpec) DeepCopy ¶
func (in *ModelConfigSpec) DeepCopy() *ModelConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModelConfigSpec.
func (*ModelConfigSpec) DeepCopyInto ¶
func (in *ModelConfigSpec) DeepCopyInto(out *ModelConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModelConfigStatus ¶
type ModelConfigStatus struct { Conditions []metav1.Condition `json:"conditions"` ObservedGeneration int64 `json:"observedGeneration"` }
ModelConfigStatus defines the observed state of ModelConfig.
func (*ModelConfigStatus) DeepCopy ¶
func (in *ModelConfigStatus) DeepCopy() *ModelConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModelConfigStatus.
func (*ModelConfigStatus) DeepCopyInto ¶
func (in *ModelConfigStatus) DeepCopyInto(out *ModelConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModelProvider ¶
type ModelProvider string
ModelProvider represents the model provider type +kubebuilder:validation:Enum=Anthropic;OpenAI;AzureOpenAI;Ollama;Gemini;GeminiVertexAI;AnthropicVertexAI
const ( ModelProviderAnthropic ModelProvider = "Anthropic" ModelProviderAzureOpenAI ModelProvider = "AzureOpenAI" ModelProviderOpenAI ModelProvider = "OpenAI" ModelProviderOllama ModelProvider = "Ollama" ModelProviderGemini ModelProvider = "Gemini" ModelProviderGeminiVertexAI ModelProvider = "GeminiVertexAI" ModelProviderAnthropicVertexAI ModelProvider = "AnthropicVertexAI" )
type OllamaConfig ¶
type OllamaConfig struct { // Host for the Ollama API // +optional Host string `json:"host,omitempty"` // Options for the Ollama API // +optional Options map[string]string `json:"options,omitempty"` }
OllamaConfig contains Ollama-specific configuration options
func (*OllamaConfig) DeepCopy ¶
func (in *OllamaConfig) DeepCopy() *OllamaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OllamaConfig.
func (*OllamaConfig) DeepCopyInto ¶
func (in *OllamaConfig) DeepCopyInto(out *OllamaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenAIConfig ¶
type OpenAIConfig struct { // Base URL for the OpenAI API (overrides default) // +optional BaseURL string `json:"baseUrl,omitempty"` // Organization ID for the OpenAI API // +optional Organization string `json:"organization,omitempty"` // Temperature for sampling // +optional Temperature string `json:"temperature,omitempty"` // Maximum tokens to generate // +optional MaxTokens int `json:"maxTokens,omitempty"` // Top-p sampling parameter // +optional TopP string `json:"topP,omitempty"` // Frequency penalty // +optional FrequencyPenalty string `json:"frequencyPenalty,omitempty"` // Presence penalty // +optional PresencePenalty string `json:"presencePenalty,omitempty"` // Seed value // +optional Seed *int `json:"seed,omitempty"` // N value N *int `json:"n,omitempty"` // Timeout Timeout *int `json:"timeout,omitempty"` // Reasoning effort // +optional ReasoningEffort *OpenAIReasoningEffort `json:"reasoningEffort,omitempty"` }
OpenAIConfig contains OpenAI-specific configuration options
func (*OpenAIConfig) DeepCopy ¶
func (in *OpenAIConfig) DeepCopy() *OpenAIConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenAIConfig.
func (*OpenAIConfig) DeepCopyInto ¶
func (in *OpenAIConfig) DeepCopyInto(out *OpenAIConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenAIReasoningEffort ¶
type OpenAIReasoningEffort string
OpenAIReasoningEffort represents how many reasoning tokens the model generates before producing a response. +kubebuilder:validation:Enum=minimal;low;medium;high
type RemoteMCPServer ¶
type RemoteMCPServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RemoteMCPServerSpec `json:"spec,omitempty"` Status RemoteMCPServerStatus `json:"status,omitempty"` }
RemoteMCPServer is the Schema for the RemoteMCPServers API.
func (*RemoteMCPServer) DeepCopy ¶
func (in *RemoteMCPServer) DeepCopy() *RemoteMCPServer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteMCPServer.
func (*RemoteMCPServer) DeepCopyInto ¶
func (in *RemoteMCPServer) DeepCopyInto(out *RemoteMCPServer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RemoteMCPServer) DeepCopyObject ¶
func (in *RemoteMCPServer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RemoteMCPServerList ¶
type RemoteMCPServerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RemoteMCPServer `json:"items"` }
+kubebuilder:object:root=true RemoteMCPServerList contains a list of RemoteMCPServer.
func (*RemoteMCPServerList) DeepCopy ¶
func (in *RemoteMCPServerList) DeepCopy() *RemoteMCPServerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteMCPServerList.
func (*RemoteMCPServerList) DeepCopyInto ¶
func (in *RemoteMCPServerList) DeepCopyInto(out *RemoteMCPServerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RemoteMCPServerList) DeepCopyObject ¶
func (in *RemoteMCPServerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RemoteMCPServerProtocol ¶
type RemoteMCPServerProtocol string
+kubebuilder:validation:Enum=SSE;STREAMABLE_HTTP
const ( RemoteMCPServerProtocolSse RemoteMCPServerProtocol = "SSE" RemoteMCPServerProtocolStreamableHttp RemoteMCPServerProtocol = "STREAMABLE_HTTP" )
type RemoteMCPServerSpec ¶
type RemoteMCPServerSpec struct { Description string `json:"description"` // +kubebuilder:default=STREAMABLE_HTTP // +optional Protocol RemoteMCPServerProtocol `json:"protocol"` // +kubebuilder:validation:MinLength=1 URL string `json:"url"` // +optional HeadersFrom []ValueRef `json:"headersFrom,omitempty"` // +optional Timeout *metav1.Duration `json:"timeout,omitempty"` // +optional SseReadTimeout *metav1.Duration `json:"sseReadTimeout,omitempty"` // +optional // +kubebuilder:default=true TerminateOnClose *bool `json:"terminateOnClose,omitempty"` }
RemoteMCPServerSpec defines the desired state of RemoteMCPServer.
func (*RemoteMCPServerSpec) DeepCopy ¶
func (in *RemoteMCPServerSpec) DeepCopy() *RemoteMCPServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteMCPServerSpec.
func (*RemoteMCPServerSpec) DeepCopyInto ¶
func (in *RemoteMCPServerSpec) DeepCopyInto(out *RemoteMCPServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RemoteMCPServerSpec) ResolveHeaders ¶
func (*RemoteMCPServerSpec) Scan ¶
func (t *RemoteMCPServerSpec) Scan(src any) error
type RemoteMCPServerStatus ¶
type RemoteMCPServerStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file ObservedGeneration int64 `json:"observedGeneration"` Conditions []metav1.Condition `json:"conditions"` // +kubebuilder:validation:Optional DiscoveredTools []*MCPTool `json:"discoveredTools"` }
RemoteMCPServerStatus defines the observed state of RemoteMCPServer.
func (*RemoteMCPServerStatus) DeepCopy ¶
func (in *RemoteMCPServerStatus) DeepCopy() *RemoteMCPServerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteMCPServerStatus.
func (*RemoteMCPServerStatus) DeepCopyInto ¶
func (in *RemoteMCPServerStatus) DeepCopyInto(out *RemoteMCPServerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SharedDeploymentSpec ¶
type SharedDeploymentSpec struct { // +optional // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 Replicas *int32 `json:"replicas,omitempty"` ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` Volumes []corev1.Volume `json:"volumes,omitempty"` VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` Labels map[string]string `json:"labels,omitempty"` Annotations map[string]string `json:"annotations,omitempty"` Env []corev1.EnvVar `json:"env,omitempty"` ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` Resources *corev1.ResourceRequirements `json:"resources,omitempty"` }
func (*SharedDeploymentSpec) DeepCopy ¶
func (in *SharedDeploymentSpec) DeepCopy() *SharedDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedDeploymentSpec.
func (*SharedDeploymentSpec) DeepCopyInto ¶
func (in *SharedDeploymentSpec) DeepCopyInto(out *SharedDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tool ¶
type Tool struct { // +kubebuilder:validation:Enum=McpServer;Agent Type ToolProviderType `json:"type,omitempty"` // +optional McpServer *McpServerTool `json:"mcpServer,omitempty"` // +optional Agent *TypedLocalReference `json:"agent,omitempty"` // HeadersFrom specifies a list of configuration values to be added as // headers to requests sent to the Tool from this agent. The value of // each header is resolved from either a Secret or ConfigMap in the same // namespace as the Agent. Headers specified here will override any // headers of the same name/key specified on the tool. // +optional HeadersFrom []ValueRef `json:"headersFrom,omitempty"` }
+kubebuilder:validation:XValidation:message="type.mcpServer must be nil if the type is not McpServer",rule="!(has(self.mcpServer) && self.type != 'McpServer')" +kubebuilder:validation:XValidation:message="type.mcpServer must be specified for McpServer filter.type",rule="!(!has(self.mcpServer) && self.type == 'McpServer')" +kubebuilder:validation:XValidation:message="type.agent must be nil if the type is not Agent",rule="!(has(self.agent) && self.type != 'Agent')" +kubebuilder:validation:XValidation:message="type.agent must be specified for Agent filter.type",rule="!(!has(self.agent) && self.type == 'Agent')"
func (*Tool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tool.
func (*Tool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ToolProviderType ¶
type ToolProviderType string
ToolProviderType represents the tool provider type +kubebuilder:validation:Enum=McpServer;Agent
const ( ToolProviderType_McpServer ToolProviderType = "McpServer" ToolProviderType_Agent ToolProviderType = "Agent" )
type TypedLocalReference ¶
type TypedLocalReference struct { // +optional Kind string `json:"kind"` // +optional ApiGroup string `json:"apiGroup"` Name string `json:"name"` }
func (*TypedLocalReference) DeepCopy ¶
func (in *TypedLocalReference) DeepCopy() *TypedLocalReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TypedLocalReference.
func (*TypedLocalReference) DeepCopyInto ¶
func (in *TypedLocalReference) DeepCopyInto(out *TypedLocalReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TypedLocalReference) GroupKind ¶
func (t *TypedLocalReference) GroupKind() schema.GroupKind
type ValueRef ¶
type ValueRef struct { Name string `json:"name"` // +optional Value string `json:"value,omitempty"` // +optional ValueFrom *ValueSource `json:"valueFrom,omitempty"` }
ValueRef represents a configuration value +kubebuilder:validation:XValidation:rule="(has(self.value) && !has(self.valueFrom)) || (!has(self.value) && has(self.valueFrom))",message="Exactly one of value or valueFrom must be specified"
func (*ValueRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueRef.
func (*ValueRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValueSource ¶
type ValueSource struct { // +kubebuilder:validation:Enum=ConfigMap;Secret Type ValueSourceType `json:"type"` // The name of the ConfigMap or Secret. Name string `json:"name"` // The key of the ConfigMap or Secret. Key string `json:"key"` }
ValueSource defines a source for configuration values from a Secret or ConfigMap
func (*ValueSource) DeepCopy ¶
func (in *ValueSource) DeepCopy() *ValueSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueSource.
func (*ValueSource) DeepCopyInto ¶
func (in *ValueSource) DeepCopyInto(out *ValueSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValueSourceType ¶
type ValueSourceType string
const ( ConfigMapValueSource ValueSourceType = "ConfigMap" SecretValueSource ValueSourceType = "Secret" )