Documentation
¶
Overview ¶
Package component provides the Component interface and ComponentHost for managing pluggable runtime extensions with lifecycle management.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Capability ¶
type Capability string
Capability identifies a component capability.
const ( CapabilityAgentMemory Capability = "agent.memory" CapabilityAgentPeer Capability = "agent.peer" CapabilityAgentMCP Capability = "agent.mcp" CapabilityAgentTool Capability = "agent.tooling" )
type Component ¶
type Component interface {
Name() string
Capabilities() []Capability
Start(ctx context.Context) error
Close() error
}
Component is a pluggable runtime extension.
Components live outside core business logic, but can be mounted into a Host and started/stopped with app lifecycle.
type Host ¶
type Host struct {
// contains filtered or unexported fields
}
Host stores and manages lifecycle for registered components. It is goroutine-safe.
func (*Host) ByCapability ¶
func (h *Host) ByCapability(cap Capability) []Component
ByCapability returns a snapshot of components exposing cap.
Click to show internal directories.
Click to hide internal directories.