9ef6f286a9
Pure move. Praxis, Nexus and Hexis go to ecosystem.go with a note on why they stay three identical two-field types instead of one shared EndpointConfig: the block a reader greps for is the service they are debugging. The workstation block, its two defaults and its normalise arm go to workstation.go. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
42 lines
1.7 KiB
Go
42 lines
1.7 KiB
Go
package config
|
|
|
|
// The ecosystem trio. Maven owns conversation and personal memory; it owns
|
|
// neither identity, nor operational state, nor execution. Each of these three
|
|
// is nil unless configured and each degrades on its own — an outage is a named
|
|
// gap in the answer, never a broken turn and never a guess. See docs/ecosystem.md.
|
|
//
|
|
// All three carry the same two fields, and they stay three types rather than one
|
|
// shared EndpointConfig on purpose: the block a reader greps for is the service
|
|
// they are debugging, and a shared type would put "url" in one place for three
|
|
// different trust levels.
|
|
|
|
// PraxisConfig — maven's connection to the Praxis attention service.
|
|
type PraxisConfig struct {
|
|
// URL — the Praxis HTTP API base URL (e.g. "http://localhost:9742").
|
|
URL string `json:"url,omitempty"`
|
|
|
|
// Token — the shared bearer token sent on every request. Empty ⇒ calls
|
|
// go out unauthenticated, which is only appropriate on a loopback or
|
|
// unix-socket transport. Supports ${VAR} expansion, so the secret lives
|
|
// in deploy/telegram.env, not in the committed config.
|
|
Token string `json:"token,omitempty"`
|
|
}
|
|
|
|
// NexusConfig — connection to the Nexus identity service.
|
|
type NexusConfig struct {
|
|
// URL — the Nexus HTTP API base URL (e.g. "http://localhost:9740").
|
|
URL string `json:"url,omitempty"`
|
|
|
|
// Token — shared bearer token; see PraxisConfig.Token.
|
|
Token string `json:"token,omitempty"`
|
|
}
|
|
|
|
// HexisConfig — connection to the Hexis capability execution service.
|
|
type HexisConfig struct {
|
|
// URL — the Hexis HTTP API base URL (e.g. "http://localhost:9741").
|
|
URL string `json:"url,omitempty"`
|
|
|
|
// Token — shared bearer token; see PraxisConfig.Token.
|
|
Token string `json:"token,omitempty"`
|
|
}
|