Documentation
¶
Index ¶
- type Option
- type Tool
- func (t *Tool) Description() string
- func (t *Tool) DisplayName() string
- func (t *Tool) Execute(ctx context.Context, args string) (string, error)
- func (t *Tool) GetActiveSessions() int
- func (t *Tool) GetActiveSessionsForOrg(orgID string) int
- func (t *Tool) Internal() bool
- func (t *Tool) Name() string
- func (t *Tool) Parameters() map[string]interfaces.ParameterSpec
- func (t *Tool) Run(ctx context.Context, input string) (string, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Option ¶
type Option func(*Tool)
Option represents an option for configuring the tool
func WithDefaultModel ¶
WithDefaultModel sets the default model for new sessions
func WithMaxPromptLength ¶
WithMaxPromptLength sets maximum prompt length
func WithMaxSessions ¶
WithMaxSessions sets the maximum number of concurrent sessions
func WithSessionTimeout ¶
WithSessionTimeout sets the session timeout duration
type Tool ¶
type Tool struct {
// contains filtered or unexported fields
}
Tool implements multi-turn image editing as an agent tool. It manages sessions that allow iterative image creation and refinement through conversation, maintaining context between edits.
func New ¶
func New(editor interfaces.MultiTurnImageEditor, storage storage.ImageStorage, options ...Option) *Tool
New creates a new multi-turn image editing tool.
func (*Tool) Description ¶
Description returns what the tool does
func (*Tool) DisplayName ¶
DisplayName returns a human-friendly name
func (*Tool) GetActiveSessions ¶
GetActiveSessions returns the number of active sessions (useful for monitoring)
func (*Tool) GetActiveSessionsForOrg ¶
GetActiveSessionsForOrg returns the number of active sessions for a specific organization
func (*Tool) Parameters ¶
func (t *Tool) Parameters() map[string]interfaces.ParameterSpec
Parameters returns the tool's parameter specifications