Documentation
¶
Overview ¶
Package ask provides a tool for the LLM to ask the user questions mid-execution.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Inputs ¶
type Inputs struct {
Question string `json:"question" jsonschema:"required,description=The question to ask the user"`
Options []Option `json:"options,omitempty" jsonschema:"description=Available choices (omit for free-form text input)"`
MultiSelect bool `json:"multi_select,omitempty" jsonschema:"description=Allow selecting multiple options (only with options)"`
}
Inputs defines the parameters for the Ask tool.
type Option ¶
type Option struct {
Label string `json:"label" jsonschema:"required,description=Short display text for this choice"`
Description string `json:"description,omitempty" jsonschema:"description=Explanation of what this option means"`
}
Option represents a selectable choice presented to the user.
type Request ¶
Request is the callback payload passed to the UI layer. Decoupled from JSON schema tags.
type Tool ¶
Tool allows the LLM to ask the user a question and receive a response.
func (*Tool) Execute ¶
Execute asks the user a question via the callback and returns their response.
func (*Tool) Parallel ¶
Parallel returns false because Ask blocks on user input; concurrent prompts would confuse the user.
func (*Tool) Sandboxable ¶
Sandboxable returns false as this tool has no filesystem operations.
Click to show internal directories.
Click to hide internal directories.