Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConversationAgent ¶
type ConversationAgent interface {
SpaceGranter
Save(ctx context.Context, role, content string) // note: no error to match *agent.Agent
Generate(ctx context.Context, sessionID, prompt string) (string, error)
}
ConversationAgent is the minimal surface main.go relies on for chat + space wiring.
type Participant ¶
type Participant struct {
Alias string
SessionID string
Agent ConversationAgent
}
Participant binds an agent-like runner with its own session identity and shared-session handle.
func (*Participant) Join ¶
func (participant *Participant) Join(space string) bool
func (*Participant) Leave ¶
func (participant *Participant) Leave(space string)
func (*Participant) Retrieve ¶
func (participant *Participant) Retrieve(ctx context.Context) ([]memory.MemoryRecord, error)
func (*Participant) Save ¶
func (participant *Participant) Save(ctx context.Context)
type Participants ¶
type Participants map[string]*Participant
type SharedSession ¶
type SharedSession interface {
}
SharedSession is a lightweight façade over memory.SharedSession used by swarm participants.
type SpaceGranter ¶
SpaceGranter is the minimal capability a Participant needs from an Agent.
type Swarm ¶
type Swarm struct {
*Participants
}
func NewSwarm ¶
func NewSwarm(participants *Participants) *Swarm
func (*Swarm) GetParticipant ¶
func (swarm *Swarm) GetParticipant(id string) *Participant
Click to show internal directories.
Click to hide internal directories.