Documentation
¶
Index ¶
- func ResolveCommand(ctx context.Context, rt Runtime, userInput string) string
- func UnwrapMCPToolset(toolset tools.ToolSet) *mcptools.Toolset
- type AgentChoiceEvent
- type AgentChoiceReasoningEvent
- type AgentContext
- type AgentInfoEvent
- type AgentSwitchingEvent
- type AuthorizationEvent
- type Client
- func (c *Client) CreateAgent(ctx context.Context, prompt string) (*api.CreateAgentResponse, error)
- func (c *Client) CreateAgentConfig(ctx context.Context, filename, model, description, instruction string) (*api.CreateAgentConfigResponse, error)
- func (c *Client) CreateSession(ctx context.Context, sessTemplate *session.Session) (*session.Session, error)
- func (c *Client) DeleteAgent(ctx context.Context, filePath string) (*api.DeleteAgentResponse, error)
- func (c *Client) DeleteSession(ctx context.Context, id string) error
- func (c *Client) EditAgentConfig(ctx context.Context, filename string, config latest.Config) (*api.EditAgentConfigResponse, error)
- func (c *Client) ExportAgents(ctx context.Context) (*api.ExportAgentsResponse, error)
- func (c *Client) GetAgent(ctx context.Context, id string) (*latest.Config, error)
- func (c *Client) GetAgents(ctx context.Context) ([]api.Agent, error)
- func (c *Client) GetDesktopToken(ctx context.Context) (*api.DesktopTokenResponse, error)
- func (c *Client) GetSession(ctx context.Context, id string) (*api.SessionResponse, error)
- func (c *Client) GetSessions(ctx context.Context) ([]api.SessionsResponse, error)
- func (c *Client) ImportAgent(ctx context.Context, filePath string) (*api.ImportAgentResponse, error)
- func (c *Client) PullAgent(ctx context.Context, name string) (*api.PullAgentResponse, error)
- func (c *Client) PushAgent(ctx context.Context, filepath, tag string) (*api.PushAgentResponse, error)
- func (c *Client) ResumeElicitation(ctx context.Context, sessionID string, action tools.ElicitationAction, ...) error
- func (c *Client) ResumeSession(ctx context.Context, id, confirmation string) error
- func (c *Client) RunAgent(ctx context.Context, sessionID, agent string, messages []api.Message) (<-chan Event, error)
- func (c *Client) RunAgentWithAgentName(ctx context.Context, sessionID, agent, agentName string, ...) (<-chan Event, error)
- type ClientOption
- type ElicitationError
- type ElicitationRequestEvent
- type ElicitationRequestHandler
- type ElicitationResult
- type ErrorEvent
- type ErrorResponse
- type Event
- func AgentChoice(agentName, content string) Event
- func AgentChoiceReasoning(agentName, content string) Event
- func AgentInfo(agentName, model, description string) Event
- func AgentSwitching(switching bool, fromAgent, toAgent string) Event
- func Authorization(confirmation tools.ElicitationAction, agentName string) Event
- func ElicitationRequest(message string, schema any, meta map[string]any, agentName string) Event
- func Error(msg string) Event
- func MCPInitFinished(agentName string) Event
- func MCPInitStarted(agentName string) Event
- func MaxIterationsReached(maxIterations int) Event
- func PartialToolCall(toolCall tools.ToolCall, toolDefinition tools.Tool, agentName string) Event
- func RAGIndexingCompleted(ragName, strategyName, agentName string) Event
- func RAGIndexingProgress(ragName, strategyName string, current, total int, agentName string) Event
- func RAGIndexingStarted(ragName, strategyName, agentName string) Event
- func RAGReady(ragName, agentName string) Event
- func SessionCompaction(sessionID, status, agentName string) Event
- func SessionSummary(sessionID, summary, agentName string) Event
- func SessionTitle(sessionID, title, agentName string) Event
- func ShellOutput(output string) Event
- func StreamStarted(sessionID, agentName string) Event
- func StreamStopped(sessionID, agentName string) Event
- func TeamInfo(availableAgents []string, currentAgent string) Event
- func TokenUsage(sessionID, agentName string, ...) Event
- func ToolCall(toolCall tools.ToolCall, toolDefinition tools.Tool, agentName string) Event
- func ToolCallConfirmation(toolCall tools.ToolCall, toolDefinition tools.Tool, agentName string) Event
- func ToolCallResponse(toolCall tools.ToolCall, toolDefinition tools.Tool, response, agentName string) Event
- func ToolStatus(toolName, status, agentName string) Event
- func ToolsetInfo(availableTools int, agentName string) Event
- func UserMessage(message string) Event
- func Warning(message, agentName string) Event
- type LocalRuntime
- func (r *LocalRuntime) CurrentAgent() *agent.Agent
- func (r *LocalRuntime) CurrentAgentCommands(context.Context) map[string]string
- func (r *LocalRuntime) CurrentAgentName() string
- func (r *LocalRuntime) CurrentMCPPrompts(ctx context.Context) map[string]mcptools.PromptInfo
- func (r *LocalRuntime) CurrentWelcomeMessage(ctx context.Context) string
- func (r *LocalRuntime) EmitStartupInfo(ctx context.Context, events chan Event)
- func (r *LocalRuntime) InitializeRAG(ctx context.Context, events chan Event)
- func (r *LocalRuntime) Resume(_ context.Context, confirmationType ResumeType)
- func (r *LocalRuntime) ResumeElicitation(ctx context.Context, action tools.ElicitationAction, content map[string]any) error
- func (r *LocalRuntime) Run(ctx context.Context, sess *session.Session) ([]session.Message, error)
- func (r *LocalRuntime) RunStream(ctx context.Context, sess *session.Session) <-chan Event
- func (r *LocalRuntime) StartBackgroundRAGInit(ctx context.Context, sendEvent func(Event))
- func (r *LocalRuntime) Summarize(ctx context.Context, sess *session.Session, events chan Event)
- type MCPInitFinishedEvent
- type MCPInitStartedEvent
- type MaxIterationsReachedEvent
- type ModelStore
- type Opt
- type PartialToolCallEvent
- type RAGIndexingCompletedEvent
- type RAGIndexingProgressEvent
- type RAGIndexingStartedEvent
- type RAGInitializer
- type RAGReadyEvent
- type RemoteRuntime
- func (r *RemoteRuntime) CurrentAgentCommands(ctx context.Context) map[string]string
- func (r *RemoteRuntime) CurrentAgentName() string
- func (r *RemoteRuntime) CurrentWelcomeMessage(ctx context.Context) string
- func (r *RemoteRuntime) EmitStartupInfo(ctx context.Context, events chan Event)
- func (r *RemoteRuntime) Resume(ctx context.Context, confirmationType ResumeType)
- func (r *RemoteRuntime) ResumeElicitation(ctx context.Context, action tools.ElicitationAction, content map[string]any) error
- func (r *RemoteRuntime) Run(ctx context.Context, sess *session.Session) ([]session.Message, error)
- func (r *RemoteRuntime) RunStream(ctx context.Context, sess *session.Session) <-chan Event
- func (r *RemoteRuntime) Summarize(_ context.Context, sess *session.Session, events chan Event)
- type RemoteRuntimeOption
- type ResumeType
- type Runtime
- type SessionCompactionEvent
- type SessionSummaryEvent
- type SessionTitleEvent
- type ShellOutputEvent
- type StreamStartedEvent
- type StreamStoppedEvent
- type TeamInfoEvent
- type TokenUsageEvent
- type ToolCallConfirmationEvent
- type ToolCallEvent
- type ToolCallResponseEvent
- type ToolHandler
- type ToolHandlerFunc
- type ToolStatusEvent
- type ToolsetInfoEvent
- type Usage
- type UserMessageEvent
- type WarningEvent
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ResolveCommand ¶ added in v1.9.2
Types ¶
type AgentChoiceEvent ¶
type AgentChoiceEvent struct {
Type string `json:"type"`
Content string `json:"content"`
AgentContext
}
type AgentChoiceReasoningEvent ¶ added in v1.0.5
type AgentChoiceReasoningEvent struct {
Type string `json:"type"`
Content string `json:"content"`
AgentContext
}
type AgentContext ¶
type AgentContext struct {
AgentName string `json:"agent_name,omitempty"`
}
AgentContext carries optional agent attribution for an event.
func (AgentContext) GetAgentName ¶
func (a AgentContext) GetAgentName() string
GetAgentName returns the agent name for events embedding AgentContext.
type AgentInfoEvent ¶ added in v1.9.14
type AgentInfoEvent struct {
Type string `json:"type"`
AgentName string `json:"agent_name"`
Model string `json:"model"`
Description string `json:"description"`
AgentContext
}
AgentInfoEvent is sent when agent information is available or changes
type AgentSwitchingEvent ¶ added in v1.9.14
type AgentSwitchingEvent struct {
Type string `json:"type"`
Switching bool `json:"switching"`
FromAgent string `json:"from_agent,omitempty"`
ToAgent string `json:"to_agent,omitempty"`
AgentContext
}
AgentSwitchingEvent is sent when agent switching starts or stops
type AuthorizationEvent ¶ added in v1.7.0
type AuthorizationEvent struct {
Type string `json:"type"`
Confirmation tools.ElicitationAction `json:"confirmation"`
AgentContext
}
func (*AuthorizationEvent) GetAgentName ¶ added in v1.7.0
func (e *AuthorizationEvent) GetAgentName() string
type Client ¶ added in v1.3.1
type Client struct {
// contains filtered or unexported fields
}
Client is an HTTP client for the cagent server API
func NewClient ¶ added in v1.3.1
func NewClient(baseURL string, opts ...ClientOption) (*Client, error)
NewClient creates a new HTTP client for the cagent server
func (*Client) CreateAgent ¶ added in v1.3.1
CreateAgent creates a new agent using a prompt
func (*Client) CreateAgentConfig ¶ added in v1.3.1
func (c *Client) CreateAgentConfig(ctx context.Context, filename, model, description, instruction string) (*api.CreateAgentConfigResponse, error)
CreateAgentConfig creates a new agent manually with YAML configuration
func (*Client) CreateSession ¶ added in v1.3.1
func (c *Client) CreateSession(ctx context.Context, sessTemplate *session.Session) (*session.Session, error)
CreateSession creates a new session
func (*Client) DeleteAgent ¶ added in v1.3.1
func (c *Client) DeleteAgent(ctx context.Context, filePath string) (*api.DeleteAgentResponse, error)
DeleteAgent deletes an agent by file path
func (*Client) DeleteSession ¶ added in v1.3.1
DeleteSession deletes a session by ID
func (*Client) EditAgentConfig ¶ added in v1.3.1
func (c *Client) EditAgentConfig(ctx context.Context, filename string, config latest.Config) (*api.EditAgentConfigResponse, error)
EditAgentConfig edits an agent configuration
func (*Client) ExportAgents ¶ added in v1.3.1
ExportAgents exports multiple agents as a zip file
func (*Client) GetDesktopToken ¶ added in v1.3.1
GetDesktopToken retrieves a desktop authentication token
func (*Client) GetSession ¶ added in v1.3.1
GetSession retrieves a session by ID
func (*Client) GetSessions ¶ added in v1.3.1
GetSessions retrieves all sessions
func (*Client) ImportAgent ¶ added in v1.3.1
func (c *Client) ImportAgent(ctx context.Context, filePath string) (*api.ImportAgentResponse, error)
ImportAgent imports an agent from a file path
func (*Client) PushAgent ¶ added in v1.3.1
func (c *Client) PushAgent(ctx context.Context, filepath, tag string) (*api.PushAgentResponse, error)
PushAgent pushes an agent to a remote registry
func (*Client) ResumeElicitation ¶ added in v1.7.0
func (*Client) ResumeSession ¶ added in v1.3.1
ResumeSession resumes a session by ID
func (*Client) RunAgent ¶ added in v1.3.1
func (c *Client) RunAgent(ctx context.Context, sessionID, agent string, messages []api.Message) (<-chan Event, error)
RunAgent executes an agent and returns a channel of streaming events
func (*Client) RunAgentWithAgentName ¶ added in v1.3.1
func (c *Client) RunAgentWithAgentName(ctx context.Context, sessionID, agent, agentName string, messages []api.Message) (<-chan Event, error)
RunAgentWithAgentName executes an agent with a specific agent name and returns a channel of streaming events
type ClientOption ¶ added in v1.3.1
type ClientOption func(*Client)
ClientOption is a function for configuring the Client
func WithHTTPClient ¶ added in v1.3.1
func WithHTTPClient(client *http.Client) ClientOption
WithHTTPClient sets a custom HTTP client
func WithTimeout ¶ added in v1.3.1
func WithTimeout(timeout time.Duration) ClientOption
WithTimeout sets the HTTP client timeout
type ElicitationError ¶ added in v1.7.0
ElicitationError represents an error from a declined/cancelled elicitation
func (*ElicitationError) Error ¶ added in v1.7.0
func (e *ElicitationError) Error() string
type ElicitationRequestEvent ¶ added in v1.7.0
type ElicitationRequestEvent struct {
Type string `json:"type"`
Message string `json:"message"`
Schema any `json:"schema"`
Meta map[string]any `json:"meta,omitempty"`
AgentContext
}
ElicitationRequestEvent is sent when an elicitation request is received from an MCP server
func (*ElicitationRequestEvent) GetAgentName ¶ added in v1.7.0
func (e *ElicitationRequestEvent) GetAgentName() string
type ElicitationRequestHandler ¶ added in v1.7.0
type ElicitationRequestHandler func(ctx context.Context, message string, schema map[string]any) (map[string]any, error)
ElicitationRequestHandler is a function type for handling elicitation requests
type ElicitationResult ¶ added in v1.7.0
type ElicitationResult struct {
Action tools.ElicitationAction
Content map[string]any // The submitted form data (only present when action is "accept")
}
ElicitationResult represents the result of an elicitation request
type ErrorEvent ¶
type ErrorEvent struct {
Type string `json:"type"`
Error string `json:"error"`
AgentContext
}
type ErrorResponse ¶ added in v1.3.1
type ErrorResponse struct {
Error string `json:"error"`
}
ErrorResponse represents an error response from the API
type Event ¶
type Event interface {
GetAgentName() string
}
func AgentChoice ¶
func AgentChoiceReasoning ¶ added in v1.0.5
func AgentSwitching ¶ added in v1.9.14
func Authorization ¶ added in v1.7.0
func Authorization(confirmation tools.ElicitationAction, agentName string) Event
func ElicitationRequest ¶ added in v1.7.0
func MCPInitFinished ¶ added in v1.7.3
func MCPInitStarted ¶ added in v1.7.3
func MaxIterationsReached ¶ added in v1.3.5
func PartialToolCall ¶
func RAGIndexingCompleted ¶ added in v1.9.16
func RAGIndexingProgress ¶ added in v1.9.16
func RAGIndexingStarted ¶ added in v1.9.16
func SessionCompaction ¶
func SessionSummary ¶
func SessionTitle ¶
func ShellOutput ¶ added in v1.0.0
func StreamStarted ¶
func StreamStopped ¶
func TokenUsage ¶
func ToolCallConfirmation ¶
func ToolCallResponse ¶
func ToolStatus ¶ added in v1.9.14
func ToolsetInfo ¶ added in v1.9.14
func UserMessage ¶
type LocalRuntime ¶ added in v1.9.1
type LocalRuntime struct {
// contains filtered or unexported fields
}
LocalRuntime manages the execution of agents
func New ¶
func New(agents *team.Team, opts ...Opt) (*LocalRuntime, error)
New creates a new runtime for an agent and its team
func (*LocalRuntime) CurrentAgent ¶ added in v1.9.1
func (r *LocalRuntime) CurrentAgent() *agent.Agent
CurrentAgent returns the current agent
func (*LocalRuntime) CurrentAgentCommands ¶ added in v1.9.2
func (r *LocalRuntime) CurrentAgentCommands(context.Context) map[string]string
func (*LocalRuntime) CurrentAgentName ¶ added in v1.9.1
func (r *LocalRuntime) CurrentAgentName() string
func (*LocalRuntime) CurrentMCPPrompts ¶ added in v1.9.25
func (r *LocalRuntime) CurrentMCPPrompts(ctx context.Context) map[string]mcptools.PromptInfo
CurrentMCPPrompts returns the available MCP prompts from all active MCP toolsets for the current agent. It discovers prompts by calling ListPrompts on each MCP toolset and aggregates the results into a map keyed by prompt name.
func (*LocalRuntime) CurrentWelcomeMessage ¶ added in v1.9.11
func (r *LocalRuntime) CurrentWelcomeMessage(ctx context.Context) string
func (*LocalRuntime) EmitStartupInfo ¶ added in v1.9.14
func (r *LocalRuntime) EmitStartupInfo(ctx context.Context, events chan Event)
EmitStartupInfo emits initial agent, team, and toolset information for immediate sidebar display
func (*LocalRuntime) InitializeRAG ¶ added in v1.9.16
func (r *LocalRuntime) InitializeRAG(ctx context.Context, events chan Event)
InitializeRAG is called within RunStream as a fallback when background init wasn't used (e.g., for exec command or API mode where there's no App)
func (*LocalRuntime) Resume ¶ added in v1.9.1
func (r *LocalRuntime) Resume(_ context.Context, confirmationType ResumeType)
func (*LocalRuntime) ResumeElicitation ¶ added in v1.9.1
func (r *LocalRuntime) ResumeElicitation(ctx context.Context, action tools.ElicitationAction, content map[string]any) error
ResumeElicitation sends an elicitation response back to a waiting elicitation request
func (*LocalRuntime) RunStream ¶ added in v1.9.1
RunStream starts the agent's interaction loop and returns a channel of events
func (*LocalRuntime) StartBackgroundRAGInit ¶ added in v1.9.16
func (r *LocalRuntime) StartBackgroundRAGInit(ctx context.Context, sendEvent func(Event))
StartBackgroundRAGInit initializes RAG in background and forwards events Should be called early (e.g., by App) to start indexing before RunStream
type MCPInitFinishedEvent ¶ added in v1.7.3
type MCPInitFinishedEvent struct {
Type string `json:"type"`
AgentContext
}
type MCPInitStartedEvent ¶ added in v1.7.3
type MCPInitStartedEvent struct {
Type string `json:"type"`
AgentContext
}
MCP initialization lifecycle events
type MaxIterationsReachedEvent ¶ added in v1.3.5
type MaxIterationsReachedEvent struct {
Type string `json:"type"`
MaxIterations int `json:"max_iterations"`
AgentContext
}
func (*MaxIterationsReachedEvent) GetAgentName ¶ added in v1.3.5
func (e *MaxIterationsReachedEvent) GetAgentName() string
type ModelStore ¶ added in v1.9.16
type Opt ¶
type Opt func(*LocalRuntime)
func WithCurrentAgent ¶
func WithManagedOAuth ¶ added in v1.5.10
func WithModelStore ¶ added in v1.5.4
func WithModelStore(store ModelStore) Opt
func WithRootSessionID ¶ added in v1.6.1
func WithSessionCompaction ¶
func WithTracer ¶
WithTracer sets a custom OpenTelemetry tracer; if not provided, tracing is disabled (no-op).
type PartialToolCallEvent ¶
type PartialToolCallEvent struct {
Type string `json:"type"`
ToolCall tools.ToolCall `json:"tool_call"`
ToolDefinition tools.Tool `json:"tool_definition"`
AgentContext
}
PartialToolCallEvent is sent when a tool call is first received (partial/complete)
type RAGIndexingCompletedEvent ¶ added in v1.9.16
type RAGIndexingCompletedEvent struct {
Type string `json:"type"`
RAGName string `json:"rag_name"`
StrategyName string `json:"strategy_name"`
AgentContext
}
type RAGIndexingProgressEvent ¶ added in v1.9.16
type RAGIndexingStartedEvent ¶ added in v1.9.16
type RAGIndexingStartedEvent struct {
Type string `json:"type"`
RAGName string `json:"rag_name"`
StrategyName string `json:"strategy_name"`
AgentContext
}
RAG lifecycle events
type RAGInitializer ¶ added in v1.9.16
type RAGInitializer interface {
StartBackgroundRAGInit(ctx context.Context, sendEvent func(Event))
}
RAGInitializer is implemented by runtimes that support background RAG initialization. Local runtimes use this to start indexing early; remote runtimes typically do not.
type RAGReadyEvent ¶ added in v1.9.16
type RAGReadyEvent struct {
Type string `json:"type"`
RAGName string `json:"rag_name"`
AgentContext
}
type RemoteRuntime ¶ added in v1.3.1
type RemoteRuntime struct {
// contains filtered or unexported fields
}
RemoteRuntime implements the Interface using a remote client
func NewRemoteRuntime ¶ added in v1.3.1
func NewRemoteRuntime(client *Client, opts ...RemoteRuntimeOption) (*RemoteRuntime, error)
NewRemoteRuntime creates a new remote runtime that implements the Interface
func (*RemoteRuntime) CurrentAgentCommands ¶ added in v1.9.2
func (r *RemoteRuntime) CurrentAgentCommands(ctx context.Context) map[string]string
func (*RemoteRuntime) CurrentAgentName ¶ added in v1.9.1
func (r *RemoteRuntime) CurrentAgentName() string
CurrentAgentName returns the name of the currently active agent
func (*RemoteRuntime) CurrentWelcomeMessage ¶ added in v1.9.11
func (r *RemoteRuntime) CurrentWelcomeMessage(ctx context.Context) string
func (*RemoteRuntime) EmitStartupInfo ¶ added in v1.9.14
func (r *RemoteRuntime) EmitStartupInfo(ctx context.Context, events chan Event)
EmitStartupInfo emits initial agent, team, and toolset information for immediate sidebar display
func (*RemoteRuntime) Resume ¶ added in v1.3.1
func (r *RemoteRuntime) Resume(ctx context.Context, confirmationType ResumeType)
Resume allows resuming execution after user confirmation
func (*RemoteRuntime) ResumeElicitation ¶ added in v1.7.0
func (r *RemoteRuntime) ResumeElicitation(ctx context.Context, action tools.ElicitationAction, content map[string]any) error
ResumeElicitation sends an elicitation response back to a waiting elicitation request
func (*RemoteRuntime) Run ¶ added in v1.3.1
Run starts the agent's interaction loop and returns the final messages
type RemoteRuntimeOption ¶ added in v1.3.1
type RemoteRuntimeOption func(*RemoteRuntime)
RemoteRuntimeOption is a function for configuring the RemoteRuntime
func WithRemoteAgentFilename ¶ added in v1.3.1
func WithRemoteAgentFilename(filename string) RemoteRuntimeOption
WithRemoteAgentFilename sets the agent filename to use with the remote API
func WithRemoteCurrentAgent ¶ added in v1.3.1
func WithRemoteCurrentAgent(agentName string) RemoteRuntimeOption
WithRemoteCurrentAgent sets the current agent name
type ResumeType ¶
type ResumeType string
const ( ResumeTypeApprove ResumeType = "approve" ResumeTypeApproveSession ResumeType = "approve-session" ResumeTypeReject ResumeType = "reject" )
type Runtime ¶
type Runtime interface {
// CurrentAgentName returns the name of the currently active agent
CurrentAgentName() string
// CurrentAgentCommands returns the commands for the active agent
CurrentAgentCommands(ctx context.Context) map[string]string
// CurrentWelcomeMessage returns the welcome message for the active agent
CurrentWelcomeMessage(ctx context.Context) string
// EmitStartupInfo emits initial agent, team, and toolset information for immediate display
EmitStartupInfo(ctx context.Context, events chan Event)
// RunStream starts the agent's interaction loop and returns a channel of events
RunStream(ctx context.Context, sess *session.Session) <-chan Event
// Run starts the agent's interaction loop and returns the final messages
Run(ctx context.Context, sess *session.Session) ([]session.Message, error)
// Resume allows resuming execution after user confirmation
Resume(ctx context.Context, confirmationType ResumeType)
// Summarize generates a summary for the session
Summarize(ctx context.Context, sess *session.Session, events chan Event)
// ResumeElicitation sends an elicitation response back to a waiting elicitation request
ResumeElicitation(_ context.Context, action tools.ElicitationAction, content map[string]any) error
}
Runtime defines the contract for runtime execution
type SessionCompactionEvent ¶
type SessionCompactionEvent struct {
Type string `json:"type"`
SessionID string `json:"session_id"`
Status string `json:"status"`
AgentContext
}
type SessionSummaryEvent ¶
type SessionSummaryEvent struct {
Type string `json:"type"`
SessionID string `json:"session_id"`
Summary string `json:"summary"`
AgentContext
}
type SessionTitleEvent ¶
type SessionTitleEvent struct {
Type string `json:"type"`
SessionID string `json:"session_id"`
Title string `json:"title"`
AgentContext
}
type ShellOutputEvent ¶ added in v1.0.0
func (*ShellOutputEvent) GetAgentName ¶ added in v1.0.0
func (e *ShellOutputEvent) GetAgentName() string
type StreamStartedEvent ¶
type StreamStartedEvent struct {
Type string `json:"type"`
SessionID string `json:"session_id,omitempty"`
AgentContext
}
type StreamStoppedEvent ¶
type StreamStoppedEvent struct {
Type string `json:"type"`
SessionID string `json:"session_id,omitempty"`
AgentContext
}
type TeamInfoEvent ¶ added in v1.9.14
type TeamInfoEvent struct {
Type string `json:"type"`
AvailableAgents []string `json:"available_agents"`
CurrentAgent string `json:"current_agent"`
AgentContext
}
TeamInfoEvent is sent when team information is available
type TokenUsageEvent ¶
type TokenUsageEvent struct {
Type string `json:"type"`
SessionID string `json:"session_id"`
Usage *Usage `json:"usage"`
AgentContext
}
type ToolCallEvent ¶
type ToolCallEvent struct {
Type string `json:"type"`
ToolCall tools.ToolCall `json:"tool_call"`
ToolDefinition tools.Tool `json:"tool_definition"`
AgentContext
}
ToolCallEvent is sent when a tool call is received
type ToolCallResponseEvent ¶
type ToolHandler ¶
type ToolHandler struct {
// contains filtered or unexported fields
}
type ToolHandlerFunc ¶ added in v1.9.20
type ToolHandlerFunc func(ctx context.Context, sess *session.Session, toolCall tools.ToolCall, events chan Event) (*tools.ToolCallResult, error)
ToolHandlerFunc is a function type for handling tool calls
type ToolStatusEvent ¶ added in v1.9.14
type ToolStatusEvent struct {
Type string `json:"type"`
ToolName string `json:"tool_name"`
Status string `json:"status"` // running, completed, failed
AgentContext
}
ToolStatusEvent is sent when a tool's execution status changes
type ToolsetInfoEvent ¶ added in v1.9.14
type ToolsetInfoEvent struct {
Type string `json:"type"`
AvailableTools int `json:"available_tools"`
AgentContext
}
ToolsetInfoEvent is sent when toolset information is available
type UserMessageEvent ¶
UserMessageEvent is sent when a user message is received
func (*UserMessageEvent) GetAgentName ¶
func (e *UserMessageEvent) GetAgentName() string
type WarningEvent ¶ added in v1.9.1
type WarningEvent struct {
Type string `json:"type"`
Message string `json:"message"`
AgentContext
}