Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Agent ¶
type Agent struct {
// contains filtered or unexported fields
}
Agent orchestrates LLM tool-use conversations.
func New ¶
func New( log logger.Logger, llmProvider provider.Provider, services *baseservices.BaseServices, badgerDB *badgerdb.DB, ) *Agent
New creates a new Agent.
func (*Agent) ClearConversation ¶
ClearConversation clears the conversation history for a user.
type ConversationStore ¶
type ConversationStore struct {
// contains filtered or unexported fields
}
ConversationStore manages per-user conversation history in BadgerDB.
func NewConversationStore ¶
func NewConversationStore(db *badgerdb.DB) *ConversationStore
NewConversationStore creates a new ConversationStore.
func (*ConversationStore) Clear ¶
func (s *ConversationStore) Clear(ctx context.Context, userID int64) error
Clear removes conversation history for a user.
func (*ConversationStore) Load ¶
func (s *ConversationStore) Load(ctx context.Context, userID int64) ([]provider.ChatMessage, error)
Load retrieves the conversation history for a user. Returns empty slice if no history exists.
func (*ConversationStore) Save ¶
func (s *ConversationStore) Save(ctx context.Context, userID int64, messages []provider.ChatMessage) error
Save stores conversation history, keeping only the last N messages.
type Executor ¶
type Executor struct {
// contains filtered or unexported fields
}
Executor dispatches tool calls to the appropriate service methods.
func NewExecutor ¶
func NewExecutor(services *baseservices.BaseServices) *Executor
NewExecutor creates a new Executor.
Click to show internal directories.
Click to hide internal directories.