Documentation
¶
Index ¶
- func CLI(cfg *config.Config, id string, args []string) error
- func Dashboard(cfg *config.Config, id string, opts DashboardOptions, onReady func(url string)) error
- func Delete(cfg *config.Config, id string, force bool) error
- func List(cfg *config.Config) error
- func Onboard(cfg *config.Config, opts OnboardOptions) error
- func PrintImportSummary(result *ImportResult)
- func Setup(cfg *config.Config, id string, _ SetupOptions) error
- func SetupDefault(cfg *config.Config) error
- func SkillsSync(cfg *config.Config, id, skillsDir string) error
- func Sync(cfg *config.Config, id string) error
- func Token(cfg *config.Config, id string) error
- func TranslateToOverlayYAML(result *ImportResult) string
- type CloudProviderInfo
- type DashboardOptions
- type ImportResult
- type ImportedChannels
- type ImportedDiscord
- type ImportedModel
- type ImportedProvider
- type ImportedSlack
- type ImportedTelegram
- type OnboardOptions
- type SetupOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CLI ¶
CLI runs an openclaw CLI command against a deployed instance. Commands that support --url/--token are executed locally with a port-forward; others are executed via kubectl exec into the pod.
func Dashboard ¶
func Dashboard(cfg *config.Config, id string, opts DashboardOptions, onReady func(url string)) error
Dashboard port-forwards to the OpenClaw instance and opens the web dashboard. The onReady callback is invoked with the dashboard URL; the CLI layer uses it to open a browser.
func Onboard ¶
func Onboard(cfg *config.Config, opts OnboardOptions) error
Onboard creates and optionally deploys an OpenClaw instance
func PrintImportSummary ¶
func PrintImportSummary(result *ImportResult)
PrintImportSummary prints a human-readable summary of detected config
func Setup ¶
func Setup(cfg *config.Config, id string, _ SetupOptions) error
Setup reconfigures model providers for a deployed OpenClaw instance. It runs the interactive provider prompt, regenerates the overlay values, and syncs via helmfile so the pod picks up the new configuration.
func SetupDefault ¶
SetupDefault deploys a default OpenClaw instance as part of stack setup. It is idempotent: if a "default" deployment already exists, it re-syncs. When Ollama is not detected on the host and no existing ~/.openclaw config is found, it skips provider setup gracefully so the user can configure later with `obol openclaw setup`.
func SkillsSync ¶
SkillsSync packages a local skills directory into a ConfigMap and rolls the deployment
func TranslateToOverlayYAML ¶
func TranslateToOverlayYAML(result *ImportResult) string
TranslateToOverlayYAML maps imported config fields to chart values YAML fragment. The returned string is appended to the base overlay.
Types ¶
type CloudProviderInfo ¶
type CloudProviderInfo struct {
Name string // "anthropic" or "openai"
APIKey string
ModelID string // e.g. "claude-sonnet-4-5-20250929"
Display string // e.g. "Claude Sonnet 4.5"
}
CloudProviderInfo holds the cloud provider selection from interactive setup. This is used to configure llmspy with the API key separately from the OpenClaw overlay (which routes through llmspy).
type DashboardOptions ¶
DashboardOptions contains options for the dashboard command.
type ImportResult ¶
type ImportResult struct {
Providers []ImportedProvider
AgentModel string
Channels ImportedChannels
WorkspaceDir string // path to ~/.openclaw/workspace/ if it exists and contains marker files
}
ImportResult holds the parsed configuration from ~/.openclaw/openclaw.json
func DetectExistingConfig ¶
func DetectExistingConfig() (*ImportResult, error)
DetectExistingConfig checks for ~/.openclaw/openclaw.json and parses it. Returns nil (not an error) if the file does not exist.
type ImportedChannels ¶
type ImportedChannels struct {
Telegram *ImportedTelegram
Discord *ImportedDiscord
Slack *ImportedSlack
}
ImportedChannels holds detected channel configurations
type ImportedDiscord ¶
type ImportedDiscord struct {
BotToken string
}
ImportedDiscord holds Discord bot config
type ImportedModel ¶
ImportedModel represents a model entry
type ImportedProvider ¶
type ImportedProvider struct {
Name string
BaseURL string
API string
APIKey string // literal only; empty if env-var reference
APIKeyEnvVar string // env var name for apiKey interpolation (e.g. OLLAMA_API_KEY)
Models []ImportedModel
Disabled bool // when true, emit only enabled: false (used to override chart defaults)
}
ImportedProvider represents a model provider extracted from openclaw.json
type ImportedSlack ¶
ImportedSlack holds Slack bot config
type ImportedTelegram ¶
type ImportedTelegram struct {
BotToken string
}
ImportedTelegram holds Telegram bot config
type OnboardOptions ¶
type OnboardOptions struct {
ID string // Deployment ID (empty = generate petname)
Force bool // Overwrite existing deployment
Sync bool // Also run helmfile sync after install
Interactive bool // true = prompt for provider choice; false = silent defaults
IsDefault bool // true = use fixed ID "default", idempotent on re-run
}
OnboardOptions contains options for the onboard command
type SetupOptions ¶
type SetupOptions struct {
Port int // kept for backward compat; currently unused
}
SetupOptions contains options for the setup command.