SYMBOL INDEX (1015 symbols across 70 files) FILE: cmd/main.go function BuildRootCommand (line 55) | func BuildRootCommand(opt *Options) (*cobra.Command, error) { type Options (line 81) | type Options struct method InitDefaults (line 150) | func (o *Options) InitDefaults() { method LoadConfiguration (line 195) | func (o *Options) LoadConfiguration(b []byte) error { method LoadConfigurationFile (line 202) | func (o *Options) LoadConfigurationFile() error { method bindCLIFlags (line 307) | func (opt *Options) bindCLIFlags(f *pflag.FlagSet) error { function main (line 240) | func main() { function run (line 266) | func run(ctx context.Context) error { function RunRootCommand (line 345) | func RunRootCommand(ctx context.Context, opt Options, args []string) err... function handleCustomTools (line 540) | func handleCustomTools(toolConfigPaths []string) error { function redirectStdLogToKlog (line 582) | func redirectStdLogToKlog() { type klogWriter (line 591) | type klogWriter struct method Write (line 593) | func (writer klogWriter) Write(data []byte) (n int, err error) { function hasStdInData (line 600) | func hasStdInData() (bool, error) { function resolveQueryInput (line 618) | func resolveQueryInput(hasStdInData bool, args []string) (string, error) { function resolveKubeConfigPath (line 662) | func resolveKubeConfigPath(opt *Options) error { function startMCPServer (line 692) | func startMCPServer(ctx context.Context, opt Options) error { function handleListSessions (line 705) | func handleListSessions(opt Options) error { function handleDeleteSession (line 738) | func handleDeleteSession(opt Options) error { FILE: cmd/mcp.go type kubectlMCPServer (line 29) | type kubectlMCPServer struct method Serve (line 154) | func (s *kubectlMCPServer) Serve(ctx context.Context) error { method handleToolCall (line 179) | func (s *kubectlMCPServer) handleToolCall(ctx context.Context, request... method handleBuiltinToolCall (line 206) | func (s *kubectlMCPServer) handleBuiltinToolCall(ctx context.Context, ... method handleExternalMCPToolCall (line 259) | func (s *kubectlMCPServer) handleExternalMCPToolCall(ctx context.Conte... function newKubectlMCPServer (line 39) | func newKubectlMCPServer(ctx context.Context, kubectlConfig string, tool... FILE: cmd/mcp_test.go function TestKubectlMCPServerHTTPClientIntegration (line 29) | func TestKubectlMCPServerHTTPClientIntegration(t *testing.T) { function waitForHTTPServer (line 108) | func waitForHTTPServer(t *testing.T, port int) { function getFreePort (line 127) | func getFreePort(t *testing.T) int { function toolExists (line 139) | func toolExists(name string, tools []mcp.Tool) bool { type stubTool (line 148) | type stubTool struct method Name (line 150) | func (stubTool) Name() string { method Description (line 154) | func (stubTool) Description() string { method FunctionDefinition (line 158) | func (stubTool) FunctionDefinition() *gollm.FunctionDefinition { method Run (line 168) | func (stubTool) Run(context.Context, map[string]any) (any, error) { method IsInteractive (line 172) | func (stubTool) IsInteractive(map[string]any) (bool, error) { method CheckModifiesResource (line 176) | func (stubTool) CheckModifiesResource(map[string]any) string { FILE: gollm/anthropic.go function init (line 41) | func init() { function newAnthropicClientFactory (line 69) | func newAnthropicClientFactory(ctx context.Context, opts ClientOptions) ... type AnthropicClient (line 74) | type AnthropicClient struct method Close (line 101) | func (c *AnthropicClient) Close() error { method StartChat (line 106) | func (c *AnthropicClient) StartChat(systemPrompt, model string) Chat { method GenerateCompletion (line 121) | func (c *AnthropicClient) GenerateCompletion(ctx context.Context, req ... method SetResponseSchema (line 131) | func (c *AnthropicClient) SetResponseSchema(schema *Schema) error { method ListModels (line 137) | func (c *AnthropicClient) ListModels(ctx context.Context) ([]string, e... function NewAnthropicClient (line 82) | func NewAnthropicClient(ctx context.Context, opts ClientOptions) (*Anthr... type anthropicChatSession (line 163) | type anthropicChatSession struct method Initialize (line 177) | func (c *anthropicChatSession) Initialize(history []*api.Message) error { method SetFunctionDefinitions (line 217) | func (c *anthropicChatSession) SetFunctionDefinitions(functions []*Fun... method buildSystemBlocks (line 269) | func (c *anthropicChatSession) buildSystemBlocks() []anthropic.TextBlo... method addContentsToHistory (line 283) | func (c *anthropicChatSession) addContentsToHistory(contents []any) er... method Send (line 323) | func (c *anthropicChatSession) Send(ctx context.Context, contents ...a... method SendStreaming (line 366) | func (c *anthropicChatSession) SendStreaming(ctx context.Context, cont... method IsRetryableError (line 491) | func (c *anthropicChatSession) IsRetryableError(err error) bool { type anthropicResponse (line 507) | type anthropicResponse struct method UsageMetadata (line 513) | func (r *anthropicResponse) UsageMetadata() any { method Candidates (line 520) | func (r *anthropicResponse) Candidates() []Candidate { type anthropicStreamResponse (line 528) | type anthropicStreamResponse struct method UsageMetadata (line 536) | func (r *anthropicStreamResponse) UsageMetadata() any { method Candidates (line 543) | func (r *anthropicStreamResponse) Candidates() []Candidate { type anthropicCandidate (line 554) | type anthropicCandidate struct method String (line 560) | func (c *anthropicCandidate) String() string { method Parts (line 572) | func (c *anthropicCandidate) Parts() []Part { type anthropicStreamCandidate (line 607) | type anthropicStreamCandidate struct method String (line 614) | func (c *anthropicStreamCandidate) String() string { method Parts (line 624) | func (c *anthropicStreamCandidate) Parts() []Part { type anthropicTextPart (line 636) | type anthropicTextPart struct method AsText (line 642) | func (p *anthropicTextPart) AsText() (string, bool) { method AsFunctionCalls (line 646) | func (p *anthropicTextPart) AsFunctionCalls() ([]FunctionCall, bool) { type anthropicToolPart (line 651) | type anthropicToolPart struct method AsText (line 657) | func (p *anthropicToolPart) AsText() (string, bool) { method AsFunctionCalls (line 661) | func (p *anthropicToolPart) AsFunctionCalls() ([]FunctionCall, bool) { type anthropicCompletionResponse (line 666) | type anthropicCompletionResponse struct method Response (line 672) | func (r *anthropicCompletionResponse) Response() string { method UsageMetadata (line 688) | func (r *anthropicCompletionResponse) UsageMetadata() any { function getAnthropicModel (line 695) | func getAnthropicModel(model string) string { FILE: gollm/anthropic_test.go function TestAnthropicProviderRegistration (line 28) | func TestAnthropicProviderRegistration(t *testing.T) { function TestAnthropicAddContentsToHistory (line 44) | func TestAnthropicAddContentsToHistory(t *testing.T) { function TestAnthropicBuildSystemBlocks_WithCaching (line 121) | func TestAnthropicBuildSystemBlocks_WithCaching(t *testing.T) { function TestAnthropicBuildSystemBlocks_WithoutCaching (line 145) | func TestAnthropicBuildSystemBlocks_WithoutCaching(t *testing.T) { function TestAnthropicBuildSystemBlocks_EmptyPrompt (line 169) | func TestAnthropicBuildSystemBlocks_EmptyPrompt(t *testing.T) { function TestAnthropicSetFunctionDefinitions_CacheControl (line 183) | func TestAnthropicSetFunctionDefinitions_CacheControl(t *testing.T) { function TestAnthropicSetFunctionDefinitions_NoCacheControl (line 240) | func TestAnthropicSetFunctionDefinitions_NoCacheControl(t *testing.T) { function TestAnthropicSetFunctionDefinitions_EmptyList (line 266) | func TestAnthropicSetFunctionDefinitions_EmptyList(t *testing.T) { function TestAnthropicIsRetryableError (line 281) | func TestAnthropicIsRetryableError(t *testing.T) { function makeAnthropicAPIError (line 349) | func makeAnthropicAPIError(statusCode int) error { function TestAnthropicStreamResponseUsageMetadata (line 359) | func TestAnthropicStreamResponseUsageMetadata(t *testing.T) { function TestAnthropicMaxTokensDefault (line 393) | func TestAnthropicMaxTokensDefault(t *testing.T) { function TestAnthropicMaxTokensEnvVar (line 406) | func TestAnthropicMaxTokensEnvVar(t *testing.T) { function TestGetAnthropicModel (line 465) | func TestGetAnthropicModel(t *testing.T) { FILE: gollm/azopenai.go function init (line 37) | func init() { function azureOpenAIFactory (line 47) | func azureOpenAIFactory(ctx context.Context, opts ClientOptions) (Client... type AzureOpenAIClient (line 51) | type AzureOpenAIClient struct method Close (line 104) | func (c *AzureOpenAIClient) Close() error { method GenerateCompletion (line 108) | func (c *AzureOpenAIClient) GenerateCompletion(ctx context.Context, re... method ListModels (line 128) | func (c *AzureOpenAIClient) ListModels(ctx context.Context) ([]string,... method SetResponseSchema (line 202) | func (c *AzureOpenAIClient) SetResponseSchema(schema *Schema) error { method StartChat (line 206) | func (c *AzureOpenAIClient) StartChat(systemPrompt string, model strin... function NewAzureOpenAIClient (line 60) | func NewAzureOpenAIClient(ctx context.Context, opts ClientOptions) (*Azu... type AzureOpenAICompletionResponse (line 216) | type AzureOpenAICompletionResponse struct method Response (line 220) | func (r *AzureOpenAICompletionResponse) Response() string { method UsageMetadata (line 224) | func (r *AzureOpenAICompletionResponse) UsageMetadata() any { type AzureOpenAIChat (line 228) | type AzureOpenAIChat struct method Send (line 235) | func (c *AzureOpenAIChat) Send(ctx context.Context, contents ...any) (... method IsRetryableError (line 268) | func (c *AzureOpenAIChat) IsRetryableError(err error) bool { method Initialize (line 273) | func (c *AzureOpenAIChat) Initialize(messages []*api.Message) error { method SendStreaming (line 278) | func (c *AzureOpenAIChat) SendStreaming(ctx context.Context, contents ... method SetFunctionDefinitions (line 395) | func (c *AzureOpenAIChat) SetFunctionDefinitions(functionDefinitions [... type AzureOpenAIChatResponse (line 287) | type AzureOpenAIChatResponse struct method MarshalJSON (line 293) | func (r *AzureOpenAIChatResponse) MarshalJSON() ([]byte, error) { method String (line 300) | func (r *AzureOpenAIChatResponse) String() string { method UsageMetadata (line 304) | func (r *AzureOpenAIChatResponse) UsageMetadata() any { method Candidates (line 308) | func (r *AzureOpenAIChatResponse) Candidates() []Candidate { type AzureOpenAICandidate (line 316) | type AzureOpenAICandidate struct method String (line 320) | func (r *AzureOpenAICandidate) String() string { method Parts (line 344) | func (r *AzureOpenAICandidate) Parts() []Part { type AzureOpenAIPart (line 365) | type AzureOpenAIPart struct method AsText (line 370) | func (p *AzureOpenAIPart) AsText() (string, bool) { method AsFunctionCalls (line 377) | func (p *AzureOpenAIPart) AsFunctionCalls() ([]FunctionCall, bool) { function fnDefToAzureOpenAITool (line 404) | func fnDefToAzureOpenAITool(fnDef *FunctionDefinition) *azopenai.ChatCom... FILE: gollm/bedrock.go function init (line 36) | func init() { function newBedrockClientFactory (line 43) | func newBedrockClientFactory(ctx context.Context, opts ClientOptions) (C... type BedrockClient (line 48) | type BedrockClient struct method Close (line 77) | func (c *BedrockClient) Close() error { method StartChat (line 82) | func (c *BedrockClient) StartChat(systemPrompt, model string) Chat { method GenerateCompletion (line 108) | func (c *BedrockClient) GenerateCompletion(ctx context.Context, req *C... method SetResponseSchema (line 122) | func (c *BedrockClient) SetResponseSchema(schema *Schema) error { method ListModels (line 127) | func (c *BedrockClient) ListModels(ctx context.Context) ([]string, err... function NewBedrockClient (line 56) | func NewBedrockClient(ctx context.Context, opts ClientOptions) (*Bedrock... type bedrockChat (line 135) | type bedrockChat struct method Initialize (line 144) | func (cs *bedrockChat) Initialize(history []*api.Message) error { method Send (line 192) | func (c *bedrockChat) Send(ctx context.Context, contents ...any) (Chat... method SendStreaming (line 246) | func (c *bedrockChat) SendStreaming(ctx context.Context, contents ...a... method addContentsToHistory (line 426) | func (c *bedrockChat) addContentsToHistory(contents []any) error { method SetFunctionDefinitions (line 481) | func (c *bedrockChat) SetFunctionDefinitions(functions []*FunctionDefi... method IsRetryableError (line 526) | func (c *bedrockChat) IsRetryableError(err error) bool { type bedrockResponse (line 531) | type bedrockResponse struct method UsageMetadata (line 537) | func (r *bedrockResponse) UsageMetadata() any { method Candidates (line 545) | func (r *bedrockResponse) Candidates() []Candidate { type bedrockStreamResponse (line 562) | type bedrockStreamResponse struct method UsageMetadata (line 572) | func (r *bedrockStreamResponse) UsageMetadata() any { method Candidates (line 577) | func (r *bedrockStreamResponse) Candidates() []Candidate { type bedrockCandidate (line 592) | type bedrockCandidate struct method String (line 598) | func (c *bedrockCandidate) String() string { method Parts (line 613) | func (c *bedrockCandidate) Parts() []Part { type bedrockStreamCandidate (line 631) | type bedrockStreamCandidate struct method String (line 639) | func (c *bedrockStreamCandidate) String() string { method Parts (line 644) | func (c *bedrockStreamCandidate) Parts() []Part { type bedrockTextPart (line 668) | type bedrockTextPart struct method AsText (line 673) | func (p *bedrockTextPart) AsText() (string, bool) { method AsFunctionCalls (line 678) | func (p *bedrockTextPart) AsFunctionCalls() ([]FunctionCall, bool) { type bedrockToolPart (line 683) | type bedrockToolPart struct method AsText (line 689) | func (p *bedrockToolPart) AsText() (string, bool) { method AsFunctionCalls (line 694) | func (p *bedrockToolPart) AsFunctionCalls() ([]FunctionCall, bool) { function getBedrockModel (line 729) | func getBedrockModel(model string) string { type bedrockCompletionResponse (line 746) | type bedrockCompletionResponse struct method Response (line 752) | func (r *bedrockCompletionResponse) Response() string { method UsageMetadata (line 769) | func (r *bedrockCompletionResponse) UsageMetadata() any { FILE: gollm/factory.go type registry (line 40) | type registry struct method listProviders (line 45) | func (r *registry) listProviders() []string { method RegisterProvider (line 77) | func (r *registry) RegisterProvider(id string, factoryFunc FactoryFunc... method NewClient (line 92) | func (r *registry) NewClient(ctx context.Context, providerID string, o... type ClientOptions (line 55) | type ClientOptions struct type Option (line 62) | type Option function WithSkipVerifySSL (line 65) | func WithSkipVerifySSL() Option { type FactoryFunc (line 71) | type FactoryFunc function RegisterProvider (line 73) | func RegisterProvider(id string, factoryFunc FactoryFunc) error { function NewClient (line 132) | func NewClient(ctx context.Context, providerID string, opts ...Option) (... type APIError (line 145) | type APIError struct method Error (line 151) | func (e *APIError) Error() string { method Unwrap (line 158) | func (e *APIError) Unwrap() error { type IsRetryableFunc (line 165) | type IsRetryableFunc function DefaultIsRetryableError (line 168) | func DefaultIsRetryableError(err error) bool { function createCustomHTTPClient (line 198) | func createCustomHTTPClient(skipVerify bool) *http.Client { type RetryConfig (line 213) | type RetryConfig struct function Retry (line 232) | func Retry[T any]( type retryChat (line 306) | type retryChat struct function NewRetryChat (line 315) | func NewRetryChat[C Chat]( method Send (line 326) | func (rc *retryChat[C]) Send(ctx context.Context, contents ...any) (Chat... method SendStreaming (line 337) | func (rc *retryChat[C]) SendStreaming(ctx context.Context, contents ...a... method SetFunctionDefinitions (line 341) | func (rc *retryChat[C]) SetFunctionDefinitions(functionDefinitions []*Fu... method IsRetryableError (line 345) | func (rc *retryChat[C]) IsRetryableError(err error) bool { method Initialize (line 349) | func (rc *retryChat[C]) Initialize(messages []*api.Message) error { FILE: gollm/factory_test.go function TestNewClient (line 23) | func TestNewClient(t *testing.T) { FILE: gollm/gemini.go function init (line 37) | func init() { function geminiFactory (line 48) | func geminiFactory(ctx context.Context, opts ClientOptions) (Client, err... type GeminiAPIClientOptions (line 54) | type GeminiAPIClientOptions struct function NewGeminiAPIClient (line 60) | func NewGeminiAPIClient(ctx context.Context, opt GeminiAPIClientOptions)... type VertexAIClientOptions (line 88) | type VertexAIClientOptions struct function vertexaiViaGeminiFactory (line 97) | func vertexaiViaGeminiFactory(ctx context.Context, opts ClientOptions) (... function findDefaultGCPProject (line 103) | func findDefaultGCPProject(ctx context.Context) (string, error) { function NewVertexAIClient (line 136) | func NewVertexAIClient(ctx context.Context, opt VertexAIClientOptions) (... type GoogleAIClient (line 191) | type GoogleAIClient struct method ListModels (line 201) | func (c *GoogleAIClient) ListModels(ctx context.Context) (modelNames [... method Close (line 212) | func (c *GoogleAIClient) Close() error { method SetResponseSchema (line 218) | func (c *GoogleAIClient) SetResponseSchema(responseSchema *Schema) err... method GenerateCompletion (line 233) | func (c *GoogleAIClient) GenerateCompletion(ctx context.Context, reque... method StartChat (line 259) | func (c *GoogleAIClient) StartChat(systemPrompt string, model string) ... type GeminiChat (line 303) | type GeminiChat struct method SetFunctionDefinitions (line 312) | func (c *GeminiChat) SetFunctionDefinitions(functionDefinitions []*Fun... method partsToGemini (line 379) | func (c *GeminiChat) partsToGemini(contents ...any) ([]*genai.Part, er... method Send (line 403) | func (c *GeminiChat) Send(ctx context.Context, contents ...any) (ChatR... method SendStreaming (line 431) | func (c *GeminiChat) SendStreaming(ctx context.Context, contents ...an... method Initialize (line 492) | func (c *GeminiChat) Initialize(messages []*api.Message) error { method messageToContent (line 505) | func (c *GeminiChat) messageToContent(msg *api.Message) (*genai.Conten... method IsRetryableError (line 657) | func (c *GeminiChat) IsRetryableError(err error) bool { function toGeminiSchema (line 337) | func toGeminiSchema(schema *Schema) (*genai.Schema, error) { type GeminiChatResponse (line 528) | type GeminiChatResponse struct method MarshalJSON (line 534) | func (r *GeminiChatResponse) MarshalJSON() ([]byte, error) { method String (line 542) | func (r *GeminiChatResponse) String() string { method UsageMetadata (line 547) | func (r *GeminiChatResponse) UsageMetadata() any { method Candidates (line 552) | func (r *GeminiChatResponse) Candidates() []Candidate { type GeminiCandidate (line 562) | type GeminiCandidate struct method String (line 567) | func (r *GeminiCandidate) String() string { method Parts (line 592) | func (r *GeminiCandidate) Parts() []Part { type GeminiPart (line 604) | type GeminiPart struct method AsText (line 609) | func (p *GeminiPart) AsText() (string, bool) { method AsFunctionCalls (line 617) | func (p *GeminiPart) AsFunctionCalls() ([]FunctionCall, bool) { type GeminiCompletionResponse (line 630) | type GeminiCompletionResponse struct method MarshalJSON (line 637) | func (r *GeminiCompletionResponse) MarshalJSON() ([]byte, error) { method Response (line 645) | func (r *GeminiCompletionResponse) Response() string { method UsageMetadata (line 649) | func (r *GeminiCompletionResponse) UsageMetadata() any { method String (line 653) | func (r *GeminiCompletionResponse) String() string { FILE: gollm/grok.go function init (line 33) | func init() { function newGrokClientFactory (line 40) | func newGrokClientFactory(ctx context.Context, opts ClientOptions) (Clie... type GrokClient (line 45) | type GrokClient struct method Close (line 82) | func (c *GrokClient) Close() error { method StartChat (line 88) | func (c *GrokClient) StartChat(systemPrompt, model string) Chat { method GenerateCompletion (line 125) | func (c *GrokClient) GenerateCompletion(ctx context.Context, req *Comp... method SetResponseSchema (line 157) | func (c *GrokClient) SetResponseSchema(schema *Schema) error { method ListModels (line 163) | func (c *GrokClient) ListModels(ctx context.Context) ([]string, error) { function NewGrokClient (line 54) | func NewGrokClient(ctx context.Context, opts ClientOptions) (*GrokClient... type simpleGrokCompletionResponse (line 110) | type simpleGrokCompletionResponse struct method Response (line 115) | func (r *simpleGrokCompletionResponse) Response() string { method UsageMetadata (line 120) | func (r *simpleGrokCompletionResponse) UsageMetadata() any { type grokChatSession (line 171) | type grokChatSession struct method SetFunctionDefinitions (line 183) | func (cs *grokChatSession) SetFunctionDefinitions(defs []*FunctionDefi... method Send (line 216) | func (cs *grokChatSession) Send(ctx context.Context, contents ...any) ... method SendStreaming (line 281) | func (cs *grokChatSession) SendStreaming(ctx context.Context, contents... method IsRetryableError (line 376) | func (cs *grokChatSession) IsRetryableError(err error) bool { method Initialize (line 383) | func (cs *grokChatSession) Initialize(messages []*api.Message) error { type grokChatResponse (line 390) | type grokChatResponse struct method UsageMetadata (line 396) | func (r *grokChatResponse) UsageMetadata() any { method Candidates (line 404) | func (r *grokChatResponse) Candidates() []Candidate { type grokCandidate (line 415) | type grokCandidate struct method Parts (line 421) | func (c *grokCandidate) Parts() []Part { method String (line 439) | func (c *grokCandidate) String() string { type grokPart (line 452) | type grokPart struct method AsText (line 459) | func (p *grokPart) AsText() (string, bool) { method AsFunctionCalls (line 463) | func (p *grokPart) AsFunctionCalls() ([]FunctionCall, bool) { type grokChatStreamResponse (line 489) | type grokChatStreamResponse struct method UsageMetadata (line 498) | func (r *grokChatStreamResponse) UsageMetadata() any { method Candidates (line 506) | func (r *grokChatStreamResponse) Candidates() []Candidate { type grokStreamCandidate (line 520) | type grokStreamCandidate struct method String (line 528) | func (c *grokStreamCandidate) String() string { method Parts (line 534) | func (c *grokStreamCandidate) Parts() []Part { type grokStreamPart (line 571) | type grokStreamPart struct method AsText (line 580) | func (p *grokStreamPart) AsText() (string, bool) { method AsFunctionCalls (line 585) | func (p *grokStreamPart) AsFunctionCalls() ([]FunctionCall, bool) { FILE: gollm/http_journal.go type journalingRoundTripper (line 29) | type journalingRoundTripper struct method RoundTrip (line 36) | func (jrt *journalingRoundTripper) RoundTrip(req *http.Request) (*http... function withJournaling (line 98) | func withJournaling(client *http.Client) *http.Client { FILE: gollm/interfaces.go type Client (line 28) | type Client interface type Chat (line 47) | type Chat interface type CompletionRequest (line 68) | type CompletionRequest struct type CompletionResponse (line 74) | type CompletionResponse interface type FunctionCall (line 81) | type FunctionCall struct type FunctionDefinition (line 90) | type FunctionDefinition struct type Schema (line 97) | type Schema struct method ToRawSchema (line 106) | func (s *Schema) ToRawSchema() (json.RawMessage, error) { type SchemaType (line 119) | type SchemaType constant TypeObject (line 122) | TypeObject SchemaType = "object" constant TypeArray (line 123) | TypeArray SchemaType = "array" constant TypeString (line 125) | TypeString SchemaType = "string" constant TypeBoolean (line 126) | TypeBoolean SchemaType = "boolean" constant TypeNumber (line 127) | TypeNumber SchemaType = "number" constant TypeInteger (line 128) | TypeInteger SchemaType = "integer" type FunctionCallResult (line 133) | type FunctionCallResult struct type ChatResponse (line 140) | type ChatResponse interface type ChatResponseIterator (line 149) | type ChatResponseIterator type Candidate (line 152) | type Candidate interface type Part (line 166) | type Part interface FILE: gollm/llamacpp.go function init (line 32) | func init() { function llamacppFactory (line 40) | func llamacppFactory(ctx context.Context, opts ClientOptions) (Client, e... type LlamaCppClient (line 44) | type LlamaCppClient struct method Close (line 81) | func (c *LlamaCppClient) Close() error { method GenerateCompletion (line 85) | func (c *LlamaCppClient) GenerateCompletion(ctx context.Context, reque... method doRequest (line 104) | func (c *LlamaCppClient) doRequest(ctx context.Context, httpMethod, re... method doCompletion (line 139) | func (c *LlamaCppClient) doCompletion(ctx context.Context, req *llamac... method doChat (line 147) | func (c *LlamaCppClient) doChat(ctx context.Context, req *llamacppChat... method ListModels (line 155) | func (c *LlamaCppClient) ListModels(ctx context.Context) ([]string, er... method SetResponseSchema (line 159) | func (c *LlamaCppClient) SetResponseSchema(responseSchema *Schema) err... method StartChat (line 165) | func (c *LlamaCppClient) StartChat(systemPrompt, model string) Chat { type LlamaCppChat (line 50) | type LlamaCppChat struct method Send (line 190) | func (c *LlamaCppChat) Send(ctx context.Context, contents ...any) (Cha... method SendStreaming (line 284) | func (c *LlamaCppChat) SendStreaming(ctx context.Context, contents ...... method IsRetryableError (line 293) | func (c *LlamaCppChat) IsRetryableError(err error) bool { method Initialize (line 298) | func (c *LlamaCppChat) Initialize(messages []*api.Message) error { method SetFunctionDefinitions (line 383) | func (c *LlamaCppChat) SetFunctionDefinitions(functionDefinitions []*F... function NewLlamaCppClient (line 61) | func NewLlamaCppClient(ctx context.Context, opts ClientOptions) (*LlamaC... type LlamaCppCompletionResponse (line 178) | type LlamaCppCompletionResponse struct method Response (line 182) | func (r *LlamaCppCompletionResponse) Response() string { method UsageMetadata (line 186) | func (r *LlamaCppCompletionResponse) UsageMetadata() any { function ptrTo (line 303) | func ptrTo[T any](t T) *T { type LlamaCppChatResponse (line 307) | type LlamaCppChatResponse struct method MarshalJSON (line 314) | func (r *LlamaCppChatResponse) MarshalJSON() ([]byte, error) { method String (line 321) | func (r *LlamaCppChatResponse) String() string { method UsageMetadata (line 336) | func (r *LlamaCppChatResponse) UsageMetadata() any { method Candidates (line 340) | func (r *LlamaCppChatResponse) Candidates() []Candidate { type LlamaCppCandidate (line 348) | type LlamaCppCandidate struct method String (line 352) | func (r *LlamaCppCandidate) String() string { method Parts (line 356) | func (r *LlamaCppCandidate) Parts() []Part { type LlamaCppPart (line 364) | type LlamaCppPart struct method AsText (line 369) | func (p *LlamaCppPart) AsText() (string, bool) { method AsFunctionCalls (line 376) | func (p *LlamaCppPart) AsFunctionCalls() ([]FunctionCall, bool) { function toLlamacppTool (line 392) | func toLlamacppTool(fnDef *FunctionDefinition) llamacppTool { function toLlamacppSchema (line 410) | func toLlamacppSchema(in *Schema) *llamacppSchema { type llamacppCompletionRequest (line 432) | type llamacppCompletionRequest struct type llamacppCompletionResponse (line 440) | type llamacppCompletionResponse struct type llamacppTimings (line 473) | type llamacppTimings struct type llamacppChatRequest (line 484) | type llamacppChatRequest struct type llamacppChatResponse (line 490) | type llamacppChatResponse struct type llamacppChoice (line 501) | type llamacppChoice struct type llamacppUsage (line 507) | type llamacppUsage struct type llamacppChatMessage (line 513) | type llamacppChatMessage struct type llamacppToolCall (line 520) | type llamacppToolCall struct type llamacppFunctionCall (line 525) | type llamacppFunctionCall struct type llamacppTool (line 531) | type llamacppTool struct type llamacppFunction (line 536) | type llamacppFunction struct type llamacppSchema (line 542) | type llamacppSchema struct FILE: gollm/ollama.go function init (line 29) | func init() { function ollamaFactory (line 37) | func ollamaFactory(ctx context.Context, opts ClientOptions) (Client, err... constant defaultOllamaModel (line 42) | defaultOllamaModel = "gemma3:latest" type OllamaClient (line 45) | type OllamaClient struct method Close (line 70) | func (c *OllamaClient) Close() error { method GenerateCompletion (line 74) | func (c *OllamaClient) GenerateCompletion(ctx context.Context, request... method ListModels (line 96) | func (c *OllamaClient) ListModels(ctx context.Context) ([]string, erro... method SetResponseSchema (line 110) | func (c *OllamaClient) SetResponseSchema(schema *Schema) error { method StartChat (line 114) | func (c *OllamaClient) StartChat(systemPrompt, model string) Chat { type OllamaChat (line 49) | type OllamaChat struct method Send (line 139) | func (c *OllamaChat) Send(ctx context.Context, contents ...any) (ChatR... method IsRetryableError (line 198) | func (c *OllamaChat) IsRetryableError(err error) bool { method SendStreaming (line 203) | func (c *OllamaChat) SendStreaming(ctx context.Context, contents ...an... method Initialize (line 212) | func (c *OllamaChat) Initialize(messages []*kctlApi.Message) error { method SetFunctionDefinitions (line 292) | func (c *OllamaChat) SetFunctionDefinitions(functionDefinitions []*Fun... function NewOllamaClient (line 60) | func NewOllamaClient(ctx context.Context, opts ClientOptions) (*OllamaCl... type OllamaCompletionResponse (line 127) | type OllamaCompletionResponse struct method Response (line 131) | func (r *OllamaCompletionResponse) Response() string { method UsageMetadata (line 135) | func (r *OllamaCompletionResponse) UsageMetadata() any { type OllamaChatResponse (line 217) | type OllamaChatResponse struct method MarshalJSON (line 224) | func (r *OllamaChatResponse) MarshalJSON() ([]byte, error) { method String (line 231) | func (r *OllamaChatResponse) String() string { method UsageMetadata (line 235) | func (r *OllamaChatResponse) UsageMetadata() any { method Candidates (line 239) | func (r *OllamaChatResponse) Candidates() []Candidate { type OllamaCandidate (line 247) | type OllamaCandidate struct method String (line 251) | func (r *OllamaCandidate) String() string { method Parts (line 255) | func (r *OllamaCandidate) Parts() []Part { type OllamaPart (line 266) | type OllamaPart struct method AsText (line 271) | func (p *OllamaPart) AsText() (string, bool) { method AsFunctionCalls (line 278) | func (p *OllamaPart) AsFunctionCalls() ([]FunctionCall, bool) { function fnDefToOllamaTool (line 301) | func fnDefToOllamaTool(fnDef *FunctionDefinition) api.Tool { FILE: gollm/openai.go function init (line 47) | func init() { type OpenAIClient (line 75) | type OpenAIClient struct method Close (line 116) | func (c *OpenAIClient) Close() error { method StartChat (line 122) | func (c *OpenAIClient) StartChat(systemPrompt, model string) Chat { method GenerateCompletion (line 190) | func (c *OpenAIClient) GenerateCompletion(ctx context.Context, req *Co... method SetResponseSchema (line 220) | func (c *OpenAIClient) SetResponseSchema(schema *Schema) error { method ListModels (line 228) | func (c *OpenAIClient) ListModels(ctx context.Context) ([]string, erro... function NewOpenAIClient (line 84) | func NewOpenAIClient(ctx context.Context, opts ClientOptions) (*OpenAICl... type simpleCompletionResponse (line 175) | type simpleCompletionResponse struct method Response (line 180) | func (r *simpleCompletionResponse) Response() string { method UsageMetadata (line 185) | func (r *simpleCompletionResponse) UsageMetadata() any { type openAIChatSession (line 244) | type openAIChatSession struct method SetFunctionDefinitions (line 256) | func (cs *openAIChatSession) SetFunctionDefinitions(defs []*FunctionDe... method Send (line 284) | func (cs *openAIChatSession) Send(ctx context.Context, contents ...any... method SendStreaming (line 332) | func (cs *openAIChatSession) SendStreaming(ctx context.Context, conten... method IsRetryableError (line 460) | func (cs *openAIChatSession) IsRetryableError(err error) bool { method Initialize (line 467) | func (cs *openAIChatSession) Initialize(messages []*api.Message) error { method convertFunctionParameters (line 720) | func (cs *openAIChatSession) convertFunctionParameters(gollmDef *Funct... method convertSchemaToBytes (line 791) | func (cs *openAIChatSession) convertSchemaToBytes(schema *Schema, func... method addContentsToHistory (line 811) | func (cs *openAIChatSession) addContentsToHistory(contents []any) error { type openAIChatResponse (line 474) | type openAIChatResponse struct method UsageMetadata (line 480) | func (r *openAIChatResponse) UsageMetadata() any { method Candidates (line 488) | func (r *openAIChatResponse) Candidates() []Candidate { type openAICandidate (line 499) | type openAICandidate struct method Parts (line 505) | func (c *openAICandidate) Parts() []Part { method String (line 523) | func (c *openAICandidate) String() string { type openAIPart (line 536) | type openAIPart struct method AsText (line 543) | func (p *openAIPart) AsText() (string, bool) { method AsFunctionCalls (line 547) | func (p *openAIPart) AsFunctionCalls() ([]FunctionCall, bool) { type openAIChatStreamResponse (line 552) | type openAIChatStreamResponse struct method Candidates (line 560) | func (r *openAIChatStreamResponse) Candidates() []Candidate { method UsageMetadata (line 605) | func (r *openAIChatStreamResponse) UsageMetadata() any { type openAIStreamCandidate (line 577) | type openAIStreamCandidate struct method Parts (line 584) | func (c *openAIStreamCandidate) Parts() []Part { method String (line 613) | func (c *openAIStreamCandidate) String() string { type openAIStreamPart (line 619) | type openAIStreamPart struct method AsText (line 627) | func (p *openAIStreamPart) AsText() (string, bool) { method AsFunctionCalls (line 631) | func (p *openAIStreamPart) AsFunctionCalls() ([]FunctionCall, bool) { function convertSchemaForOpenAI (line 637) | func convertSchemaForOpenAI(schema *Schema) (*Schema, error) { type openAISchema (line 750) | type openAISchema struct method MarshalJSON (line 755) | func (s openAISchema) MarshalJSON() ([]byte, error) { function newOpenAIClientFactory (line 806) | func newOpenAIClientFactory(ctx context.Context, opts ClientOptions) (Cl... function convertToolCallsToFunctionCalls (line 835) | func convertToolCallsToFunctionCalls(toolCalls []openai.ChatCompletionMe... function getOpenAIModel (line 869) | func getOpenAIModel(model string) string { FILE: gollm/openai_response.go type openAIResponseChatSession (line 32) | type openAIResponseChatSession struct method SetFunctionDefinitions (line 47) | func (cs *openAIResponseChatSession) SetFunctionDefinitions(defs []*Fu... method Send (line 73) | func (cs *openAIResponseChatSession) Send(ctx context.Context, content... method SendStreaming (line 81) | func (cs *openAIResponseChatSession) SendStreaming(ctx context.Context... method IsRetryableError (line 140) | func (cs *openAIResponseChatSession) IsRetryableError(err error) bool { method Initialize (line 147) | func (cs *openAIResponseChatSession) Initialize(messages []*api.Messag... method convertFunctionParameters (line 241) | func (cs *openAIResponseChatSession) convertFunctionParameters(gollmDe... method convertSchemaToBytes (line 271) | func (cs *openAIResponseChatSession) convertSchemaToBytes(schema *Sche... method addContentsToHistory (line 286) | func (cs *openAIResponseChatSession) addContentsToHistory(contents []a... type openAIResponseChatResponse (line 153) | type openAIResponseChatResponse struct method UsageMetadata (line 159) | func (r *openAIResponseChatResponse) UsageMetadata() any { method Candidates (line 163) | func (r *openAIResponseChatResponse) Candidates() []Candidate { type openAIResponseCandidate (line 182) | type openAIResponseCandidate struct method Parts (line 188) | func (c *openAIResponseCandidate) Parts() []Part { method String (line 221) | func (c *openAIResponseCandidate) String() string { type openAIResponsePart (line 225) | type openAIResponsePart struct method AsText (line 232) | func (p *openAIResponsePart) AsText() (string, bool) { method AsFunctionCalls (line 236) | func (p *openAIResponsePart) AsFunctionCalls() ([]FunctionCall, bool) { function convertResponseToolCallToFunctionCall (line 318) | func convertResponseToolCallToFunctionCall(responseToolCall responses.Re... FILE: gollm/openai_test.go function TestConvertSchemaForOpenAI (line 24) | func TestConvertSchemaForOpenAI(t *testing.T) { function TestConvertSchemaToBytes (line 389) | func TestConvertSchemaToBytes(t *testing.T) { function TestConvertToolCallsToFunctionCalls (line 430) | func TestConvertToolCallsToFunctionCalls(t *testing.T) { FILE: gollm/persist.go type RecordCompletionResponse (line 20) | type RecordCompletionResponse struct type RecordChatResponse (line 25) | type RecordChatResponse struct FILE: gollm/schema.go function BuildSchemaFor (line 26) | func BuildSchemaFor(t reflect.Type) *Schema { FILE: gollm/shims.go function singletonChatResponseIterator (line 17) | func singletonChatResponseIterator(response ChatResponse) ChatResponseIt... FILE: internal/mocks/agent_mock.go type MockChatMessageStore (line 20) | type MockChatMessageStore struct method EXPECT (line 39) | func (m *MockChatMessageStore) EXPECT() *MockChatMessageStoreMockRecor... method AddChatMessage (line 44) | func (m *MockChatMessageStore) AddChatMessage(record *api.Message) err... method ChatMessages (line 58) | func (m *MockChatMessageStore) ChatMessages() []*api.Message { method ClearChatMessages (line 72) | func (m *MockChatMessageStore) ClearChatMessages() error { method SetChatMessages (line 86) | func (m *MockChatMessageStore) SetChatMessages(newHistory []*api.Messa... type MockChatMessageStoreMockRecorder (line 27) | type MockChatMessageStoreMockRecorder struct method AddChatMessage (line 52) | func (mr *MockChatMessageStoreMockRecorder) AddChatMessage(record any)... method ChatMessages (line 66) | func (mr *MockChatMessageStoreMockRecorder) ChatMessages() *gomock.Call { method ClearChatMessages (line 80) | func (mr *MockChatMessageStoreMockRecorder) ClearChatMessages() *gomoc... method SetChatMessages (line 94) | func (mr *MockChatMessageStoreMockRecorder) SetChatMessages(newHistory... function NewMockChatMessageStore (line 32) | func NewMockChatMessageStore(ctrl *gomock.Controller) *MockChatMessageSt... FILE: internal/mocks/gollm_mock.go type MockClient (line 22) | type MockClient struct method EXPECT (line 41) | func (m *MockClient) EXPECT() *MockClientMockRecorder { method Close (line 46) | func (m *MockClient) Close() error { method GenerateCompletion (line 60) | func (m *MockClient) GenerateCompletion(ctx context.Context, req *goll... method ListModels (line 75) | func (m *MockClient) ListModels(ctx context.Context) ([]string, error) { method SetResponseSchema (line 90) | func (m *MockClient) SetResponseSchema(schema *gollm.Schema) error { method StartChat (line 104) | func (m *MockClient) StartChat(systemPrompt, model string) gollm.Chat { type MockClientMockRecorder (line 29) | type MockClientMockRecorder struct method Close (line 54) | func (mr *MockClientMockRecorder) Close() *gomock.Call { method GenerateCompletion (line 69) | func (mr *MockClientMockRecorder) GenerateCompletion(ctx, req any) *go... method ListModels (line 84) | func (mr *MockClientMockRecorder) ListModels(ctx any) *gomock.Call { method SetResponseSchema (line 98) | func (mr *MockClientMockRecorder) SetResponseSchema(schema any) *gomoc... method StartChat (line 112) | func (mr *MockClientMockRecorder) StartChat(systemPrompt, model any) *... function NewMockClient (line 34) | func NewMockClient(ctrl *gomock.Controller) *MockClient { type MockChat (line 118) | type MockChat struct method EXPECT (line 137) | func (m *MockChat) EXPECT() *MockChatMockRecorder { method Initialize (line 142) | func (m *MockChat) Initialize(messages []*api.Message) error { method IsRetryableError (line 156) | func (m *MockChat) IsRetryableError(arg0 error) bool { method Send (line 170) | func (m *MockChat) Send(ctx context.Context, contents ...any) (gollm.C... method SendStreaming (line 190) | func (m *MockChat) SendStreaming(ctx context.Context, contents ...any)... method SetFunctionDefinitions (line 210) | func (m *MockChat) SetFunctionDefinitions(functionDefinitions []*gollm... type MockChatMockRecorder (line 125) | type MockChatMockRecorder struct method Initialize (line 150) | func (mr *MockChatMockRecorder) Initialize(messages any) *gomock.Call { method IsRetryableError (line 164) | func (mr *MockChatMockRecorder) IsRetryableError(arg0 any) *gomock.Call { method Send (line 183) | func (mr *MockChatMockRecorder) Send(ctx any, contents ...any) *gomock... method SendStreaming (line 203) | func (mr *MockChatMockRecorder) SendStreaming(ctx any, contents ...any... method SetFunctionDefinitions (line 218) | func (mr *MockChatMockRecorder) SetFunctionDefinitions(functionDefinit... function NewMockChat (line 130) | func NewMockChat(ctrl *gomock.Controller) *MockChat { FILE: internal/mocks/tools_mock.go type MockTool (line 21) | type MockTool struct method EXPECT (line 40) | func (m *MockTool) EXPECT() *MockToolMockRecorder { method CheckModifiesResource (line 45) | func (m *MockTool) CheckModifiesResource(args map[string]any) string { method Description (line 59) | func (m *MockTool) Description() string { method FunctionDefinition (line 73) | func (m *MockTool) FunctionDefinition() *gollm.FunctionDefinition { method IsInteractive (line 87) | func (m *MockTool) IsInteractive(args map[string]any) (bool, error) { method Name (line 102) | func (m *MockTool) Name() string { method Run (line 116) | func (m *MockTool) Run(ctx context.Context, args map[string]any) (any,... type MockToolMockRecorder (line 28) | type MockToolMockRecorder struct method CheckModifiesResource (line 53) | func (mr *MockToolMockRecorder) CheckModifiesResource(args any) *gomoc... method Description (line 67) | func (mr *MockToolMockRecorder) Description() *gomock.Call { method FunctionDefinition (line 81) | func (mr *MockToolMockRecorder) FunctionDefinition() *gomock.Call { method IsInteractive (line 96) | func (mr *MockToolMockRecorder) IsInteractive(args any) *gomock.Call { method Name (line 110) | func (mr *MockToolMockRecorder) Name() *gomock.Call { method Run (line 125) | func (mr *MockToolMockRecorder) Run(ctx, args any) *gomock.Call { function NewMockTool (line 33) | func NewMockTool(ctrl *gomock.Controller) *MockTool { FILE: kubectl-utils/cmd/kubectl-expect/main.go function main (line 35) | func main() { function run (line 42) | func run(ctx context.Context) error { FILE: kubectl-utils/pkg/kel/expression.go function NewEnv (line 28) | func NewEnv() (*cel.Env, error) { type Expression (line 37) | type Expression struct method Eval (line 61) | func (x *Expression) Eval(ctx context.Context, self *unstructured.Unst... method buildInputs (line 73) | func (x *Expression) buildInputs(self *unstructured.Unstructured) map[... function NewExpression (line 44) | func NewExpression(env *cel.Env, celExpression string) (*Expression, err... type unstructuredToCELAdapter (line 80) | type unstructuredToCELAdapter struct method NativeToValue (line 83) | func (a *unstructuredToCELAdapter) NativeToValue(value any) ref.Val { FILE: kubectl-utils/pkg/kel/info.go type InfoFunction (line 29) | type InfoFunction method BuildStatusPrinter (line 32) | func (x *Expression) BuildStatusPrinter(ctx context.Context) (InfoFuncti... method buildFunctionPrinterFor (line 68) | func (x *Expression) buildFunctionPrinterFor(args []*exprpb.Expr) (InfoF... FILE: kubectl-utils/pkg/kube/client.go type Client (line 28) | type Client struct method DefaultNamespace (line 75) | func (c *Client) DefaultNamespace() (string, error) { method ForGVR (line 88) | func (c *Client) ForGVR(gvr schema.GroupVersionResource, namespace str... function NewClient (line 34) | func NewClient(kubeconfig string) (*Client, error) { function loadKubeconfig (line 63) | func loadKubeconfig(kubeconfigPath string) (clientcmd.ClientConfig, erro... FILE: kubectl-utils/pkg/kube/discovery.go function buildDiscoveryClient (line 28) | func buildDiscoveryClient(restConfig *rest.Config, httpClient *http.Clie... method FindResource (line 37) | func (c *Client) FindResource(ctx context.Context, name string) (*metav1... FILE: pkg/agent/agent_e2e_test.go function recvMsg (line 30) | func recvMsg(t *testing.T, ctx context.Context, ch <-chan any) *api.Mess... function recvUntil (line 46) | func recvUntil(t *testing.T, ctx context.Context, ch <-chan any, pred fu... type fakePart (line 65) | type fakePart struct method AsText (line 70) | func (p fakePart) AsText() (string, bool) { method AsFunctionCalls (line 77) | func (p fakePart) AsFunctionCalls() ([]gollm.FunctionCall, bool) { type fakeCandidate (line 84) | type fakeCandidate struct method String (line 86) | func (c fakeCandidate) String() string { return "" } method Parts (line 87) | func (c fakeCandidate) Parts() []gollm.Part { return c.parts } type fakeChatResponse (line 89) | type fakeChatResponse struct method UsageMetadata (line 91) | func (r fakeChatResponse) UsageMetadata() any { return nil } method Candidates (line 92) | func (r fakeChatResponse) Candidates() []gollm.Candidate { return []go... function fCalls (line 94) | func fCalls(name string, args map[string]any) gollm.Part { function fText (line 98) | func fText(s string) gollm.Part { return fakePart{text: s} } function chatWith (line 100) | func chatWith(parts ...gollm.Part) gollm.ChatResponse { function TestAgentEndToEndToolExecution (line 104) | func TestAgentEndToEndToolExecution(t *testing.T) { function TestAgentEndToEndMetaClear (line 231) | func TestAgentEndToEndMetaClear(t *testing.T) { FILE: pkg/agent/conversation.go type Agent (line 45) | type Agent struct method GetSession (line 143) | func (s *Agent) GetSession() *api.Session { method addMessage (line 156) | func (c *Agent) addMessage(source api.MessageSource, messageType api.M... method setAgentState (line 177) | func (c *Agent) setAgentState(newState api.AgentState) { method AgentState (line 187) | func (c *Agent) AgentState() api.AgentState { method agentState (line 195) | func (c *Agent) agentState() api.AgentState { method Init (line 199) | func (s *Agent) Init(ctx context.Context) error { method Close (line 344) | func (c *Agent) Close() error { method LastErr (line 381) | func (c *Agent) LastErr() error { method Run (line 385) | func (c *Agent) Run(ctx context.Context, initialQuery string) error { method handleMetaQuery (line 817) | func (c *Agent) handleMetaQuery(ctx context.Context, query string) (an... method NewSession (line 896) | func (c *Agent) NewSession() (string, error) { method SaveSession (line 957) | func (c *Agent) SaveSession() (string, error) { method LoadSession (line 1002) | func (c *Agent) LoadSession(sessionID string) error { method ListSessions (line 1057) | func (c *Agent) ListSessions() ([]api.SessionInfo, error) { method listModels (line 1087) | func (c *Agent) listModels(ctx context.Context) ([]string, error) { method DispatchToolCalls (line 1098) | func (c *Agent) DispatchToolCalls(ctx context.Context) error { method analyzeToolCalls (line 1165) | func (c *Agent) analyzeToolCalls(ctx context.Context, toolCalls []goll... method handleChoice (line 1183) | func (c *Agent) handleChoice(ctx context.Context, choice *api.UserChoi... method generatePrompt (line 1221) | func (a *Agent) generatePrompt(_ context.Context, defaultPromptTemplat... type ToolCallAnalysis (line 1157) | type ToolCallAnalysis struct type PromptData (line 1253) | type PromptData struct method ToolsAsJSON (line 1261) | func (a *PromptData) ToolsAsJSON() string { method ToolNames (line 1275) | func (a *PromptData) ToolNames() string { type ReActResponse (line 1279) | type ReActResponse struct type Action (line 1285) | type Action struct function extractJSON (line 1292) | func extractJSON(s string) (string, bool) { function parseReActResponse (line 1309) | func parseReActResponse(input string) (*ReActResponse, error) { function toMap (line 1326) | func toMap(v any) (map[string]any, error) { function candidateToShimCandidate (line 1338) | func candidateToShimCandidate(iterator gollm.ChatResponseIterator) (goll... type ShimResponse (line 1380) | type ShimResponse struct method UsageMetadata (line 1384) | func (r *ShimResponse) UsageMetadata() any { method Candidates (line 1388) | func (r *ShimResponse) Candidates() []gollm.Candidate { type ShimCandidate (line 1392) | type ShimCandidate struct method String (line 1396) | func (c *ShimCandidate) String() string { method Parts (line 1400) | func (c *ShimCandidate) Parts() []gollm.Part { type ShimPart (line 1414) | type ShimPart struct method AsText (line 1419) | func (p *ShimPart) AsText() (string, bool) { method AsFunctionCalls (line 1423) | func (p *ShimPart) AsFunctionCalls() ([]gollm.FunctionCall, bool) { FILE: pkg/agent/conversation_test.go function TestHandleMetaQuery (line 31) | func TestHandleMetaQuery(t *testing.T) { function TestAgent_NewSession (line 252) | func TestAgent_NewSession(t *testing.T) { function TestAgent_LoadSession_ResetsState (line 285) | func TestAgent_LoadSession_ResetsState(t *testing.T) { function TestAgent_Init_CreatesSessionInStore (line 317) | func TestAgent_Init_CreatesSessionInStore(t *testing.T) { function TestAgent_NewSession_NoDeadlock (line 356) | func TestAgent_NewSession_NoDeadlock(t *testing.T) { FILE: pkg/agent/manager.go type Factory (line 28) | type Factory type AgentManager (line 31) | type AgentManager struct method SetAgentCreatedCallback (line 50) | func (sm *AgentManager) SetAgentCreatedCallback(cb func(*Agent)) { method GetAgent (line 60) | func (sm *AgentManager) GetAgent(ctx context.Context, sessionID string... method Close (line 83) | func (sm *AgentManager) Close() error { method ListSessions (line 99) | func (sm *AgentManager) ListSessions() ([]*api.Session, error) { method FindSessionByID (line 104) | func (sm *AgentManager) FindSessionByID(id string) (*api.Session, erro... method DeleteSession (line 109) | func (sm *AgentManager) DeleteSession(id string) error { method UpdateLastAccessed (line 120) | func (sm *AgentManager) UpdateLastAccessed(session *api.Session) error { method startAgent (line 124) | func (sm *AgentManager) startAgent(ctx context.Context, session *api.S... function NewAgentManager (line 40) | func NewAgentManager(factory Factory, sessionManager *sessions.SessionMa... FILE: pkg/agent/mcp_client.go method InitializeMCPClient (line 30) | func (a *Agent) InitializeMCPClient(ctx context.Context) error { method UpdateMCPStatus (line 68) | func (a *Agent) UpdateMCPStatus(ctx context.Context, mcpClientEnabled bo... method getMCPStatus (line 89) | func (a *Agent) getMCPStatus(ctx context.Context, mcpClientEnabled bool)... method convertMCPStatus (line 111) | func (a *Agent) convertMCPStatus(mcpStatus *mcp.MCPStatus) *api.MCPStatus { method GetMCPStatusText (line 151) | func (a *Agent) GetMCPStatusText() string { function extractCommandName (line 206) | func extractCommandName(command string) string { method CloseMCPClient (line 220) | func (a *Agent) CloseMCPClient() error { FILE: pkg/api/models.go type Session (line 22) | type Session struct method AllMessages (line 152) | func (s *Session) AllMessages() []*Message { method String (line 159) | func (s *Session) String() string { type AgentState (line 36) | type AgentState constant AgentStateIdle (line 39) | AgentStateIdle AgentState = "idle" constant AgentStateWaitingForInput (line 40) | AgentStateWaitingForInput AgentState = "waiting-for-input" constant AgentStateRunning (line 41) | AgentStateRunning AgentState = "running" constant AgentStateInitializing (line 42) | AgentStateInitializing AgentState = "initializing" constant AgentStateDone (line 43) | AgentStateDone AgentState = "done" constant AgentStateExited (line 44) | AgentStateExited AgentState = "exited" type MessageType (line 47) | type MessageType constant MessageTypeText (line 50) | MessageTypeText MessageType = "text" constant MessageTypeError (line 51) | MessageTypeError MessageType = "error" constant MessageTypeToolCallRequest (line 52) | MessageTypeToolCallRequest MessageType = "tool-call-request" constant MessageTypeToolCallResponse (line 53) | MessageTypeToolCallResponse MessageType = "tool-call-response" constant MessageTypeUserInputRequest (line 54) | MessageTypeUserInputRequest MessageType = "user-input-request" constant MessageTypeUserInputResponse (line 55) | MessageTypeUserInputResponse MessageType = "user-input-response" constant MessageTypeUserChoiceRequest (line 56) | MessageTypeUserChoiceRequest MessageType = "user-choice-request" constant MessageTypeUserChoiceResponse (line 57) | MessageTypeUserChoiceResponse MessageType = "user-choice-response" constant MessageTypeSessionPickerRequest (line 58) | MessageTypeSessionPickerRequest MessageType = "session-picker-request" constant MessageTypeSessionPickerResponse (line 59) | MessageTypeSessionPickerResponse MessageType = "session-picker-response" type Message (line 62) | type Message struct type MessageSource (line 70) | type MessageSource constant MessageSourceUser (line 73) | MessageSourceUser MessageSource = "user" constant MessageSourceAgent (line 74) | MessageSourceAgent MessageSource = "agent" constant MessageSourceModel (line 75) | MessageSourceModel MessageSource = "model" type UserChoiceRequest (line 78) | type UserChoiceRequest struct type UserChoiceOption (line 83) | type UserChoiceOption struct type UserChoiceResponse (line 88) | type UserChoiceResponse struct type UserInputResponse (line 92) | type UserInputResponse struct type SessionPickerRequest (line 97) | type SessionPickerRequest struct type SessionInfo (line 102) | type SessionInfo struct type SessionPickerResponse (line 113) | type SessionPickerResponse struct type MCPStatus (line 119) | type MCPStatus struct type ServerConnectionInfo (line 129) | type ServerConnectionInfo struct type MCPTool (line 138) | type MCPTool struct type ChatMessageStore (line 145) | type ChatMessageStore interface FILE: pkg/journal/context.go type contextKey (line 21) | type contextKey constant RecorderKey (line 23) | RecorderKey contextKey = "journal-recorder" function RecorderFromContext (line 26) | func RecorderFromContext(ctx context.Context) Recorder { function ContextWithRecorder (line 35) | func ContextWithRecorder(ctx context.Context, recorder Recorder) context... FILE: pkg/journal/loader.go function ParseEventsFromFile (line 28) | func ParseEventsFromFile(p string) ([]*Event, error) { function ParseEvents (line 39) | func ParseEvents(r io.Reader) ([]*Event, error) { function splitYAML (line 64) | func splitYAML(data []byte, atEOF bool) (advance int, token []byte, err ... FILE: pkg/journal/log.go type LogRecorder (line 23) | type LogRecorder struct method Write (line 26) | func (r *LogRecorder) Write(ctx context.Context, event *Event) error { method Close (line 33) | func (r *LogRecorder) Close() error { FILE: pkg/journal/recorder.go type Recorder (line 29) | type Recorder interface type FileRecorder (line 37) | type FileRecorder struct method Close (line 53) | func (r *FileRecorder) Close() error { method Write (line 57) | func (r *FileRecorder) Write(ctx context.Context, event *Event) error { function NewFileRecorder (line 42) | func NewFileRecorder(path string) (*FileRecorder, error) { type Event (line 73) | type Event struct method GetString (line 89) | func (e *Event) GetString(key string) (string, bool) { constant ActionHTTPRequest (line 80) | ActionHTTPRequest = "http.request" constant ActionHTTPResponse (line 81) | ActionHTTPResponse = "http.response" constant ActionHTTPError (line 82) | ActionHTTPError = "http.error" constant ActionUIRender (line 86) | ActionUIRender = "ui.render" FILE: pkg/mcp/client.go type Client (line 34) | type Client struct method Connect (line 96) | func (c *Client) Connect(ctx context.Context) error { method Close (line 112) | func (c *Client) Close() error { method ListTools (line 131) | func (c *Client) ListTools(ctx context.Context) ([]Tool, error) { method CallTool (line 148) | func (c *Client) CallTool(ctx context.Context, toolName string, argume... type Tool (line 44) | type Tool struct method WithServer (line 164) | func (t Tool) WithServer(server string) Tool { method ID (line 171) | func (t Tool) ID() string { method String (line 179) | func (t Tool) String() string { method AsBasicTool (line 187) | func (t Tool) AsBasicTool() Tool { method IsFromServer (line 194) | func (t Tool) IsFromServer(server string) bool { function NewClient (line 54) | func NewClient(config ClientConfig) *Client { function CreateStdioClient (line 73) | func CreateStdioClient(name, command string, args []string, env map[stri... function convertMCPToolsToTools (line 199) | func convertMCPToolsToTools(mcpTools []mcp.Tool) ([]Tool, error) { function convertMCPInputSchema (line 225) | func convertMCPInputSchema(mcpInputSchema *mcp.ToolInputSchema) (*gollm.... function convertMCPMapSchema (line 263) | func convertMCPMapSchema(key string, schemaMap map[string]interface{}) (... function ensureClientConnected (line 338) | func ensureClientConnected(client *mcpclient.Client) error { function initializeClientConnection (line 346) | func initializeClientConnection(ctx context.Context, client *mcpclient.C... function verifyClientConnection (line 365) | func verifyClientConnection(ctx context.Context, client *mcpclient.Clien... function cleanupClient (line 379) | func cleanupClient(client **mcpclient.Client) { function processToolResponse (line 388) | func processToolResponse(result any) (string, error) { function listClientTools (line 442) | func listClientTools(ctx context.Context, client *mcpclient.Client, serv... FILE: pkg/mcp/config.go type Config (line 29) | type Config struct method Save (line 173) | func (c *Config) Save(path string) error { method ValidateConfig (line 244) | func (c *Config) ValidateConfig() error { type ServerConfig (line 35) | type ServerConfig struct function loadDefaultConfig (line 63) | func loadDefaultConfig() (*Config, error) { function DefaultConfigPath (line 82) | func DefaultConfigPath() (string, error) { function LoadConfig (line 115) | func LoadConfig(path string) (*Config, error) { function atomicWriteFile (line 203) | func atomicWriteFile(path string, data []byte, perm os.FileMode) error { function ValidateServerConfig (line 266) | func ValidateServerConfig(config ServerConfig) error { function applyEnvironmentVariables (line 290) | func applyEnvironmentVariables(config *Config) { function applyServerEnvironment (line 298) | func applyServerEnvironment(server *ServerConfig) { function applyAuthEnvironmentVariables (line 319) | func applyAuthEnvironmentVariables(server *ServerConfig, prefix string) { function applyCommandEnvironmentVariables (line 348) | func applyCommandEnvironmentVariables(server *ServerConfig, prefix strin... FILE: pkg/mcp/constants.go constant DefaultConnectionTimeout (line 22) | DefaultConnectionTimeout = 30 * time.Second constant DefaultVerificationTimeout (line 25) | DefaultVerificationTimeout = 10 * time.Second constant DefaultPingTimeout (line 28) | DefaultPingTimeout = 5 * time.Second constant DefaultStabilizationDelay (line 31) | DefaultStabilizationDelay = 2 * time.Second constant ErrServerConnectionFmt (line 36) | ErrServerConnectionFmt = "connecting to MCP server %q: %w" constant ErrServerCloseFmt (line 37) | ErrServerCloseFmt = "closing MCP client %q: %w" constant ErrToolCallFmt (line 38) | ErrToolCallFmt = "calling tool %q: %w" constant ErrPathCheckFmt (line 39) | ErrPathCheckFmt = "checking path %q: %w" constant ClientName (line 44) | ClientName = "kubectl-ai-mcp-client" constant ClientVersion (line 45) | ClientVersion = "1.0.0" constant ConfigFilePermissions (line 50) | ConfigFilePermissions = 0600 constant ConfigDirPermissions (line 51) | ConfigDirPermissions = 0755 constant EnvMCPServerPrefix (line 57) | EnvMCPServerPrefix = "MCP_" FILE: pkg/mcp/http_client.go type httpClient (line 36) | type httpClient struct method getUnderlyingClient (line 63) | func (c *httpClient) getUnderlyingClient() *mcpclient.Client { method ensureConnected (line 68) | func (c *httpClient) ensureConnected() error { method Name (line 73) | func (c *httpClient) Name() string { method Connect (line 78) | func (c *httpClient) Connect(ctx context.Context) error { method createStreamingClient (line 119) | func (c *httpClient) createStreamingClient() (*mcpclient.Client, error) { method createStandardClient (line 195) | func (c *httpClient) createStandardClient() (*mcpclient.Client, error) { method createOAuthClient (line 202) | func (c *httpClient) createOAuthClient(ctx context.Context) (*mcpclien... method initializeConnection (line 240) | func (c *httpClient) initializeConnection(ctx context.Context) error { method verifyConnection (line 245) | func (c *httpClient) verifyConnection(ctx context.Context) error { method cleanup (line 250) | func (c *httpClient) cleanup() { method Close (line 255) | func (c *httpClient) Close() error { method ListTools (line 272) | func (c *httpClient) ListTools(ctx context.Context) ([]Tool, error) { method CallTool (line 283) | func (c *httpClient) CallTool(ctx context.Context, toolName string, ar... function NewHTTPClient (line 49) | func NewHTTPClient(config ClientConfig) MCPClient { FILE: pkg/mcp/interfaces.go type MCPClient (line 25) | type MCPClient interface type ClientConfig (line 49) | type ClientConfig struct type AuthConfig (line 71) | type AuthConfig struct type OAuthConfig (line 81) | type OAuthConfig struct function NewMCPClient (line 91) | func NewMCPClient(config ClientConfig) (MCPClient, error) { FILE: pkg/mcp/manager.go type ServerConnectionInfo (line 31) | type ServerConnectionInfo struct type MCPStatus (line 40) | type MCPStatus struct type Manager (line 54) | type Manager struct method ConnectAll (line 87) | func (m *Manager) ConnectAll(ctx context.Context) error { method Close (line 139) | func (m *Manager) Close() error { method GetClient (line 160) | func (m *Manager) GetClient(name string) (*Client, bool) { method ListClients (line 169) | func (m *Manager) ListClients() []*Client { method DiscoverAndConnectServers (line 187) | func (m *Manager) DiscoverAndConnectServers(ctx context.Context) error { method ListAvailableTools (line 207) | func (m *Manager) ListAvailableTools(ctx context.Context) (map[string]... method RefreshToolDiscovery (line 231) | func (m *Manager) RefreshToolDiscovery(ctx context.Context) (map[strin... method RegisterTools (line 265) | func (m *Manager) RegisterTools(ctx context.Context, registerCallback ... method GetStatus (line 296) | func (m *Manager) GetStatus(ctx context.Context, mcpClientEnabled bool... method LogConfig (line 370) | func (m *Manager) LogConfig(mcpConfigPath string) error { method RegisterWithToolSystem (line 412) | func (m *Manager) RegisterWithToolSystem(ctx context.Context, register... function NewManager (line 61) | func NewManager(config *Config) *Manager { function InitializeManager (line 70) | func InitializeManager() (*Manager, error) { FILE: pkg/mcp/stdio_client.go type stdioClient (line 31) | type stdioClient struct method getUnderlyingClient (line 50) | func (c *stdioClient) getUnderlyingClient() *mcpclient.Client { method ensureConnected (line 55) | func (c *stdioClient) ensureConnected() error { method Name (line 60) | func (c *stdioClient) Name() string { method Connect (line 65) | func (c *stdioClient) Connect(ctx context.Context) error { method initializeConnection (line 102) | func (c *stdioClient) initializeConnection(ctx context.Context) error { method verifyConnection (line 107) | func (c *stdioClient) verifyConnection(ctx context.Context) error { method cleanup (line 112) | func (c *stdioClient) cleanup() { method Close (line 117) | func (c *stdioClient) Close() error { method ListTools (line 134) | func (c *stdioClient) ListTools(ctx context.Context) ([]Tool, error) { method CallTool (line 145) | func (c *stdioClient) CallTool(ctx context.Context, toolName string, a... function NewStdioClient (line 40) | func NewStdioClient(config ClientConfig) MCPClient { FILE: pkg/mcp/utils.go type RetryConfig (line 32) | type RetryConfig struct function DefaultRetryConfig (line 41) | func DefaultRetryConfig(description string) RetryConfig { function RetryOperation (line 52) | func RetryOperation(ctx context.Context, config RetryConfig, operation f... function calculateBackoffDelay (line 93) | func calculateBackoffDelay(attempt int, config RetryConfig) time.Duration { function SanitizeServerName (line 104) | func SanitizeServerName(name string) string { function GroupToolsByServer (line 126) | func GroupToolsByServer(tools map[string][]Tool) map[string]int { function mergeEnvironmentVariables (line 137) | func mergeEnvironmentVariables(processEnv, customEnv []string) []string { function expandPath (line 165) | func expandPath(path string) (string, error) { function withTimeout (line 234) | func withTimeout(ctx context.Context, timeout time.Duration) (context.Co... method ensureConnected (line 239) | func (c *Client) ensureConnected() error { type FunctionDefinition (line 252) | type FunctionDefinition interface type SchemaProperty (line 258) | type SchemaProperty interface type SchemaBuilder (line 264) | type SchemaBuilder function ConvertArgs (line 268) | func ConvertArgs(args map[string]any) map[string]any { function SnakeToCamel (line 287) | func SnakeToCamel(s string) string { function ConvertValue (line 305) | func ConvertValue(paramName string, value any) any { function IsNumberParam (line 346) | func IsNumberParam(name string) bool { function IsBoolParam (line 357) | func IsBoolParam(name string) bool { FILE: pkg/sandbox/executor.go type Executor (line 23) | type Executor interface type ExecResult (line 32) | type ExecResult struct method String (line 41) | func (e *ExecResult) String() string { FILE: pkg/sandbox/kubernetes.go type KubernetesSandbox (line 41) | type KubernetesSandbox struct method Execute (line 51) | func (s *KubernetesSandbox) Execute(ctx context.Context, command strin... method Close (line 81) | func (s *KubernetesSandbox) Close(ctx context.Context) error { method Command (line 166) | func (s *KubernetesSandbox) Command(name string, arg ...string) *Cmd { method CommandContext (line 176) | func (s *KubernetesSandbox) CommandContext(ctx context.Context, name s... method Delete (line 187) | func (s *KubernetesSandbox) Delete(ctx context.Context) error { method deleteKubeconfigMap (line 428) | func (s *KubernetesSandbox) deleteKubeconfigMap(ctx context.Context, n... type Cmd (line 87) | type Cmd struct method Run (line 228) | func (c *Cmd) Run() error { method Output (line 233) | func (c *Cmd) Output() ([]byte, error) { method CombinedOutput (line 240) | func (c *Cmd) CombinedOutput() ([]byte, error) { method execute (line 247) | func (c *Cmd) execute(stdout, stderr io.Writer) error { method getPod (line 296) | func (c *Cmd) getPod() (*corev1.Pod, error) { method createPod (line 309) | func (c *Cmd) createPod() error { method createKubeconfigMap (line 390) | func (c *Cmd) createKubeconfigMap(name string) error { method waitForPodReady (line 437) | func (c *Cmd) waitForPodReady() error { method executeInPod (line 462) | func (c *Cmd) executeInPod(stdout, stderr io.Writer) error { type Option (line 99) | type Option function NewKubernetesSandbox (line 102) | func NewKubernetesSandbox(name string, opts ...Option) (*KubernetesSandb... function WithKubeconfig (line 133) | func WithKubeconfig(kubeconfig string) Option { function WithName (line 141) | func WithName(name string) Option { function WithNamespace (line 149) | func WithNamespace(namespace string) Option { function WithImage (line 157) | func WithImage(image string) Option { FILE: pkg/sandbox/local.go constant defaultBashBin (line 28) | defaultBashBin = "/bin/bash" type Local (line 32) | type Local struct method Execute (line 40) | func (e *Local) Execute(ctx context.Context, command string, env []str... method Close (line 80) | func (e *Local) Close(ctx context.Context) error { function NewLocalExecutor (line 35) | func NewLocalExecutor() *Local { function lookupBashBin (line 85) | func lookupBashBin() string { FILE: pkg/sandbox/seatbelt_executor.go type Seatbelt (line 27) | type Seatbelt struct method Execute (line 39) | func (e *Seatbelt) Execute(ctx context.Context, command string, env []... method Close (line 78) | func (e *Seatbelt) Close(ctx context.Context) error { function NewSeatbeltExecutor (line 32) | func NewSeatbeltExecutor() *Seatbelt { FILE: pkg/sandbox/seatbelt_executor_others.go type Seatbelt (line 25) | type Seatbelt struct method Execute (line 33) | func (e *Seatbelt) Execute(ctx context.Context, command string, env []... method Close (line 38) | func (e *Seatbelt) Close(ctx context.Context) error { function NewSeatbeltExecutor (line 28) | func NewSeatbeltExecutor() *Seatbelt { FILE: pkg/sessions/filesystem.go type filesystemStore (line 30) | type filesystemStore struct method GetSession (line 38) | func (f *filesystemStore) GetSession(id string) (*api.Session, error) { method CreateSession (line 67) | func (f *filesystemStore) CreateSession(session *api.Session) error { method UpdateSession (line 91) | func (f *filesystemStore) UpdateSession(session *api.Session) error { method ListSessions (line 120) | func (f *filesystemStore) ListSessions() ([]*api.Session, error) { method DeleteSession (line 149) | func (f *filesystemStore) DeleteSession(id string) error { function newFilesystemStore (line 34) | func newFilesystemStore(basePath string) Store { type FileChatMessageStore (line 155) | type FileChatMessageStore struct method HistoryPath (line 166) | func (s *FileChatMessageStore) HistoryPath() string { method AddChatMessage (line 171) | func (s *FileChatMessageStore) AddChatMessage(record *api.Message) err... method SetChatMessages (line 224) | func (s *FileChatMessageStore) SetChatMessages(newHistory []*api.Messa... method ChatMessages (line 232) | func (s *FileChatMessageStore) ChatMessages() []*api.Message { method ClearChatMessages (line 244) | func (s *FileChatMessageStore) ClearChatMessages() error { method readMessages (line 251) | func (s *FileChatMessageStore) readMessages() ([]*api.Message, error) { method writeMessages (line 316) | func (s *FileChatMessageStore) writeMessages(messages []*api.Message) ... function NewFileChatMessageStore (line 161) | func NewFileChatMessageStore(path string) *FileChatMessageStore { FILE: pkg/sessions/manager.go type SessionManager (line 25) | type SessionManager struct method NewSession (line 50) | func (sm *SessionManager) NewSession(meta Metadata) (*api.Session, err... method ListSessions (line 72) | func (sm *SessionManager) ListSessions() ([]*api.Session, error) { method FindSessionByID (line 76) | func (sm *SessionManager) FindSessionByID(id string) (*api.Session, er... method DeleteSession (line 80) | func (sm *SessionManager) DeleteSession(id string) error { method GetLatestSession (line 84) | func (sm *SessionManager) GetLatestSession() (*api.Session, error) { method UpdateLastAccessed (line 104) | func (sm *SessionManager) UpdateLastAccessed(session *api.Session) err... function NewSessionManager (line 29) | func NewSessionManager(backend string) (*SessionManager, error) { FILE: pkg/sessions/memory.go type memoryStore (line 25) | type memoryStore struct method GetSession (line 34) | func (m *memoryStore) GetSession(id string) (*api.Session, error) { method CreateSession (line 45) | func (m *memoryStore) CreateSession(session *api.Session) error { method UpdateSession (line 61) | func (m *memoryStore) UpdateSession(session *api.Session) error { method ListSessions (line 73) | func (m *memoryStore) ListSessions() ([]*api.Session, error) { method DeleteSession (line 89) | func (m *memoryStore) DeleteSession(id string) error { function newMemoryStore (line 30) | func newMemoryStore() Store { type InMemoryChatStore (line 103) | type InMemoryChatStore struct method AddChatMessage (line 116) | func (s *InMemoryChatStore) AddChatMessage(record *api.Message) error { method SetChatMessages (line 124) | func (s *InMemoryChatStore) SetChatMessages(newHistory []*api.Message)... method ChatMessages (line 132) | func (s *InMemoryChatStore) ChatMessages() []*api.Message { method ClearChatMessages (line 141) | func (s *InMemoryChatStore) ClearChatMessages() error { function NewInMemoryChatStore (line 109) | func NewInMemoryChatStore() *InMemoryChatStore { FILE: pkg/sessions/store.go constant sessionsDirName (line 27) | sessionsDirName = "sessions" type Metadata (line 29) | type Metadata struct type Store (line 38) | type Store interface function NewStore (line 46) | func NewStore(backend string) (Store, error) { function defaultFilesystemBasePath (line 64) | func defaultFilesystemBasePath() (string, error) { FILE: pkg/tools/bash_tool.go constant defaultBashBin (line 30) | defaultBashBin = "/bin/bash" function expandShellVar (line 34) | func expandShellVar(value string) (string, error) { type BashTool (line 47) | type BashTool struct method Name (line 55) | func (t *BashTool) Name() string { method Description (line 59) | func (t *BashTool) Description() string { method FunctionDefinition (line 63) | func (t *BashTool) FunctionDefinition() *gollm.FunctionDefinition { method Run (line 88) | func (t *BashTool) Run(ctx context.Context, args map[string]any) (any,... method IsInteractive (line 120) | func (t *BashTool) IsInteractive(args map[string]any) (bool, error) { method CheckModifiesResource (line 137) | func (t *BashTool) CheckModifiesResource(args map[string]any) string { function NewBashTool (line 51) | func NewBashTool(executor sandbox.Executor) *BashTool { function validateCommand (line 110) | func validateCommand(command string) error { FILE: pkg/tools/custom_tool.go type CustomToolConfig (line 29) | type CustomToolConfig struct type CustomTool (line 38) | type CustomTool struct method Name (line 56) | func (t *CustomTool) Name() string { method Description (line 61) | func (t *CustomTool) Description() string { method FunctionDefinition (line 66) | func (t *CustomTool) FunctionDefinition() *gollm.FunctionDefinition { method addCommandPrefix (line 96) | func (t *CustomTool) addCommandPrefix(inputCmd string) (string, error) { method Run (line 127) | func (t *CustomTool) Run(ctx context.Context, args map[string]any) (an... method CheckModifiesResource (line 157) | func (t *CustomTool) CheckModifiesResource(args map[string]any) string { method CloneWithExecutor (line 164) | func (t *CustomTool) CloneWithExecutor(executor sandbox.Executor) *Cus... function NewCustomTool (line 44) | func NewCustomTool(config CustomToolConfig) (*CustomTool, error) { FILE: pkg/tools/custom_tool_test.go function TestCustomTool_AddCommandPrefix (line 25) | func TestCustomTool_AddCommandPrefix(t *testing.T) { type MockExecutor (line 120) | type MockExecutor struct method Execute (line 126) | func (m *MockExecutor) Execute(ctx context.Context, command string, en... method Close (line 133) | func (m *MockExecutor) Close(ctx context.Context) error { function TestCustomTool_CloneWithExecutor (line 137) | func TestCustomTool_CloneWithExecutor(t *testing.T) { FILE: pkg/tools/interfaces.go type Tool (line 23) | type Tool interface FILE: pkg/tools/kubectl_filter.go function kubectlModifiesResource (line 64) | func kubectlModifiesResource(command string) string { function analyzeCall (line 122) | func analyzeCall(call *syntax.CallExpr) string { function parseKubectlArgs (line 200) | func parseKubectlArgs(args []string) (verb, subVerb string, hasDryRun bo... FILE: pkg/tools/kubectl_filter_test.go function TestKubectlModifiesResource (line 25) | func TestKubectlModifiesResource(t *testing.T) { function TestKubectlAnalyzerComponents (line 159) | func TestKubectlAnalyzerComponents(t *testing.T) { function TestKubectlCommandParsing (line 214) | func TestKubectlCommandParsing(t *testing.T) { function TestKubectlPathHandling (line 284) | func TestKubectlPathHandling(t *testing.T) { function TestKubectlDetectionLogic (line 322) | func TestKubectlDetectionLogic(t *testing.T) { function TestShellParserBehavior (line 370) | func TestShellParserBehavior(t *testing.T) { function TestSimplifiedKubectlDetection (line 480) | func TestSimplifiedKubectlDetection(t *testing.T) { function TestKubectlAlwaysAtPosition0 (line 529) | func TestKubectlAlwaysAtPosition0(t *testing.T) { FILE: pkg/tools/kubectl_tool.go type Kubectl (line 27) | type Kubectl struct method Name (line 35) | func (t *Kubectl) Name() string { method Description (line 39) | func (t *Kubectl) Description() string { method FunctionDefinition (line 53) | func (t *Kubectl) FunctionDefinition() *gollm.FunctionDefinition { method Run (line 100) | func (t *Kubectl) Run(ctx context.Context, args map[string]any) (any, ... method IsInteractive (line 151) | func (t *Kubectl) IsInteractive(args map[string]any) (bool, error) { method CheckModifiesResource (line 168) | func (t *Kubectl) CheckModifiesResource(args map[string]any) string { function NewKubectlTool (line 31) | func NewKubectlTool(executor sandbox.Executor) *Kubectl { function DetectKubectlStreaming (line 134) | func DetectKubectlStreaming(command string) (bool, string) { function validateKubectlCommand (line 177) | func validateKubectlCommand(command string) error { FILE: pkg/tools/mcp_tool.go function ConvertToolToGollm (line 32) | func ConvertToolToGollm(mcpTool *mcp.Tool) (*gollm.FunctionDefinition, e... type MCPTool (line 47) | type MCPTool struct method Name (line 67) | func (t *MCPTool) Name() string { method UniqueToolName (line 71) | func (t *MCPTool) UniqueToolName() string { method ServerName (line 76) | func (t *MCPTool) ServerName() string { method Description (line 81) | func (t *MCPTool) Description() string { method FunctionDefinition (line 86) | func (t *MCPTool) FunctionDefinition() *gollm.FunctionDefinition { method IsInteractive (line 92) | func (t *MCPTool) IsInteractive(args map[string]any) (bool, error) { method CheckModifiesResource (line 100) | func (t *MCPTool) CheckModifiesResource(args map[string]any) string { method Run (line 107) | func (t *MCPTool) Run(ctx context.Context, args map[string]any) (any, ... function NewMCPTool (line 56) | func NewMCPTool(serverName, toolName, description string, schema *gollm.... FILE: pkg/tools/streaming.go type StreamDetector (line 26) | type StreamDetector function ExecuteWithStreamingHandling (line 31) | func ExecuteWithStreamingHandling(ctx context.Context, executor sandbox.... FILE: pkg/tools/tools.go type ContextKey (line 36) | type ContextKey constant KubeconfigKey (line 39) | KubeconfigKey ContextKey = "kubeconfig" constant WorkDirKey (line 40) | WorkDirKey ContextKey = "work_dir" constant ExecutorKey (line 41) | ExecutorKey ContextKey = "executor" function Lookup (line 44) | func Lookup(name string) Tool { function Default (line 52) | func Default() Tools { function RegisterTool (line 57) | func RegisterTool(tool Tool) { type Tools (line 61) | type Tools struct method Init (line 65) | func (t *Tools) Init() { method Lookup (line 69) | func (t *Tools) Lookup(name string) Tool { method AllTools (line 73) | func (t *Tools) AllTools() []Tool { method Names (line 77) | func (t *Tools) Names() []string { method RegisterTool (line 86) | func (t *Tools) RegisterTool(tool Tool) { method CloneWithExecutor (line 103) | func (t *Tools) CloneWithExecutor(executor sandbox.Executor) Tools { method ParseToolInvocation (line 158) | func (t *Tools) ParseToolInvocation(ctx context.Context, name string, ... type ToolCall (line 120) | type ToolCall struct method Description (line 131) | func (t *ToolCall) Description() string { method InvokeTool (line 194) | func (t *ToolCall) InvokeTool(ctx context.Context, opt InvokeToolOptio... method GetTool (line 326) | func (t *ToolCall) GetTool() Tool { type InvokeToolOptions (line 171) | type InvokeToolOptions struct type ToolRequestEvent (line 181) | type ToolRequestEvent struct type ToolResponseEvent (line 187) | type ToolResponseEvent struct function ToolResultToMap (line 235) | func ToolResultToMap(result any) (map[string]any, error) { function LoadAndRegisterCustomTools (line 262) | func LoadAndRegisterCustomTools(configPath string) error { method IsInteractive (line 320) | func (t *CustomTool) IsInteractive(args map[string]any) (bool, error) { function ExpandShellVar (line 331) | func ExpandShellVar(value string) (string, error) { function IsInteractiveCommand (line 344) | func IsInteractiveCommand(command string) (bool, error) { FILE: pkg/ui/html/htmlui.go type Broadcaster (line 41) | type Broadcaster struct method Run (line 61) | func (b *Broadcaster) Run(ctx context.Context) { method Broadcast (line 90) | func (b *Broadcaster) Broadcast(msg []byte) { function NewBroadcaster (line 50) | func NewBroadcaster() *Broadcaster { type HTMLUserInterface (line 94) | type HTMLUserInterface struct method Run (line 169) | func (u *HTMLUserInterface) Run(ctx context.Context) error { method serveIndex (line 197) | func (u *HTMLUserInterface) serveIndex(w http.ResponseWriter, req *htt... method handleSessionStream (line 202) | func (u *HTMLUserInterface) handleSessionStream(w http.ResponseWriter,... method handleListSessions (line 258) | func (u *HTMLUserInterface) handleListSessions(w http.ResponseWriter, ... method handleCreateSession (line 275) | func (u *HTMLUserInterface) handleCreateSession(w http.ResponseWriter,... method handleRenameSession (line 301) | func (u *HTMLUserInterface) handleRenameSession(w http.ResponseWriter,... method handleDeleteSession (line 345) | func (u *HTMLUserInterface) handleDeleteSession(w http.ResponseWriter,... method handlePOSTSendMessage (line 374) | func (u *HTMLUserInterface) handlePOSTSendMessage(w http.ResponseWrite... method handlePOSTChooseOption (line 410) | func (u *HTMLUserInterface) handlePOSTChooseOption(w http.ResponseWrit... method Close (line 451) | func (u *HTMLUserInterface) Close() error { method ClearScreen (line 472) | func (u *HTMLUserInterface) ClearScreen() { method getSessionStateJSON (line 476) | func (u *HTMLUserInterface) getSessionStateJSON(session *api.Session) ... method getBroadcaster (line 497) | func (u *HTMLUserInterface) getBroadcaster(sessionID string) *Broadcas... method ensureAgentListener (line 521) | func (u *HTMLUserInterface) ensureAgentListener(a *agent.Agent) { function NewHTMLUserInterface (line 114) | func NewHTMLUserInterface(manager *agent.AgentManager, sessionManager *s... FILE: pkg/ui/interfaces.go type UI (line 24) | type UI interface type Type (line 33) | type Type method Set (line 42) | func (u *Type) Set(s string) error { method String (line 52) | func (u *Type) String() string { method Type (line 56) | func (u *Type) Type() string { constant UITypeTerminal (line 36) | UITypeTerminal Type = "terminal" constant UITypeWeb (line 37) | UITypeWeb Type = "web" constant UITypeTUI (line 38) | UITypeTUI Type = "tui" FILE: pkg/ui/terminal.go type computedStyle (line 39) | type computedStyle struct type colorValue (line 44) | type colorValue constant colorGreen (line 47) | colorGreen colorValue = "green" constant colorWhite (line 48) | colorWhite colorValue = "white" constant colorRed (line 49) | colorRed colorValue = "red" type styleOption (line 52) | type styleOption function foreground (line 54) | func foreground(color colorValue) styleOption { function renderMarkdown (line 60) | func renderMarkdown() styleOption { type TerminalUI (line 67) | type TerminalUI struct method Run (line 143) | func (u *TerminalUI) Run(ctx context.Context) error { method ttyReader (line 190) | func (u *TerminalUI) ttyReader() (*bufio.Reader, error) { method readlineInstance (line 204) | func (u *TerminalUI) readlineInstance() (*readline.Instance, error) { method Close (line 229) | func (u *TerminalUI) Close() error { method handleMessage (line 246) | func (u *TerminalUI) handleMessage(msg *api.Message) { method ClearScreen (line 470) | func (u *TerminalUI) ClearScreen() { function getCustomTerminalWidth (line 88) | func getCustomTerminalWidth() int { function NewTerminalUI (line 113) | func NewTerminalUI(agent *agent.Agent, useTTYForInput bool, showToolOutp... function formatToolCallResponse (line 474) | func formatToolCallResponse(payload map[string]any) string { FILE: pkg/ui/tui.go constant logo (line 38) | logo = ` type item (line 90) | type item method FilterValue (line 92) | func (i item) FilterValue() string { return "" } type itemDelegate (line 94) | type itemDelegate struct method Height (line 96) | func (d itemDelegate) Height() int { retur... method Spacing (line 97) | func (d itemDelegate) Spacing() int { retur... method Update (line 98) | func (d itemDelegate) Update(_ tea.Msg, _ *list.Model) tea.Cmd { retur... method Render (line 99) | func (d itemDelegate) Render(w io.Writer, m list.Model, idx int, li li... type TUI (line 112) | type TUI struct method Run (line 124) | func (u *TUI) Run(ctx context.Context) error { method ClearScreen (line 152) | func (u *TUI) ClearScreen() {} function NewTUI (line 117) | func NewTUI(agent *agent.Agent) *TUI { type sessionListMsg (line 154) | type sessionListMsg type tickMsg (line 167) | type tickMsg type renderCache (line 170) | type renderCache struct method get (line 181) | func (rc *renderCache) get(id string) (string, bool) { method set (line 188) | func (rc *renderCache) set(id, content string) { method getRenderer (line 194) | func (rc *renderCache) getRenderer(width int) (*glamour.TermRenderer, ... function newRenderCache (line 177) | func newRenderCache() *renderCache { type model (line 214) | type model struct method fetchSessions (line 156) | func (m *model) fetchSessions() tea.Msg { method Init (line 271) | func (m model) Init() tea.Cmd { method tick (line 275) | func (m model) tick() tea.Cmd { method Update (line 279) | func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { method resize (line 349) | func (m *model) resize() { method updateViewportHeight (line 358) | func (m *model) updateViewportHeight() { method navigateList (line 366) | func (m *model) navigateList(keyType tea.KeyType) tea.Cmd { method handleKey (line 374) | func (m *model) handleKey(msg tea.KeyMsg) (tea.Model, tea.Cmd) { method handleEnter (line 421) | func (m *model) handleEnter() (tea.Model, tea.Cmd) { method handleAgentMsg (line 486) | func (m *model) handleAgentMsg(msg *api.Message) (tea.Model, tea.Cmd) { method refresh (line 542) | func (m *model) refresh() { method renderMessages (line 550) | func (m model) renderMessages() string { method renderMessage (line 588) | func (m model) renderMessage(msg *api.Message, r *glamour.TermRenderer... method renderTextMsg (line 627) | func (m model) renderTextMsg(msg *api.Message, r *glamour.TermRenderer... method renderToolCall (line 651) | func (m model) renderToolCall(msg *api.Message, w int) string { method renderError (line 660) | func (m model) renderError(msg *api.Message, w int) string { method View (line 669) | func (m model) View() string { method viewStatus (line 685) | func (m model) viewStatus(session *api.Session) string { method viewState (line 707) | func (m model) viewState(state api.AgentState) string { method viewDivider (line 730) | func (m model) viewDivider() string { method viewInput (line 734) | func (m model) viewInput(state api.AgentState) string { method viewHelp (line 754) | func (m model) viewHelp(state api.AgentState) string { function newModel (line 235) | func newModel(agent *agent.Agent) model { function formatDuration (line 769) | func formatDuration(d time.Duration) string {