- Implemented AssistantReloadFunc to enable hot-reloading of assistants after deployment, improving deployment flexibility. - Enhanced gRPC authProvider to include workspace and sandbox IDs from incoming context metadata, enriching the authentication context. - Updated tools to support new agent-related functionalities, including listing, downloading, deploying, and connecting agents. - Expanded system tools documentation to include new agent commands, ensuring comprehensive guidance for users.
21 lines
930 B
Go
21 lines
930 B
Go
// Package caller provides a shared interface for calling agents
|
|
// This package is used by both content and search packages to avoid circular dependencies
|
|
package caller
|
|
|
|
import (
|
|
agentContext "github.com/yaoapp/yao/agent/context"
|
|
)
|
|
|
|
// AgentCaller interface for calling agents (to avoid circular dependency)
|
|
// Used by content handlers (vision, audio, etc.) and search handlers (agent mode)
|
|
type AgentCaller interface {
|
|
Stream(ctx *agentContext.Context, messages []agentContext.Message, options ...*agentContext.Options) (*agentContext.Response, error)
|
|
}
|
|
|
|
// AgentGetterFunc is a function type that gets an agent by ID
|
|
// This should be set by the assistant package during initialization
|
|
var AgentGetterFunc func(agentID string) (AgentCaller, error)
|
|
|
|
// AssistantReloadFunc reloads a single assistant from disk after deploy.
|
|
// Set by the assistant package during initialization.
|
|
var AssistantReloadFunc func(id string) error
|