Versions in this module Expand all Collapse all v1 v1.0.0 Sep 28, 2026 Changes in this version + const ChannelDeltaChat + const ChannelDingTalk + const ChannelDiscord + const ChannelFeishu + const ChannelIRC + const ChannelLINE + const ChannelMQTT + const ChannelMaixCam + const ChannelMatrix + const ChannelOneBot + const ChannelQQ + const ChannelSlack + const ChannelSlackWebHook + const ChannelTeamsWebHook + const ChannelTelegram + const ChannelVK + const ChannelWeCom + const ChannelWeb + const ChannelWebClient + const ChannelWeixin + const ChannelWhatsApp + const ChannelWhatsAppNative + const DefaultGatewayLogLevel + const DefaultMCPMaxInlineTextChars + const DefaultMaxMediaSize + const EnvBinary + const EnvBuiltinSkills + const EnvConfig + const EnvGatewayHost + const EnvHome + const ExtensionCredentialKeySetting + const ExtensionCredentialSetting + const ExtensionDisplayNameSetting + const ExtensionProviderSetting + const ExtensionSurfaceChatCompletions + const ExtensionSurfaceMessages + const ExtensionSurfacesSetting + const ProviderAdapterAnthropicCompatible + const ProviderAdapterExtension + const ProviderAdapterNative + const ProviderAdapterOpenAICompatible + const ReadFileModeBytes + const ReadFileModeLines + const SecurityConfigFile + var BuildTime string + var DefaultEventLoggingInclude = []string + var GitCommit string + var GoVersion string + var Version = "dev" + func DevHome() string + func DiagnosticSummary(err error) string + func EffectiveGatewayLogLevel(cfg *Config) string + func EffectiveMCPTransportType(server MCPServerConfig) string + func FormatBuildInfo() (string, string) + func FormatVersion() string + func GetHome() string + func GetVersion() string + func InitChannelList(channels ChannelsConfig) error + func IsDevBuild() bool + func IsSingletonChannel(channelType string) bool + func MakeBackup(path string) error + func NormalizeMCPTransportType(transport string) string + func RegisterChannelSettings(channelType string, prototype any) + func RegisterSensitiveValuesSource(values func() []string) (unregister func()) + func ResetToDefaults(configPath string) error + func ResolveGatewayLogLevel(path string) string + func SaveConfig(path string, cfg *Config) error + func SupportedProviderInstanceAdapter(instance *ProviderInstanceConfig) error + func ValidThinkingLevel(level string) bool + func ValidateSelectionSyntax(s string) error + func ValidateSourceRoot(name, path string) error + type AgentConfig struct + Default bool + ID string + Model string + Name string + Skills []string + Subagents *SubagentsConfig + Workspace string + type AgentDefaults struct + AllowReadOutsideWorkspace bool + ContextManager string + ContextManagerConfig json.RawMessage + ContextWindow int + ImageModel string + LLMRetryBackoffSecs int + MaxLLMRetries int + MaxMediaSize int + MaxParallelTurns int + MaxTokens int + MaxToolIterations int + ModelName string + RestrictToWorkspace bool + Routing *RoutingConfig + SplitOnMarker bool + SteeringMode string + SubTurn SubTurnConfig + SummarizeMessageThreshold int + SummarizeTokenPercent int + Temperature *float64 + ToolFeedback ToolFeedbackConfig + TurnProfile TurnProfileConfig + Workspace string + func (d *AgentDefaults) GetMaxMediaSize() int + func (d *AgentDefaults) GetModelName() string + func (d *AgentDefaults) GetToolFeedbackMaxArgsLength() int + func (d *AgentDefaults) IsToolFeedbackEnabled() bool + func (d *AgentDefaults) IsToolFeedbackSeparateMessagesEnabled() bool + func (d *AgentDefaults) ResolveTurnProfile() (EffectiveTurnProfile, bool, error) + type AgentsConfig struct + Defaults AgentDefaults + Dispatch *DispatchConfig + List []AgentConfig + type BaiduSearchConfig struct + APIKey SecureString + BaseURL string + Enabled bool + MaxResults int + type BraveConfig struct + APIKeys SecureStrings + Enabled bool + MaxResults int + func (c *BraveConfig) APIKey() string + func (c *BraveConfig) SetAPIKey(key string) + func (c *BraveConfig) SetAPIKeys(keys []string) + type BuildInfo struct + BuildTime string + GitCommit string + GoVersion string + Version string + type BuiltinHookConfig struct + Config json.RawMessage + Enabled bool + Priority int + type Channel struct + AllowFrom FlexibleStringSlice + Enabled bool + GroupTrigger GroupTriggerConfig + Placeholder PlaceholderConfig + ReasoningChannelID string + Settings RawNode + Type string + Typing TypingConfig + func (b *Channel) Decode(target any) error + func (b *Channel) GetDecoded() (any, error) + func (b *Channel) Name() string + func (b *Channel) SetName(name string) + func (b *Channel) SetSecretField(fieldName string, value SecureString) + func (b *Channel) SettingsIsEmpty() bool + func (b *Channel) UnmarshalYAML(value *yaml.Node) error + func (b Channel) CollectSensitiveValues() []string + func (b Channel) MarshalJSON() ([]byte, error) + func (b Channel) MarshalYAML() (any, error) + type ChannelsConfig map[string]*Channel + func (c *ChannelsConfig) UnmarshalJSON(data []byte) error + func (c *ChannelsConfig) UnmarshalYAML(value *yaml.Node) error + func (c ChannelsConfig) Get(name string) *Channel + func (c ChannelsConfig) GetByType(t string) *Channel + func (c ChannelsConfig) SetEnabled(name string, enabled bool) bool + type Config struct + ActiveModels []string + Agents AgentsConfig + BuildInfo BuildInfo + Channels ChannelsConfig + Devices DevicesConfig + Events EventsConfig + Evolution EvolutionConfig + Extension *ExtensionDaemonConfig + Gateway GatewayConfig + Heartbeat HeartbeatConfig + Hooks HooksConfig + Isolation IsolationConfig + ModelRoutes []*ModelRouteConfig + Modules ModulesConfig + ProviderInstances []*ProviderInstanceConfig + Session SessionConfig + Tools ToolsConfig + Voice VoiceConfig + func DefaultConfig() *Config + func LoadConfig(path string) (*Config, error) + func (c *Config) FilterSensitiveData(content string) string + func (c *Config) MarshalJSON() ([]byte, error) + func (c *Config) SecurityCopyFrom(path string) error + func (c *Config) ValidateModelSelections() error + func (c *Config) ValidateModules() error + func (c *Config) ValidateProviderInstances() error + func (c *Config) ValidateTurnProfile() error + func (c *Config) WorkspacePath() string + func (sec *Config) SensitiveDataReplacer() *strings.Replacer + type CronToolsConfig struct + AllowCommand bool + CommandAllowedRemotes []string + ExecTimeoutMinutes int + type DeltaChatSettings struct + AllowCrosspost bool + AvatarImage string + DataDir string + DisplayName string + Email string + IMAPPort int + IMAPServer string + InviteLink string + Password SecureString + RPCServerPath string + SMTPPort int + SMTPServer string + type DevicesConfig struct + Enabled bool + MonitorUSB bool + type DingTalkSettings struct + ClientID string + ClientSecret SecureString + type DiscordSettings struct + Proxy string + Token SecureString + type DispatchConfig struct + Rules []DispatchRule + type DispatchRule struct + Agent string + Name string + SessionDimensions []string + When DispatchSelector + type DispatchSelector struct + Account string + Channel string + Chat string + Mentioned *bool + Sender string + Space string + Topic string + type DuckDuckGoConfig struct + Enabled bool + MaxResults int + type EffectiveTurnProfile struct + AllowedSkills []string + AllowedTools []string + Enabled bool + HistoryMode TurnProfileMode + SkillsMode TurnProfileMode + SystemPromptMode TurnProfileMode + ToolsMode TurnProfileMode + type EventLoggingConfig struct + Enabled bool + Exclude []string + Include []string + IncludePayload bool + MinSeverity string + func EffectiveEventLoggingConfig(cfg *Config) EventLoggingConfig + type EventsConfig struct + Logging EventLoggingConfig + type EvolutionConfig struct + ColdPathTimes []string + ColdPathTrigger string + Enabled bool + MinSuccessRatio float64 + MinTaskCount int + Mode string + StateDir string + func (c EvolutionConfig) AutoAppliesDrafts() bool + func (c EvolutionConfig) ColdPathTriggerMode() string + func (c EvolutionConfig) EffectiveColdPathTimes() []string + func (c EvolutionConfig) EffectiveMinSuccessRatio() float64 + func (c EvolutionConfig) EffectiveMinTaskCount() int + func (c EvolutionConfig) EffectiveMode() string + func (c EvolutionConfig) MarshalJSON() ([]byte, error) + func (c EvolutionConfig) RunsColdPathAfterTurn() bool + func (c EvolutionConfig) RunsColdPathAutomatically() bool + func (c EvolutionConfig) RunsColdPathScheduled() bool + type ExactModelTarget struct + InstanceID string + ModelID string + func ParseExactModelTarget(raw string) (ExactModelTarget, error) + func (t ExactModelTarget) String() string + type ExecConfig struct + AllowRemote bool + CustomAllowPatterns []string + CustomDenyPatterns []string + EnableDenyPatterns bool + TimeoutSeconds int + type ExposePath struct + Mode string + Source string + Target string + type ExtensionDaemonConfig struct + URL string + type FeishuSettings struct + AppID string + AppSecret SecureString + EncryptKey SecureString + IsLark bool + RandomReactionEmoji FlexibleStringSlice + VerificationToken SecureString + type FlexibleStringSlice []string + func (f *FlexibleStringSlice) UnmarshalJSON(data []byte) error + func (f *FlexibleStringSlice) UnmarshalText(text []byte) error + type GLMSearchConfig struct + APIKey SecureString + BaseURL string + Enabled bool + MaxResults int + SearchEngine string + type GatewayConfig struct + Host string + HotReload bool + LogLevel string + Port int + type GeminiSearchConfig struct + APIKey SecureString + Enabled bool + MaxResults int + Model string + type GroupTriggerConfig struct + MentionOnly bool + Prefixes []string + type HeartbeatConfig struct + Enabled bool + Interval int + type HookDefaultsConfig struct + ApprovalTimeoutMS int + InterceptorTimeoutMS int + ObserverTimeoutMS int + type HooksConfig struct + Builtins map[string]BuiltinHookConfig + Defaults HookDefaultsConfig + Enabled bool + Processes map[string]ProcessHookConfig + type IRCSettings struct + Channels FlexibleStringSlice + Nick string + NickServPassword SecureString + Password SecureString + RealName string + RequestCaps FlexibleStringSlice + SASLPassword SecureString + SASLUser string + Server string + TLS bool + User string + type IsolationConfig struct + Enabled bool + ExposePaths []ExposePath + type KagiConfig struct + APIKeys SecureStrings + BaseURL string + Enabled bool + MaxResults int + func (c *KagiConfig) APIKey() string + func (c *KagiConfig) SetAPIKey(key string) + func (c *KagiConfig) SetAPIKeys(keys []string) + type LINESettings struct + ChannelAccessToken SecureString + ChannelSecret SecureString + WebhookHost string + WebhookPath string + WebhookPort int + type MCPConfig struct + Discovery ToolDiscoveryConfig + MaxInlineTextChars int + Servers map[string]MCPServerConfig + func (c *MCPConfig) GetMaxInlineTextChars() int + type MCPServerConfig struct + Args []string + Command string + Deferred *bool + Enabled bool + Env map[string]string + EnvFile string + Headers map[string]string + Type string + URL string + type MQTTSettings struct + AgentID string + Broker string + ClientID string + KeepAlive int + Password SecureString + QoS int + TopicPrefix string + Username SecureString + type MaixCamSettings struct + Host string + Port int + type MatrixSettings struct + AccessToken SecureString + CryptoDatabasePath string + CryptoPassphrase string + DeviceID string + Homeserver string + JoinOnInvite bool + MessageFormat string + UserID string + type MediaCleanupConfig struct + Interval int + MaxAge int + type MessageToolsConfig struct + MediaEnabled bool + type ModelRouteConfig struct + Name string + Targets []string + type ModulesConfig struct + SourceRoots map[string]string + type OneBotSettings struct + AccessToken SecureString + ReconnectInterval int + WSUrl string + type PerplexityConfig struct + APIKeys SecureStrings + Enabled bool + MaxResults int + func (c *PerplexityConfig) APIKey() string + func (c *PerplexityConfig) SetAPIKey(key string) + type PlaceholderConfig struct + Enabled bool + Text FlexibleStringSlice + func (p *PlaceholderConfig) GetRandomText() string + type ProcessHookConfig struct + Command []string + Dir string + Enabled bool + Env map[string]string + Intercept []string + Observe []string + Priority int + Transport string + type ProviderInstanceConfig struct + Adapter string + AuthConnectionRef string + Endpoint string + Headers map[string]string + ID string + Protocol string + ProviderKind string + Runtime *ProviderInstanceRuntime + Settings map[string]any + State ProviderInstanceState + func (c *ProviderInstanceConfig) ExtensionProvider() string + func (c *ProviderInstanceConfig) ExtensionSurfaces() []string + func (c *ProviderInstanceConfig) Validate() error + type ProviderInstanceRuntime struct + ExtraBody map[string]any + MaxTokensField string + Proxy string + RPM int + RequestTimeout int + Streaming *bool + ThinkingLevel string + ToolSchemaTransform string + func (r *ProviderInstanceRuntime) Validate() error + type ProviderInstanceState string + const ProviderInstanceStateDisabled + const ProviderInstanceStateEnabled + type QQSettings struct + AppID string + AppSecret SecureString + MaxBase64FileSizeMiB int64 + MaxMessageLength int + SendMarkdown bool + type RawNode json.RawMessage + func (r *RawNode) Decode(target any) error + func (r *RawNode) IsEmpty() bool + func (r *RawNode) UnmarshalJSON(data []byte) error + func (r *RawNode) UnmarshalYAML(value *yaml.Node) error + func (r RawNode) MarshalJSON() ([]byte, error) + func (r RawNode) MarshalYAML() (any, error) + type ReadFileToolConfig struct + Enabled bool + MaxReadFileSize int + Mode string + func (c ReadFileToolConfig) EffectiveMode() string + type RoutingConfig struct + Enabled bool + LightModel string + Threshold float64 + type SearXNGConfig struct + BaseURL string + Enabled bool + MaxResults int + type SearchCacheConfig struct + MaxSize int + TTLSeconds int + type SecureString struct + func NewSecureString(value string) *SecureString + func (s *SecureString) Set(value string) *SecureString + func (s *SecureString) String() string + func (s *SecureString) UnmarshalJSON(value []byte) error + func (s *SecureString) UnmarshalText(text []byte) error + func (s *SecureString) UnmarshalYAML(value *yaml.Node) error + func (s SecureString) IsZero() bool + func (s SecureString) MarshalJSON() ([]byte, error) + func (s SecureString) MarshalYAML() (any, error) + type SecureStrings []*SecureString + func SimpleSecureStrings(val ...string) SecureStrings + func (s *SecureStrings) UnmarshalJSON(value []byte) error + func (s *SecureStrings) Values() []string + func (s SecureStrings) IsZero() bool + func (s SecureStrings) MarshalJSON() ([]byte, error) + type SensitiveDataCache struct + type SessionConfig struct + Dimensions []string + DmScope string + IdentityLinks map[string][]string + func (s *SessionConfig) ApplyDmScope() + func (s *SessionConfig) DeriveDmScope() + type SkillRegistryConfig struct + AuthToken SecureString + BaseURL string + Enabled bool + Name string + Param map[string]any + func (c *SkillRegistryConfig) DecodeParam(target any) error + func (c *SkillRegistryConfig) UnmarshalJSON(data []byte) error + func (c *SkillRegistryConfig) UnmarshalYAML(value *yaml.Node) error + func (c SkillRegistryConfig) MarshalJSON() ([]byte, error) + func (c SkillRegistryConfig) MarshalYAML() (any, error) + type SkillsRegistriesConfig []*SkillRegistryConfig + func (c *SkillsRegistriesConfig) Get(name string) (SkillRegistryConfig, bool) + func (c *SkillsRegistriesConfig) Set(name string, cfg SkillRegistryConfig) + func (v *SkillsRegistriesConfig) UnmarshalJSON(data []byte) error + func (v *SkillsRegistriesConfig) UnmarshalYAML(value *yaml.Node) error + func (v SkillsRegistriesConfig) MarshalJSON() ([]byte, error) + func (v SkillsRegistriesConfig) MarshalYAML() (any, error) + type SkillsToolsConfig struct + MaxConcurrentSearches int + Registries SkillsRegistriesConfig + SearchCache SearchCacheConfig + type SlackSettings struct + AppToken SecureString + BotToken SecureString + type SlackWebhookSettings struct + Webhooks map[string]SlackWebhookTarget + type SlackWebhookTarget struct + IconEmoji string + Username string + WebhookURL SecureString + type SogouConfig struct + Enabled bool + MaxResults int + type StreamingConfig struct + Enabled bool + MinGrowthChars int + ThrottleSeconds int + func (c StreamingConfig) IsZero() bool + func (c StreamingConfig) WithDefaults(throttleSeconds, minGrowthChars int) StreamingConfig + type SubTurnConfig struct + ConcurrencyTimeoutSec int + DefaultTimeoutMinutes int + DefaultTokenBudget int + MaxConcurrent int + MaxDepth int + type SubagentsConfig struct + AllowAgents []string + type TavilyConfig struct + APIKeys SecureStrings + BaseURL string + Enabled bool + MaxResults int + func (c *TavilyConfig) APIKey() string + func (c *TavilyConfig) SetAPIKey(key string) + func (c *TavilyConfig) SetAPIKeys(keys []string) + type TeamsWebhookSettings struct + Webhooks map[string]TeamsWebhookTarget + type TeamsWebhookTarget struct + Title string + WebhookURL SecureString + type TelegramSettings struct + BaseURL string + MediaGroupDelayMS int + Proxy string + Streaming StreamingConfig + Token SecureString + UseMarkdownV2 bool + type ToolConfig struct + Enabled bool + type ToolDiscoveryConfig struct + Enabled bool + MaxSearchResults int + TTL int + UseBM25 bool + UseRegex bool + type ToolFeedbackConfig struct + Enabled bool + MaxArgsLength int + SeparateMessages bool + type ToolsConfig struct + AllowReadPaths []string + AllowWritePaths []string + AppendFile ToolConfig + Cron CronToolsConfig + EditFile ToolConfig + Exec ExecConfig + FilterMinLength int + FilterSensitiveData bool + FindSkills ToolConfig + I2C ToolConfig + InstallSkill ToolConfig + ListDir ToolConfig + LoadImage ToolConfig + MCP MCPConfig + MediaCleanup MediaCleanupConfig + Message MessageToolsConfig + ReadFile ReadFileToolConfig + SPI ToolConfig + SendFile ToolConfig + SendTTS ToolConfig + Serial ToolConfig + Skills SkillsToolsConfig + Spawn ToolConfig + SpawnStatus ToolConfig + Subagent ToolConfig + Web WebToolsConfig + WebFetch ToolConfig + WriteFile ToolConfig + func (c *ToolsConfig) GetFilterMinLength() int + func (c *ToolsConfig) IsFilterSensitiveDataEnabled() bool + func (t *ToolsConfig) IsToolEnabled(name string) bool + type TurnProfileBlock struct + Allow []string + Mode TurnProfileMode + type TurnProfileConfig struct + Enabled bool + History TurnProfileBlock + Skills TurnProfileBlock + SystemPrompt TurnProfileBlock + Tools TurnProfileBlock + type TurnProfileMode string + const TurnProfileModeCustom + const TurnProfileModeDefault + const TurnProfileModeOff + func (m TurnProfileMode) Effective() TurnProfileMode + type TypingConfig struct + Enabled bool + type VKSettings struct + GroupID int + Token SecureString + func (c *VKSettings) SetToken(token string) + type VoiceConfig struct + EchoTranscription bool + Enabled bool + Mode string + STTTarget string + STTViaChat bool + TTSTarget string + TTSVoice string + type WeComGroupConfig struct + AllowFrom FlexibleStringSlice + type WeComSettings struct + BotID string + Secret SecureString + SendThinkingMessage bool + Streaming StreamingConfig + WebSocketURL string + func (c *WeComSettings) SetSecret(secret string) + type WebChatClientSettings struct + PingInterval int + ReadTimeout int + SessionID string + Token SecureString + URL string + type WebChatSettings struct + AllowOrigins []string + AllowTokenQuery bool + MaxConnections int + PingInterval int + ReadTimeout int + Streaming StreamingConfig + Token SecureString + WriteTimeout int + func (c *WebChatSettings) SetToken(token string) + type WebToolsConfig struct + BaiduSearch BaiduSearchConfig + Brave BraveConfig + DuckDuckGo DuckDuckGoConfig + FetchLimitBytes int64 + Format string + GLMSearch GLMSearchConfig + Gemini GeminiSearchConfig + Kagi KagiConfig + Perplexity PerplexityConfig + PreferNative bool + PrivateHostWhitelist FlexibleStringSlice + Provider string + Proxy string + SearXNG SearXNGConfig + Sogou SogouConfig + Tavily TavilyConfig + type WeixinSettings struct + AccountID string + BaseURL string + CDNBaseURL string + Proxy string + Token SecureString + func (c *WeixinSettings) SetToken(token string) + type WhatsAppSettings struct + BridgeURL string + SessionStorePath string + UseNative bool Other modules containing this package github.com/xibodev/compa/v2