Documentation
¶
Index ¶
- type Options
- type Runner
- func (r *Runner) HandleChatChunk(msg agentdomain.ChatChunkEvent) tea.Cmd
- func (r *Runner) HandleChatComplete(msg agentdomain.ChatCompleteEvent) tea.Cmd
- func (r *Runner) HandleChatError(msg agentdomain.ChatErrorEvent) tea.Cmd
- func (r *Runner) HandleChatStart(_ agentdomain.ChatStartEvent) tea.Cmd
- func (r *Runner) HandleOptimizationStatus(event agentdomain.OptimizationStatusEvent) tea.Cmd
- func (r *Runner) SetPendingRestoration(originalModel string)
- func (r *Runner) Start(holder agentdomain.BashDetachChannelHolder) tea.Cmd
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Options ¶
type Options struct {
AgentService agentdomain.AgentService
ConversationRepo convdomain.ConversationRepository
ModelService convdomain.ModelService
StateManager stateManager
Listener tui.ChatEventListener
}
Options bundles the dependencies needed to construct a Runner.
type Runner ¶
type Runner struct {
// contains filtered or unexported fields
}
func (*Runner) HandleChatChunk ¶
func (r *Runner) HandleChatChunk(msg agentdomain.ChatChunkEvent) tea.Cmd
HandleChatChunk forwards a streaming content delta to the UI and adjusts chat status if the chunk indicates a thinking → generating transition (or vice versa).
func (*Runner) HandleChatComplete ¶
func (r *Runner) HandleChatComplete(msg agentdomain.ChatCompleteEvent) tea.Cmd
HandleChatComplete restores the pending model (if any), updates chat status, refreshes history, emits tool-call previews, and signals completion.
func (*Runner) HandleChatError ¶
func (r *Runner) HandleChatError(msg agentdomain.ChatErrorEvent) tea.Cmd
HandleChatError tears down session state and emits a sticky error event (with a friendlier message for "timed out" errors).
func (*Runner) HandleChatStart ¶
func (r *Runner) HandleChatStart(_ agentdomain.ChatStartEvent) tea.Cmd
HandleChatStart transitions chat status to Starting and emits the initial "Starting response..." status. Clearing the orchestrator's active-tool indicator is the orchestrator's responsibility (see ChatHandler wrapper).
func (*Runner) HandleOptimizationStatus ¶
func (r *Runner) HandleOptimizationStatus(event agentdomain.OptimizationStatusEvent) tea.Cmd
HandleOptimizationStatus surfaces the "Optimizing conversation..." status transitions emitted by the conversation optimizer.
func (*Runner) SetPendingRestoration ¶
SetPendingRestoration records that a temporary /model switch is in effect and that originalModel should be restored once the next completion ends.
func (*Runner) Start ¶
func (r *Runner) Start(holder agentdomain.BashDetachChannelHolder) tea.Cmd
Start kicks off a streaming chat completion. The returned tea.Cmd performs the request (synchronously in the returned closure) and emits a ChatStartEvent on success or ChatErrorEvent on failure. The holder is attached to the request context so the agent core can find the BashDetachChannelHolder when launching tools that may need backgrounding.