Documentation
¶
Index ¶
- Variables
- func ActorChannel(actorID string) string
- func ApprovalChannel(organizationID string) string
- func BulletinChannel(organizationID string) string
- func GISTScriptPath(baseDir string) string
- func IPCSocketPath(baseDir, orgID string) string
- func KokoroProsodyRate(signalKind string) string
- func OrganizationChannel(organizationID string) string
- func ParseScheduleInterval(expr string) (time.Duration, error)
- func PlatformTTSCommand(baseDir string) (command string, args []string, available bool)
- func PublishPerformance(ctx context.Context, bus EventBus, rec PerformanceRecord) error
- func RunActorDaemon(ctx context.Context, cfg ActorDaemonConfig) error
- func TTSNotInstalledMsg() string
- func VoiceIDForRole(role string) string
- type ActionIntent
- type ActionProposal
- type ActionType
- type Actor
- type ActorDaemonConfig
- type ActorLLMConfig
- type ActorRuntimeSpec
- type AgencyConstitution
- type AgentDaemon
- type AgentIdentity
- type AgentSchedule
- type AnthropicAdapter
- type Bootstrap
- type CapabilityPack
- type CommitCertificate
- type Config
- type ConsensusRequirement
- type ConsensusStrategy
- type ConsensusVote
- type ContextSnapshot
- type CorrectionSignal
- type CredentialBroker
- type CredentialHandle
- type ElasticBudget
- type EventBus
- type ExecProcessSpawner
- type ExecutionPolicy
- type GISTAgentCore
- func (g *GISTAgentCore) BuildAtoms(obs ObservationSnapshot, signal WakeSignal) []gistAtom
- func (g *GISTAgentCore) Compress(ctx context.Context, atoms []gistAtom) (GISTVerdict, string, error)
- func (g *GISTAgentCore) ElasticStretch(verdict GISTVerdict, lastWakeMs int64) GISTVerdict
- func (g *GISTAgentCore) LatticeJSON() string
- func (g *GISTAgentCore) SetLattice(latticeJSON string)
- type GISTVerdict
- type GeminiAdapter
- type GenesisManufacturingInput
- type GenesisPlan
- type GenesisRoleBundle
- type GovernanceMode
- type IPCApprovalPayload
- type IPCBroadcastPayload
- type IPCBulletinPayload
- type IPCHandshake
- type IPCMessage
- type IPCMessageType
- type IPCServer
- type IPCVote
- type InferenceRequest
- type InferenceResult
- type Kernel
- type KernelDecision
- type LLMActorProposer
- func (p *LLMActorProposer) BuildSystemPrompt(obs ObservationSnapshot, role RoleSpec) string
- func (p *LLMActorProposer) BuildUserMessage(obs ObservationSnapshot, signal WakeSignal) string
- func (p *LLMActorProposer) Propose(ctx context.Context, obs ObservationSnapshot, signal WakeSignal, role RoleSpec) ([]ActionProposal, error)
- func (p *LLMActorProposer) SetGISTContext(verdict GISTVerdict)
- type LatticeStore
- type LedgerEntry
- type LedgerEntryKind
- type LedgerEntryStatus
- type LedgerService
- func (l *LedgerService) Append(ctx context.Context, entry LedgerEntry) (CommitCertificate, error)
- func (l *LedgerService) AppendSchedule(ctx context.Context, schedule AgentSchedule, signal WakeSignal) (CommitCertificate, error)
- func (l *LedgerService) AppendSignal(ctx context.Context, signal WakeSignal) (CommitCertificate, error)
- func (l *LedgerService) AppendSnapshot(ctx context.Context, snapshot ContextSnapshot) (CommitCertificate, error)
- func (l *LedgerService) AppendVoiceEvent(ctx context.Context, event VoiceEvent) (CommitCertificate, error)
- func (l *LedgerService) Finalize(ctx context.Context, entryID string) (CommitCertificate, error)
- func (l *LedgerService) LatestSnapshot(ctx context.Context, organizationID string) (*ContextSnapshot, error)
- func (l *LedgerService) Pending(ctx context.Context, organizationID string) ([]LedgerEntry, error)
- func (l *LedgerService) Propose(ctx context.Context, entry LedgerEntry) (LedgerEntry, error)
- func (l *LedgerService) Replay(ctx context.Context) ([]LedgerEntry, error)
- func (l *LedgerService) Vote(ctx context.Context, entryID string, vote ConsensusVote) (QuorumState, error)
- type MemoryEventBus
- type ModelRouter
- type NestedScheduler
- type ObservationSnapshot
- type OfficeStatus
- type OllamaAdapter
- type OpenAIAdapter
- type OrgIntent
- type PerformanceRecord
- type ProcessHandle
- type ProcessSpawner
- type ProjectionDaemon
- type ProviderAdapter
- type PublicationRecord
- type QuorumState
- type RedisConfig
- type RedisEventBus
- type ResourceState
- type RoleSpec
- type RoutingDecision
- type RoutingLog
- type RuntimeConfig
- type RuntimeManager
- func (r *RuntimeManager) Actors() []AgentIdentity
- func (r *RuntimeManager) Register(ctx context.Context, actor Actor) error
- func (r *RuntimeManager) RegisterSpec(ctx context.Context, spec ActorRuntimeSpec) error
- func (r *RuntimeManager) Running() bool
- func (r *RuntimeManager) SetConstitution(constitution AgencyConstitution)
- func (r *RuntimeManager) Specs() []ActorRuntimeSpec
- func (r *RuntimeManager) Start(ctx context.Context) error
- func (r *RuntimeManager) Stop()
- type RuntimeMode
- type ScheduleLayerConfig
- type ScheduleNode
- type Scheduler
- type Service
- func (s *Service) PublishSignal(ctx context.Context, signal WakeSignal) error
- func (s *Service) RegisterActor(ctx context.Context, actor Actor) error
- func (s *Service) RegisterSchedule(ctx context.Context, schedule AgentSchedule) error
- func (s *Service) Shutdown(ctx context.Context) error
- func (s *Service) Snapshot(ctx context.Context, organizationID string) (*ContextSnapshot, error)
- func (s *Service) StartCoordinator(ctx context.Context, constitution AgencyConstitution) error
- func (s *Service) StartOffice(ctx context.Context, constitution AgencyConstitution) error
- func (s *Service) StartRuntime(ctx context.Context, constitution AgencyConstitution) error
- func (s *Service) StartScheduler(ctx context.Context, organizationID string) error
- func (s *Service) Status(ctx context.Context, organizationID string) (OfficeStatus, error)
- type ServiceRole
- type ShiftHandoff
- type SignalKind
- type SpawnLineage
- type SpeechRuntimeConfig
- type TaskSummary
- type VoiceEvent
- type VoiceEventKind
- type VoiceGateway
- func (g *VoiceGateway) IngestTranscript(ctx context.Context, req VoiceTranscriptRequest) (VoiceTranscriptResult, error)
- func (g *VoiceGateway) Serve(ctx context.Context, organizationID string) error
- func (g *VoiceGateway) SetProjection(ctx context.Context, req VoiceProjectionRequest) (VoiceRoomState, error)
- func (g *VoiceGateway) Status(ctx context.Context, organizationID string) (VoiceGatewayStatus, error)
- func (g *VoiceGateway) Synthesize(ctx context.Context, req VoiceSynthesisRequest) (VoiceSynthesisResult, error)
- type VoiceGatewayConfig
- type VoiceGatewayStatus
- type VoiceProjectionDefaults
- type VoiceProjectionRequest
- type VoiceRoomState
- type VoiceSynthesisRequest
- type VoiceSynthesisResult
- type VoiceTranscriptRequest
- type VoiceTranscriptResult
- type WakeSignal
Constants ¶
This section is empty.
Variables ¶
var KokoroVoiceMap = map[string]string{
"coordinator": "am_adam",
"architect": "bm_daniel",
"developer": "am_michael",
"analyst": "bf_emma",
"scheduler": "af_bella",
"reviewer": "bm_george",
"default": "af_heart",
}
KokoroVoiceMap maps agent role archetypes to Kokoro voice IDs.
Functions ¶
func ActorChannel ¶
func ApprovalChannel ¶
func BulletinChannel ¶
BulletinChannel returns the pub/sub channel name for an organization's bulletin.
func GISTScriptPath ¶
GISTScriptPath returns the conventional path to the GIST subprocess script.
func IPCSocketPath ¶
IPCSocketPath returns the conventional socket path for an organization.
func KokoroProsodyRate ¶
KokoroProsodyRate returns the speech rate multiplier for a given signal kind.
func OrganizationChannel ¶
func ParseScheduleInterval ¶
ParseScheduleInterval parses a schedule expression and returns its firing interval.
func PlatformTTSCommand ¶
PlatformTTSCommand returns the best available TTS command for the current platform. Priority: Kokoro Python wrapper > macOS say fallback.
func PublishPerformance ¶
func PublishPerformance(ctx context.Context, bus EventBus, rec PerformanceRecord) error
PublishPerformance serialises a PerformanceRecord into a WakeSignal and publishes it to the organization's bulletin channel.
func RunActorDaemon ¶
func RunActorDaemon(ctx context.Context, cfg ActorDaemonConfig) error
func TTSNotInstalledMsg ¶
func TTSNotInstalledMsg() string
TTSNotInstalledMsg returns the install hint message.
func VoiceIDForRole ¶
VoiceIDForRole returns the Kokoro voice ID for a given agent role name.
Types ¶
type ActionIntent ¶
type ActionIntent struct {
TaskType string `json:"taskType"`
Complexity float64 `json:"complexity"`
LatencyBudgetMs int64 `json:"latencyBudgetMs"`
PrivacyLevel string `json:"privacyLevel"`
CostCeilingUsd float64 `json:"costCeilingUsd"`
RequiredTools []string `json:"requiredTools,omitempty"`
}
ActionIntent carries model routing requirements derived from a GISTVerdict.
type ActionProposal ¶
type ActionProposal struct {
ID string `json:"id"`
ActorID string `json:"actorId"`
OrganizationID string `json:"organizationId"`
Type ActionType `json:"type"`
Target string `json:"target,omitempty"`
Payload map[string]any `json:"payload,omitempty"`
ObservedAt int64 `json:"observedAt,omitempty"`
ProposedAt int64 `json:"proposedAt"`
}
type ActionType ¶
type ActionType string
const ( ActionWriteCode ActionType = "write_code" ActionRunTest ActionType = "run_test" ActionPingPeer ActionType = "ping_peer" ActionUpdateTask ActionType = "update_task" ActionRequestReview ActionType = "request_review" ActionBroadcast ActionType = "broadcast" ActionSpawnAgent ActionType = "spawn_agent" ActionPublishArtifact ActionType = "publish_artifact" ActionHandoffShift ActionType = "handoff_shift" )
type Actor ¶
type Actor interface {
Identity() AgentIdentity
Capabilities() CapabilityPack
Handle(context.Context, ObservationSnapshot, WakeSignal) ([]ActionProposal, error)
}
type ActorDaemonConfig ¶
type ActorDaemonConfig struct {
BaseDir string
Redis *RedisConfig
Constitution AgencyConstitution
SpecPath string
// LatticeStore persists GIST lattice state across wake cycles.
// If nil, lattice state is not persisted (in-memory only).
LatticeStore LatticeStore
// RoutingLog persists model routing decisions. Optional.
RoutingLog RoutingLog
// ExecutionPolicy constrains model selection. Zero value = permissive.
ExecutionPolicy ExecutionPolicy
}
type ActorLLMConfig ¶
ActorLLMConfig holds configuration for LLM-backed action generation.
func DefaultActorLLMConfig ¶
func DefaultActorLLMConfig() ActorLLMConfig
DefaultActorLLMConfig reads config from environment variables.
type ActorRuntimeSpec ¶
type ActorRuntimeSpec struct {
Identity AgentIdentity `json:"identity"`
Capabilities CapabilityPack `json:"capabilities"`
OrganizationID string `json:"organizationId,omitempty"`
RegisteredAt int64 `json:"registeredAt"`
RuntimeMode RuntimeMode `json:"runtimeMode,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
}
type AgencyConstitution ¶
type AgencyConstitution struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
OrganizationID string `json:"organizationId"`
GovernanceMode GovernanceMode `json:"governanceMode"`
Roles map[string]RoleSpec `json:"roles"`
Metadata map[string]string `json:"metadata,omitempty"`
}
func ConstitutionFromConfig ¶
func ConstitutionFromConfig(cfg *projectconfig.Config, preferred string) (AgencyConstitution, error)
type AgentDaemon ¶
type AgentDaemon struct {
// contains filtered or unexported fields
}
func NewAgentDaemon ¶
func NewAgentDaemon(cfg RuntimeConfig, constitution AgencyConstitution, actor Actor) *AgentDaemon
type AgentIdentity ¶
type AgentIdentity struct {
ID string `json:"id"`
Name string `json:"name"`
Role string `json:"role"`
OrganizationID string `json:"organizationId"`
ParentID string `json:"parentId,omitempty"`
AvatarPrompt string `json:"avatarPrompt,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
}
type AgentSchedule ¶
type AgentSchedule struct {
ID string `json:"id"`
ActorID string `json:"actorId"`
Expression string `json:"expression"`
Timezone string `json:"timezone,omitempty"`
Enabled bool `json:"enabled"`
DefaultSignalKind SignalKind `json:"defaultSignalKind"`
Metadata map[string]string `json:"metadata,omitempty"`
}
type AnthropicAdapter ¶
type AnthropicAdapter struct {
// contains filtered or unexported fields
}
func NewAnthropicAdapter ¶
func NewAnthropicAdapter() *AnthropicAdapter
func (*AnthropicAdapter) Execute ¶
func (a *AnthropicAdapter) Execute(ctx context.Context, req InferenceRequest) (InferenceResult, error)
func (*AnthropicAdapter) ModelID ¶
func (a *AnthropicAdapter) ModelID() string
func (*AnthropicAdapter) Name ¶
func (a *AnthropicAdapter) Name() string
type Bootstrap ¶
type Bootstrap struct {
Config Config
Constitution AgencyConstitution
}
func LoadBootstrap ¶
type CapabilityPack ¶
type CommitCertificate ¶
type CommitCertificate struct {
EntryID string `json:"entryId"`
Sequence int64 `json:"sequence"`
Hash string `json:"hash"`
CommittedAt int64 `json:"committedAt"`
QuorumSize int `json:"quorumSize"`
Status LedgerEntryStatus `json:"status,omitempty"`
Approvals int `json:"approvals,omitempty"`
Rejections int `json:"rejections,omitempty"`
}
type Config ¶
type Config struct {
BaseDir string
WorkingDir string
RuntimeMode RuntimeMode
ActorBinaryPath string
Redis *RedisConfig
Voice *VoiceGatewayConfig
}
type ConsensusRequirement ¶
type ConsensusRequirement struct {
Strategy ConsensusStrategy `json:"strategy,omitempty"`
QuorumKey string `json:"quorumKey,omitempty"`
RequiredApprovals int `json:"requiredApprovals,omitempty"`
EligibleVoters []string `json:"eligibleVoters,omitempty"`
AutoFinalize bool `json:"autoFinalize,omitempty"`
}
type ConsensusStrategy ¶
type ConsensusStrategy string
const ( ConsensusStrategyDirect ConsensusStrategy = "direct" ConsensusStrategyQuorum ConsensusStrategy = "quorum" )
type ConsensusVote ¶
type ContextSnapshot ¶
type ContextSnapshot struct {
OrganizationID string `json:"organizationId"`
LedgerSequence int64 `json:"ledgerSequence"`
Actors []AgentIdentity `json:"actors,omitempty"`
Publications []PublicationRecord `json:"publications,omitempty"`
LastSignal *WakeSignal `json:"lastSignal,omitempty"`
VoiceRooms []VoiceRoomState `json:"voiceRooms,omitempty"`
LastVoiceEvent *VoiceEvent `json:"lastVoiceEvent,omitempty"`
OpenSchedules []AgentSchedule `json:"openSchedules,omitempty"`
UpdatedAt int64 `json:"updatedAt"`
Metadata map[string]string `json:"metadata,omitempty"`
}
type CorrectionSignal ¶
type CredentialBroker ¶
type CredentialBroker struct {
// contains filtered or unexported fields
}
CredentialBroker loads and validates provider credentials from environment.
func NewCredentialBroker ¶
func NewCredentialBroker() *CredentialBroker
NewCredentialBroker probes the environment for known provider API keys.
func (*CredentialBroker) Handle ¶
func (b *CredentialBroker) Handle(provider string) (CredentialHandle, bool)
Handle returns the credential handle for the given provider name.
func (*CredentialBroker) ValidHandles ¶
func (b *CredentialBroker) ValidHandles() []CredentialHandle
ValidHandles returns only handles whose status is "valid".
type CredentialHandle ¶
type CredentialHandle struct {
Provider string `json:"provider"`
KeyRef string `json:"keyRef"` // env var name
Status string `json:"status"` // "valid", "missing", "expired"
ModelID string `json:"modelId"` // default model for this credential
}
CredentialHandle represents a validated provider credential.
type ElasticBudget ¶
type ElasticBudget struct {
RecallThreshold float64 `json:"recallThreshold"`
MaxTTLMs int64 `json:"maxTtlMs"`
StretchFactor float64 `json:"stretchFactor,omitempty"`
}
ElasticBudget controls how much GIST elastic stretch is allowed per wake cycle.
func DefaultGISTBudget ¶
func DefaultGISTBudget() ElasticBudget
DefaultGISTBudget reads elastic budget settings from environment variables.
type ExecProcessSpawner ¶
type ExecProcessSpawner struct {
BinaryPath string
WorkingDirectory string
BaseDir string
Redis *RedisConfig
ConstitutionName string
}
func (*ExecProcessSpawner) Spawn ¶
func (s *ExecProcessSpawner) Spawn(ctx context.Context, spec ActorRuntimeSpec) (ProcessHandle, error)
type ExecutionPolicy ¶
type ExecutionPolicy struct {
AllowedProviders []string `json:"allowedProviders,omitempty"`
PreferLocal bool `json:"preferLocal"`
MaxCostUsd float64 `json:"maxCostUsd,omitempty"`
MaxLatencyMs int64 `json:"maxLatencyMs,omitempty"`
PrivacyLevel string `json:"privacyLevel,omitempty"` // "local", "cloud", "any"
}
ExecutionPolicy constrains which providers the ModelRouter may select.
type GISTAgentCore ¶
type GISTAgentCore struct {
// contains filtered or unexported fields
}
GISTAgentCore manages the per-agent GIST Python subprocess. It provides causal compression of observations into GISTVerdict values that are used to prefix LLM calls.
If the subprocess is unavailable the core degrades gracefully, returning a low-confidence verdict so the actor can still act.
func NewGISTAgentCore ¶
func NewGISTAgentCore(agentID, scriptPath string, budget ElasticBudget) *GISTAgentCore
NewGISTAgentCore creates a new core for the given agent. scriptPath should point to the gist Python entry-point (e.g. scripts/gist_subprocess.py). If the script does not exist the core will return degraded verdicts on every call.
func (*GISTAgentCore) BuildAtoms ¶
func (g *GISTAgentCore) BuildAtoms(obs ObservationSnapshot, signal WakeSignal) []gistAtom
BuildAtoms converts an observation snapshot and wake signal into GIST atoms.
func (*GISTAgentCore) Compress ¶
func (g *GISTAgentCore) Compress(ctx context.Context, atoms []gistAtom) (GISTVerdict, string, error)
Compress sends atoms to the GIST Python subprocess and returns a verdict. Degrades gracefully if the subprocess is unavailable or errors.
func (*GISTAgentCore) ElasticStretch ¶
func (g *GISTAgentCore) ElasticStretch(verdict GISTVerdict, lastWakeMs int64) GISTVerdict
ElasticStretch adjusts verdict confidence based on the elastic budget TTL. If the previous lattice is fresh enough, it boosts confidence; otherwise it returns the verdict unchanged.
func (*GISTAgentCore) LatticeJSON ¶
func (g *GISTAgentCore) LatticeJSON() string
LatticeJSON returns the current lattice JSON (to be persisted to DB after wake).
func (*GISTAgentCore) SetLattice ¶
func (g *GISTAgentCore) SetLattice(latticeJSON string)
SetLattice updates the persisted lattice state (loaded from DB before each wake).
type GISTVerdict ¶
type GISTVerdict struct {
Verdict string `json:"verdict"`
Confidence float64 `json:"confidence"`
CausalChain []string `json:"causalChain,omitempty"`
OpenQuestions []string `json:"openQuestions,omitempty"`
ExecutionIntent string `json:"executionIntent"`
}
GISTVerdict is the output of the GIST causal compression step.
type GeminiAdapter ¶
type GeminiAdapter struct {
// contains filtered or unexported fields
}
func NewGeminiAdapter ¶
func NewGeminiAdapter() *GeminiAdapter
func (*GeminiAdapter) Execute ¶
func (g *GeminiAdapter) Execute(ctx context.Context, req InferenceRequest) (InferenceResult, error)
func (*GeminiAdapter) ModelID ¶
func (g *GeminiAdapter) ModelID() string
func (*GeminiAdapter) Name ¶
func (g *GeminiAdapter) Name() string
type GenesisManufacturingInput ¶
type GenesisManufacturingInput struct {
Intent string
Domain string
TimeHorizon string
WorkingStyle string
Governance string
GoalShape string
ConstitutionName string
Constitution config.AgencyConstitution
Template config.TeamTemplate
RequestedRoles []string
DefaultCadence string
Timezone string
RedisAddress string
LedgerPath string
}
type GenesisPlan ¶
type GenesisPlan struct {
Intent OrgIntent `json:"intent"`
Summary string `json:"summary"`
ConstitutionName string `json:"constitutionName"`
Blueprint string `json:"blueprint,omitempty"`
TeamTemplate string `json:"teamTemplate,omitempty"`
Topology string `json:"topology,omitempty"`
RoleBundles []GenesisRoleBundle `json:"roleBundles,omitempty"`
SocialThread []string `json:"socialThread,omitempty"`
ManufacturingSignals []string `json:"manufacturingSignals,omitempty"`
}
func ManufactureGenesis ¶
func ManufactureGenesis(input GenesisManufacturingInput) GenesisPlan
type GenesisRoleBundle ¶
type GenesisRoleBundle struct {
RoleName string `json:"roleName"`
DisplayName string `json:"displayName"`
Profile string `json:"profile,omitempty"`
ReportsTo string `json:"reportsTo,omitempty"`
Archetype string `json:"archetype,omitempty"`
Mission string `json:"mission"`
WorkingPosture string `json:"workingPosture,omitempty"`
Personality string `json:"personality,omitempty"`
OfficePresence string `json:"officePresence,omitempty"`
AvatarPrompt string `json:"avatarPrompt,omitempty"`
SystemPrompt string `json:"systemPrompt,omitempty"`
Skills []string `json:"skills,omitempty"`
Tools []string `json:"tools,omitempty"`
AllowedActions []ActionType `json:"allowedActions,omitempty"`
ObservationScopes []string `json:"observationScopes,omitempty"`
PeerRouting map[string]string `json:"peerRouting,omitempty"`
CapabilityPack CapabilityPack `json:"capabilityPack"`
RecommendedSchedule AgentSchedule `json:"recommendedSchedule"`
SpawnOrder int `json:"spawnOrder"`
CanSpawnAgents bool `json:"canSpawnAgents"`
}
type GovernanceMode ¶
type GovernanceMode string
const ( GovernanceHierarchical GovernanceMode = "hierarchical" GovernancePeer GovernanceMode = "peer" GovernanceFederated GovernanceMode = "federated" GovernanceFlat GovernanceMode = "flat" GovernanceHybrid GovernanceMode = "hybrid" )
type IPCApprovalPayload ¶
type IPCApprovalPayload struct {
ProposalID string `json:"proposalId"`
ActorID string `json:"actorId"`
ActionType string `json:"actionType"`
Target string `json:"target"`
CreatedAt int64 `json:"createdAt"`
}
IPCApprovalPayload carries a pending action proposal.
type IPCBroadcastPayload ¶
type IPCBroadcastPayload struct {
ActorID string `json:"actorId"`
Message string `json:"message"`
CreatedAt int64 `json:"createdAt"`
}
IPCBroadcastPayload carries a live agent message.
type IPCBulletinPayload ¶
type IPCBulletinPayload struct {
ActorID string `json:"actorId"`
Directive string `json:"directive"`
Output string `json:"output"`
Score float64 `json:"score"`
Provider string `json:"provider"`
ModelID string `json:"modelId"`
CreatedAt int64 `json:"createdAt"`
}
IPCBulletinPayload carries a performance record.
type IPCHandshake ¶
type IPCHandshake struct {
OrgID string `json:"orgId"`
ClientType string `json:"clientType"` // "desktop", "cli", "web"
}
IPCHandshake is the first message a client sends after connecting.
type IPCMessage ¶
type IPCMessage struct {
Type IPCMessageType `json:"type"`
Payload json.RawMessage `json:"payload,omitempty"`
}
IPCMessage is the newline-delimited JSON envelope exchanged over the socket.
type IPCMessageType ¶
type IPCMessageType string
IPCMessageType identifies the kind of event sent over the socket.
const ( IPCTypeBroadcast IPCMessageType = "broadcast" IPCTypeApproval IPCMessageType = "approval" IPCTypeBulletin IPCMessageType = "bulletin" IPCTypeVote IPCMessageType = "vote" IPCTypeHandshake IPCMessageType = "handshake" IPCTypePing IPCMessageType = "ping" IPCTypePong IPCMessageType = "pong" )
type IPCServer ¶
type IPCServer struct {
// contains filtered or unexported fields
}
IPCServer listens on a Unix socket and fans out office events to connected clients. Clients subscribe by sending a handshake; they can send votes back.
func NewIPCServer ¶
NewIPCServer creates an IPC server that will listen on socketPath.
func (*IPCServer) Broadcast ¶
func (s *IPCServer) Broadcast(orgID string, msg IPCMessage)
Broadcast sends a message directly to all connected clients for an org. Used for server-initiated notifications (e.g. office boot/stop).
type InferenceRequest ¶
type InferenceRequest struct {
System string `json:"system"`
UserMessage string `json:"userMessage"`
Intent ActionIntent `json:"intent"`
AgentID string `json:"agentId"`
OrgID string `json:"orgId"`
}
InferenceRequest is the input to the ModelRouter.
type InferenceResult ¶
type InferenceResult struct {
Text string `json:"text"`
Provider string `json:"provider"`
ModelID string `json:"modelId"`
LatencyMs int64 `json:"latencyMs"`
TokensUsed int `json:"tokensUsed,omitempty"`
}
InferenceResult is the output from a ProviderAdapter.
type Kernel ¶
type Kernel struct{}
func (*Kernel) ValidateAction ¶
func (k *Kernel) ValidateAction(constitution AgencyConstitution, actor AgentIdentity, proposal ActionProposal) KernelDecision
func (*Kernel) ValidateObservation ¶
func (k *Kernel) ValidateObservation(constitution AgencyConstitution, observation ObservationSnapshot) KernelDecision
type KernelDecision ¶
type KernelDecision struct {
Accepted bool `json:"accepted"`
Reason string `json:"reason,omitempty"`
Corrections []CorrectionSignal `json:"corrections,omitempty"`
ValidatedAt int64 `json:"validatedAt"`
CommitAllowed bool `json:"commitAllowed"`
}
type LLMActorProposer ¶
type LLMActorProposer struct {
// contains filtered or unexported fields
}
LLMActorProposer generates action proposals via LLM for a given observation.
func NewLLMActorProposer ¶
func NewLLMActorProposer(cfg ActorLLMConfig) *LLMActorProposer
NewLLMActorProposer creates a new proposer.
func (*LLMActorProposer) BuildSystemPrompt ¶
func (p *LLMActorProposer) BuildSystemPrompt(obs ObservationSnapshot, role RoleSpec) string
BuildSystemPrompt returns the system prompt for the given observation and role.
func (*LLMActorProposer) BuildUserMessage ¶
func (p *LLMActorProposer) BuildUserMessage(obs ObservationSnapshot, signal WakeSignal) string
BuildUserMessage returns the user message for the given observation and signal.
func (*LLMActorProposer) Propose ¶
func (p *LLMActorProposer) Propose(ctx context.Context, obs ObservationSnapshot, signal WakeSignal, role RoleSpec) ([]ActionProposal, error)
Propose generates action proposals for the given observation and signal. If the API key is not configured, returns a safe default proposal.
func (*LLMActorProposer) SetGISTContext ¶
func (p *LLMActorProposer) SetGISTContext(verdict GISTVerdict)
SetGISTContext attaches a GIST verdict whose Verdict string is prepended to the LLM system prompt and whose ExecutionIntent is stored on each proposal.
type LatticeStore ¶
type LatticeStore interface {
GetLattice(ctx context.Context, agentID string) (string, error)
SetLattice(ctx context.Context, agentID, latticeJSON string) error
}
LatticeStore is the persistence interface for per-agent GIST lattice state. Implementations may be DB-backed or no-op.
type LedgerEntry ¶
type LedgerEntry struct {
Sequence int64 `json:"sequence"`
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
Kind LedgerEntryKind `json:"kind"`
Status LedgerEntryStatus `json:"status,omitempty"`
ActorID string `json:"actorId,omitempty"`
Action *ActionProposal `json:"action,omitempty"`
Decision *KernelDecision `json:"decision,omitempty"`
Snapshot *ContextSnapshot `json:"snapshot,omitempty"`
Signal *WakeSignal `json:"signal,omitempty"`
Publication *PublicationRecord `json:"publication,omitempty"`
Voice *VoiceEvent `json:"voice,omitempty"`
Consensus *ConsensusRequirement `json:"consensus,omitempty"`
Quorum *QuorumState `json:"quorum,omitempty"`
Certificate *CommitCertificate `json:"certificate,omitempty"`
Votes []ConsensusVote `json:"votes,omitempty"`
ProposedAt int64 `json:"proposedAt,omitempty"`
CommittedAt int64 `json:"committedAt"`
FinalizedAt int64 `json:"finalizedAt,omitempty"`
RejectedAt int64 `json:"rejectedAt,omitempty"`
}
type LedgerEntryKind ¶
type LedgerEntryKind string
const ( LedgerEntryAction LedgerEntryKind = "action" LedgerEntrySignal LedgerEntryKind = "signal" LedgerEntrySnapshot LedgerEntryKind = "snapshot" LedgerEntrySchedule LedgerEntryKind = "schedule" LedgerEntryPublication LedgerEntryKind = "publication" LedgerEntryVoice LedgerEntryKind = "voice" )
type LedgerEntryStatus ¶
type LedgerEntryStatus string
const ( LedgerEntryStatusProposed LedgerEntryStatus = "proposed" LedgerEntryStatusPending LedgerEntryStatus = "pending" LedgerEntryStatusFinalized LedgerEntryStatus = "finalized" LedgerEntryStatusRejected LedgerEntryStatus = "rejected" )
type LedgerService ¶
type LedgerService struct {
// contains filtered or unexported fields
}
func NewLedgerService ¶
func NewLedgerService(baseDir string) (*LedgerService, error)
func (*LedgerService) Append ¶
func (l *LedgerService) Append(ctx context.Context, entry LedgerEntry) (CommitCertificate, error)
func (*LedgerService) AppendSchedule ¶
func (l *LedgerService) AppendSchedule(ctx context.Context, schedule AgentSchedule, signal WakeSignal) (CommitCertificate, error)
func (*LedgerService) AppendSignal ¶
func (l *LedgerService) AppendSignal(ctx context.Context, signal WakeSignal) (CommitCertificate, error)
func (*LedgerService) AppendSnapshot ¶
func (l *LedgerService) AppendSnapshot(ctx context.Context, snapshot ContextSnapshot) (CommitCertificate, error)
func (*LedgerService) AppendVoiceEvent ¶
func (l *LedgerService) AppendVoiceEvent(ctx context.Context, event VoiceEvent) (CommitCertificate, error)
func (*LedgerService) Finalize ¶
func (l *LedgerService) Finalize(ctx context.Context, entryID string) (CommitCertificate, error)
func (*LedgerService) LatestSnapshot ¶
func (l *LedgerService) LatestSnapshot(ctx context.Context, organizationID string) (*ContextSnapshot, error)
func (*LedgerService) Pending ¶
func (l *LedgerService) Pending(ctx context.Context, organizationID string) ([]LedgerEntry, error)
func (*LedgerService) Propose ¶
func (l *LedgerService) Propose(ctx context.Context, entry LedgerEntry) (LedgerEntry, error)
func (*LedgerService) Replay ¶
func (l *LedgerService) Replay(ctx context.Context) ([]LedgerEntry, error)
func (*LedgerService) Vote ¶
func (l *LedgerService) Vote(ctx context.Context, entryID string, vote ConsensusVote) (QuorumState, error)
type MemoryEventBus ¶
type MemoryEventBus struct {
// contains filtered or unexported fields
}
func NewMemoryEventBus ¶
func NewMemoryEventBus() *MemoryEventBus
func (*MemoryEventBus) Publish ¶
func (b *MemoryEventBus) Publish(ctx context.Context, signal WakeSignal) error
func (*MemoryEventBus) Subscribe ¶
func (b *MemoryEventBus) Subscribe(ctx context.Context, channel string) (<-chan WakeSignal, error)
type ModelRouter ¶
type ModelRouter struct {
// contains filtered or unexported fields
}
ModelRouter performs deterministic provider selection. Hard gates are applied in order: capability → auth → privacy → tools → budget. Remaining candidates are soft-scored and the highest scorer is returned.
func NewModelRouter ¶
func NewModelRouter(adapters []ProviderAdapter, broker *CredentialBroker, policy ExecutionPolicy) *ModelRouter
NewModelRouter creates a router with the given adapters and policy.
func (*ModelRouter) Route ¶
func (r *ModelRouter) Route(ctx context.Context, req InferenceRequest) (ProviderAdapter, RoutingDecision, error)
Route selects the best available adapter for the inference request. Returns an error only if no adapter passes all hard gates.
type NestedScheduler ¶
type NestedScheduler struct {
// contains filtered or unexported fields
}
NestedScheduler wraps Scheduler to support a tree of schedule nodes. Each node may carry a prompt_injection directive that is embedded in the fired WakeSignal payload and consumed by the actor daemon as a high-weight GIST directive atom.
func NewNestedScheduler ¶
func NewNestedScheduler(bus EventBus) *NestedScheduler
NewNestedScheduler creates a NestedScheduler backed by the given event bus.
func (*NestedScheduler) Nodes ¶
func (n *NestedScheduler) Nodes() []ScheduleNode
Nodes returns a snapshot of all registered schedule nodes.
func (*NestedScheduler) RegisterNode ¶
func (n *NestedScheduler) RegisterNode(ctx context.Context, node ScheduleNode) error
RegisterNode adds a node to the schedule tree and starts its cron ticker. The node's PromptInjection (if set) is embedded in every WakeSignal fired.
func (*NestedScheduler) SetPublisher ¶
func (n *NestedScheduler) SetPublisher(fn func(context.Context, AgentSchedule, WakeSignal) error)
SetPublisher delegates to the inner Scheduler's SetPublisher.
func (*NestedScheduler) Stop ¶
func (n *NestedScheduler) Stop()
Stop cancels all running schedule tickers.
type ObservationSnapshot ¶
type ObservationSnapshot struct {
OrganizationID string `json:"organizationId"`
Actor AgentIdentity `json:"actor"`
LedgerSequence int64 `json:"ledgerSequence"`
PendingTasks []TaskSummary `json:"pendingTasks,omitempty"`
RecentSignals []WakeSignal `json:"recentSignals,omitempty"`
Resources ResourceState `json:"resources"`
CurrentTime time.Time `json:"currentTime"`
Metadata map[string]string `json:"metadata,omitempty"`
}
type OfficeStatus ¶
type OfficeStatus struct {
BaseDir string `json:"baseDir"`
RuntimeMode RuntimeMode `json:"runtimeMode"`
OrganizationID string `json:"organizationId"`
LedgerSequence int64 `json:"ledgerSequence"`
ActorCount int `json:"actorCount"`
ScheduleCount int `json:"scheduleCount"`
Running bool `json:"running"`
BusBackend string `json:"busBackend"`
LastSignal *WakeSignal `json:"lastSignal,omitempty"`
Actors []AgentIdentity `json:"actors,omitempty"`
Schedules []AgentSchedule `json:"schedules,omitempty"`
Constitution AgencyConstitution `json:"constitution"`
Voice *VoiceGatewayStatus `json:"voice,omitempty"`
}
type OllamaAdapter ¶
type OllamaAdapter struct {
// contains filtered or unexported fields
}
func NewOllamaAdapter ¶
func NewOllamaAdapter() *OllamaAdapter
func (*OllamaAdapter) Execute ¶
func (o *OllamaAdapter) Execute(ctx context.Context, req InferenceRequest) (InferenceResult, error)
func (*OllamaAdapter) ModelID ¶
func (o *OllamaAdapter) ModelID() string
func (*OllamaAdapter) Name ¶
func (o *OllamaAdapter) Name() string
type OpenAIAdapter ¶
type OpenAIAdapter struct {
// contains filtered or unexported fields
}
func NewOpenAIAdapter ¶
func NewOpenAIAdapter() *OpenAIAdapter
func (*OpenAIAdapter) Execute ¶
func (o *OpenAIAdapter) Execute(ctx context.Context, req InferenceRequest) (InferenceResult, error)
func (*OpenAIAdapter) ModelID ¶
func (o *OpenAIAdapter) ModelID() string
func (*OpenAIAdapter) Name ¶
func (o *OpenAIAdapter) Name() string
type OrgIntent ¶
type OrgIntent struct {
ID string `json:"id"`
Domain string `json:"domain"`
TimeHorizon string `json:"timeHorizon"`
WorkingStyle string `json:"workingStyle"`
GoalShape string `json:"goalShape"`
Governance GovernanceMode `json:"governance"`
Summary string `json:"summary"`
Requirements []string `json:"requirements,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
}
type PerformanceRecord ¶
type PerformanceRecord struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
ActorID string `json:"actorId"`
Directive string `json:"directive"` // prompt_injection or signal summary
Output string `json:"output"` // LLM inference result text
Score float64 `json:"score"` // GIST confidence as proxy score
SignalID string `json:"signalId"`
Provider string `json:"provider"`
ModelID string `json:"modelId"`
CreatedAt int64 `json:"createdAt"`
}
PerformanceRecord captures a single directive→output→score cycle for an actor. Published to the bulletin channel so the TUI can display the timeline.
type ProcessHandle ¶
type ProcessSpawner ¶
type ProcessSpawner interface {
Spawn(context.Context, ActorRuntimeSpec) (ProcessHandle, error)
}
type ProjectionDaemon ¶
type ProjectionDaemon struct {
// contains filtered or unexported fields
}
func NewProjectionDaemon ¶
func NewProjectionDaemon(ledger *LedgerService, organizationID, outputPath string, interval time.Duration) *ProjectionDaemon
type ProviderAdapter ¶
type ProviderAdapter interface {
// Name returns the provider identifier (e.g. "anthropic", "ollama").
Name() string
// ModelID returns the model this adapter will use.
ModelID() string
// Available returns true if the provider is reachable and credentials are valid.
Available(ctx context.Context) bool
// Execute runs a single inference and returns the result.
Execute(ctx context.Context, req InferenceRequest) (InferenceResult, error)
}
ProviderAdapter is the interface all LLM provider adapters must implement.
type PublicationRecord ¶
type QuorumState ¶
type QuorumState struct {
QuorumKey string `json:"quorumKey,omitempty"`
RequiredApprovals int `json:"requiredApprovals"`
EligibleVoters []string `json:"eligibleVoters,omitempty"`
Approvals int `json:"approvals"`
Rejections int `json:"rejections"`
MissingApprovals int `json:"missingApprovals,omitempty"`
LastVoteAt int64 `json:"lastVoteAt,omitempty"`
Finalizable bool `json:"finalizable"`
Finalized bool `json:"finalized"`
Rejected bool `json:"rejected"`
}
type RedisConfig ¶
type RedisEventBus ¶
type RedisEventBus struct {
// contains filtered or unexported fields
}
func NewRedisEventBus ¶
func NewRedisEventBus(cfg RedisConfig) *RedisEventBus
func (*RedisEventBus) Publish ¶
func (b *RedisEventBus) Publish(ctx context.Context, signal WakeSignal) error
func (*RedisEventBus) Subscribe ¶
func (b *RedisEventBus) Subscribe(ctx context.Context, channel string) (<-chan WakeSignal, error)
type ResourceState ¶
type RoleSpec ¶
type RoleSpec struct {
Name string `json:"name"`
Mission string `json:"mission"`
Personality string `json:"personality,omitempty"`
WorkingPosture string `json:"workingPosture,omitempty"`
SystemPrompt string `json:"systemPrompt,omitempty"`
AllowedActions []ActionType `json:"allowedActions,omitempty"`
ObservationScopes []string `json:"observationScopes,omitempty"`
ToolBindings []string `json:"toolBindings,omitempty"`
PeerRouting map[string]string `json:"peerRouting,omitempty"`
CanSpawnAgents bool `json:"canSpawnAgents"`
}
type RoutingDecision ¶
type RoutingDecision struct {
SelectedProvider string
SelectedModel string
GateReason string // empty = passed all gates
RejectedOrder []string
ScoredAt int64
}
RoutingDecision records why a provider was selected or rejected.
type RoutingLog ¶
type RoutingLog interface {
LogDecision(ctx context.Context, agentID, orgID string, result InferenceResult, decision RoutingDecision, intent ActionIntent) error
}
RoutingLog persists model routing decisions for audit. If nil, routing decisions are only logged to stderr.
type RuntimeConfig ¶
type RuntimeConfig struct {
BaseDir string
Ledger *LedgerService
Bus EventBus
Kernel *Kernel
Mode RuntimeMode
Spawner ProcessSpawner
}
type RuntimeManager ¶
type RuntimeManager struct {
// contains filtered or unexported fields
}
func NewRuntimeManager ¶
func NewRuntimeManager(cfg RuntimeConfig) *RuntimeManager
func (*RuntimeManager) Actors ¶
func (r *RuntimeManager) Actors() []AgentIdentity
func (*RuntimeManager) Register ¶
func (r *RuntimeManager) Register(ctx context.Context, actor Actor) error
func (*RuntimeManager) RegisterSpec ¶
func (r *RuntimeManager) RegisterSpec(ctx context.Context, spec ActorRuntimeSpec) error
func (*RuntimeManager) Running ¶
func (r *RuntimeManager) Running() bool
func (*RuntimeManager) SetConstitution ¶
func (r *RuntimeManager) SetConstitution(constitution AgencyConstitution)
func (*RuntimeManager) Specs ¶
func (r *RuntimeManager) Specs() []ActorRuntimeSpec
func (*RuntimeManager) Stop ¶
func (r *RuntimeManager) Stop()
type RuntimeMode ¶
type RuntimeMode string
const ( RuntimeModeEmbedded RuntimeMode = "embedded" RuntimeModeDaemonized RuntimeMode = "daemonized" )
type ScheduleLayerConfig ¶
type ScheduleLayerConfig struct {
LayerDepth int `json:"layerDepth"`
MaxNodes int `json:"maxNodes"`
DefaultExpression string `json:"defaultExpression"`
InheritParentInjection bool `json:"inheritParentInjection"`
}
ScheduleLayerConfig configures defaults for a depth level in the schedule tree.
type ScheduleNode ¶
type ScheduleNode struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
ActorID string `json:"actorId"`
ParentID string `json:"parentId,omitempty"`
Expression string `json:"expression"`
PromptInjection string `json:"promptInjection,omitempty"`
Layer int `json:"layer"`
Enabled bool `json:"enabled"`
Metadata map[string]string `json:"metadata,omitempty"`
CreatedAt int64 `json:"createdAt"`
UpdatedAt int64 `json:"updatedAt"`
}
ScheduleNode is a single node in the nested temporal schedule tree. Each node can carry a prompt_injection directive that is added as a high-weight GIST atom when the schedule fires.
type Scheduler ¶
type Scheduler struct {
// contains filtered or unexported fields
}
func NewScheduler ¶
func (*Scheduler) Register ¶
func (s *Scheduler) Register(ctx context.Context, schedule AgentSchedule, base WakeSignal) error
func (*Scheduler) Schedules ¶
func (s *Scheduler) Schedules() []AgentSchedule
func (*Scheduler) SetPublisher ¶
func (s *Scheduler) SetPublisher(fn func(context.Context, AgentSchedule, WakeSignal) error)
type Service ¶
type Service struct {
Ledger *LedgerService
Bus EventBus
Kernel *Kernel
Scheduler *Scheduler
Runtime *RuntimeManager
Voice *VoiceGateway
// contains filtered or unexported fields
}
func (*Service) PublishSignal ¶
func (s *Service) PublishSignal(ctx context.Context, signal WakeSignal) error
func (*Service) RegisterActor ¶
func (*Service) RegisterSchedule ¶
func (s *Service) RegisterSchedule(ctx context.Context, schedule AgentSchedule) error
func (*Service) StartCoordinator ¶
func (s *Service) StartCoordinator(ctx context.Context, constitution AgencyConstitution) error
func (*Service) StartOffice ¶
func (s *Service) StartOffice(ctx context.Context, constitution AgencyConstitution) error
func (*Service) StartRuntime ¶
func (s *Service) StartRuntime(ctx context.Context, constitution AgencyConstitution) error
func (*Service) StartScheduler ¶
type ServiceRole ¶
type ServiceRole string
const ( ServiceRoleOfficeCoordinator ServiceRole = "office-coordinator" ServiceRoleRuntimeDaemon ServiceRole = "runtime-daemon" ServiceRoleSchedulerDaemon ServiceRole = "scheduler-daemon" ServiceRoleActorDaemon ServiceRole = "actor-daemon" )
type ShiftHandoff ¶
type SignalKind ¶
type SignalKind string
const ( SignalTick SignalKind = "tick" SignalSchedule SignalKind = "schedule" SignalPeerMessage SignalKind = "peer_message" SignalTaskChange SignalKind = "task_change" SignalReview SignalKind = "review" SignalCorrection SignalKind = "correction" SignalBroadcast SignalKind = "broadcast" SignalVoice SignalKind = "voice" SignalProjection SignalKind = "projection" )
type SpawnLineage ¶
type SpeechRuntimeConfig ¶
type TaskSummary ¶
type VoiceEvent ¶
type VoiceEvent struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
ActorID string `json:"actorId,omitempty"`
RoomID string `json:"roomId,omitempty"`
Kind VoiceEventKind `json:"kind"`
CanonicalText string `json:"canonicalText,omitempty"`
AudioInputRef string `json:"audioInputRef,omitempty"`
AudioOutputRef string `json:"audioOutputRef,omitempty"`
Engine string `json:"engine,omitempty"`
Projection *VoiceRoomState `json:"projection,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
CreatedAt int64 `json:"createdAt"`
}
type VoiceEventKind ¶
type VoiceEventKind string
const ( VoiceEventTranscript VoiceEventKind = "transcript" VoiceEventSynthesis VoiceEventKind = "synthesis" VoiceEventProjection VoiceEventKind = "projection" )
type VoiceGateway ¶
type VoiceGateway struct {
// contains filtered or unexported fields
}
func NewVoiceGateway ¶
func NewVoiceGateway(cfg VoiceGatewayConfig, ledger *LedgerService, bus EventBus) *VoiceGateway
func (*VoiceGateway) IngestTranscript ¶
func (g *VoiceGateway) IngestTranscript(ctx context.Context, req VoiceTranscriptRequest) (VoiceTranscriptResult, error)
func (*VoiceGateway) Serve ¶
func (g *VoiceGateway) Serve(ctx context.Context, organizationID string) error
func (*VoiceGateway) SetProjection ¶
func (g *VoiceGateway) SetProjection(ctx context.Context, req VoiceProjectionRequest) (VoiceRoomState, error)
func (*VoiceGateway) Status ¶
func (g *VoiceGateway) Status(ctx context.Context, organizationID string) (VoiceGatewayStatus, error)
func (*VoiceGateway) Synthesize ¶
func (g *VoiceGateway) Synthesize(ctx context.Context, req VoiceSynthesisRequest) (VoiceSynthesisResult, error)
type VoiceGatewayConfig ¶
type VoiceGatewayConfig struct {
Enabled bool
Provider string
StatePath string
AssetDir string
ControlChannel string
SynthesisChannel string
MeetingTranscriptDir string
DefaultRoom string
Projection VoiceProjectionDefaults
STT SpeechRuntimeConfig
TTS SpeechRuntimeConfig
}
type VoiceGatewayStatus ¶
type VoiceGatewayStatus struct {
Enabled bool `json:"enabled"`
Provider string `json:"provider,omitempty"`
OrganizationID string `json:"organizationId"`
StatePath string `json:"statePath"`
AssetDir string `json:"assetDir"`
ControlChannel string `json:"controlChannel"`
SynthesisChannel string `json:"synthesisChannel"`
MeetingTranscriptDir string `json:"meetingTranscriptDir"`
DefaultRoom string `json:"defaultRoom"`
STTConfigured bool `json:"sttConfigured"`
TTSConfigured bool `json:"ttsConfigured"`
Rooms []VoiceRoomState `json:"rooms,omitempty"`
LastVoiceEvent *VoiceEvent `json:"lastVoiceEvent,omitempty"`
}
type VoiceProjectionDefaults ¶
type VoiceProjectionRequest ¶
type VoiceRoomState ¶
type VoiceRoomState struct {
RoomID string `json:"roomId"`
ProjectionEnabled bool `json:"projectionEnabled"`
TranscriptProjection bool `json:"transcriptProjection"`
AudioProjection bool `json:"audioProjection"`
LastTranscriptID string `json:"lastTranscriptId,omitempty"`
LastSynthesisID string `json:"lastSynthesisId,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
UpdatedAt int64 `json:"updatedAt"`
}
type VoiceSynthesisRequest ¶
type VoiceSynthesisResult ¶
type VoiceSynthesisResult struct {
Event VoiceEvent `json:"event"`
Certificate CommitCertificate `json:"certificate"`
Room VoiceRoomState `json:"room"`
}
type VoiceTranscriptRequest ¶
type VoiceTranscriptResult ¶
type VoiceTranscriptResult struct {
Event VoiceEvent `json:"event"`
Certificate CommitCertificate `json:"certificate"`
Room VoiceRoomState `json:"room"`
}
type WakeSignal ¶
Source Files
¶
- adapters.go
- bootstrap.go
- bus.go
- consensus.go
- daemon.go
- daemon_actor.go
- genesis.go
- gist_core.go
- ipc.go
- kernel.go
- ledger.go
- llm_actor.go
- nested_scheduler.go
- performance.go
- process.go
- projection.go
- provider_anthropic.go
- provider_gemini.go
- provider_ollama.go
- provider_openai.go
- routing.go
- runtime.go
- runtime_store.go
- scheduler.go
- service.go
- types.go
- voice.go
- voice_platform.go
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
actor-daemon
command
|
|
|
ipc-server
command
|
|
|
office-daemon
command
|
|
|
runtime-daemon
command
|
|
|
scheduler-daemon
command
|