Versions in this module Expand all Collapse all v0 v0.4.0 Mar 2, 2026 Changes in this version + type Agent struct + func New(config Config) (*Agent, error) + func (a *Agent) Close() error + func (a *Agent) GetSkills() []*skills.Skill + func (a *Agent) LoadSkills(dirs []string) error + func (a *Agent) Process(ctx context.Context, sessionID, content string) (string, error) + func (a *Agent) ProcessWithMemory(ctx context.Context, sessionID, content string) (string, error) + func (a *Agent) RegisterTool(tool Tool) + type BaseTool struct + func NewBaseTool(name, description string, parameters map[string]interface{}, ...) *BaseTool + func (t *BaseTool) Description() string + func (t *BaseTool) Execute(ctx context.Context, args json.RawMessage) (string, error) + func (t *BaseTool) Name() string + func (t *BaseTool) Parameters() map[string]interface{} + type Config struct + APIKey string + BaseURL string + Logger *slog.Logger + MaxTokens int + Model string + ObservabilityHook omnillm.ObservabilityHook + Provider string + SystemPrompt string + Temperature float64 + type SearchArgs struct + Query string + Type string + type SearchTool struct + func NewSearchTool() (*SearchTool, error) + func (t *SearchTool) Description() string + func (t *SearchTool) Execute(ctx context.Context, argsJSON json.RawMessage) (string, error) + func (t *SearchTool) Name() string + func (t *SearchTool) Parameters() map[string]interface{} + type Session struct + CreatedAt time.Time + ID string + Messages []provider.Message + Metadata map[string]interface{} + UpdatedAt time.Time + func (sess *Session) AddMessage(role provider.Role, content string) + func (sess *Session) Clear() + func (sess *Session) GetMessages() []provider.Message + func (sess *Session) GetMetadata(key string) (interface{}, bool) + func (sess *Session) SetMetadata(key string, value interface{}) + func (sess *Session) Trim(n int) + type SessionStore struct + func NewSessionStore() *SessionStore + func (s *SessionStore) Delete(id string) + func (s *SessionStore) Get(id string) *Session + func (s *SessionStore) List() []string + type Tool interface + Description func() string + Execute func(ctx context.Context, args json.RawMessage) (string, error) + Name func() string + Parameters func() map[string]interface{} + type ToolNotFoundError struct + Name string + func (e *ToolNotFoundError) Error() string + type ToolRegistry struct + func NewToolRegistry() *ToolRegistry + func (r *ToolRegistry) Execute(ctx context.Context, name string, args json.RawMessage) (string, error) + func (r *ToolRegistry) Get(name string) (Tool, bool) + func (r *ToolRegistry) GetTools() []provider.Tool + func (r *ToolRegistry) List() []string + func (r *ToolRegistry) Register(tool Tool) + func (r *ToolRegistry) Unregister(name string)