Versions in this module Expand all Collapse all v1 v1.0.0 Aug 29, 2026 Changes in this version + const AgentDefaultBackoffFactor + const AgentDefaultInitialDelayMs + const AgentDefaultMaxRetries + const AskLockPrefix + const GitHubMCPDefaultEndpoint + const LinearGraphQLDefaultEndpoint + const WorkflowLoopBreak + const WorkflowLoopContinue + const WorkflowLoopDefaultMaxIterations + const WorkflowScopeGlobal + const WorkflowScopePlugin + const WorkflowScopeRepo + const WorkflowScopeUser + const WorkflowStepKindAgent + const WorkflowStepKindLoop + var ProviderConfigReservedKeys = []string + func AgentRetryOptions(cfg Config) (maxRetries int, initialDelay time.Duration, backoffFactor float64) + func ConfigPath() (string, error) + func EnsureWorktreeGitignore(cwd string) + func GitHubMCPEndpointOrDefault(c GitHubMCPConfig) string + func GitignoreCoversWorktrees(contents string) bool + func InGitCheckout() bool + func InGitCheckoutAt(cwd string) bool + func InJujutsuCheckoutAt(cwd string) bool + func IsProjectConfigEmpty(pc ProjectConfig) bool + func LinearGraphQLEndpointOrDefault(c LinearMCPConfig) string + func MigrateLegacyIssuesGitHub(cfg *Config, data []byte) + func MigrateLegacyProviderBlocks(cfg *Config, data []byte) + func MigrateLegacyProviderEffort(cfg *Config, data []byte) + func MigrateLegacyToolOutput(cfg *Config, data []byte) + func ProjectKey(cwd string) string + func ProjectRoot(cwd string) string + func ResolveBraveAPIKey(c WebSearchConfig) string + func Save(cfg Config) error + func SaveProject(cwd string, pc ProjectConfig) error + func SaveProjectLocked(cwd string, pc ProjectConfig) error + func WithConfigLock(fn func() error) error + func WorktreeEnabled(cfg Config, cwd string) bool + func WorktreeNameFromCwd(cwd string) string + type AskCwdInvalidErr struct + Msg string + WorktreeName string + func ValidateAskCwd(cwd string) AskCwdInvalidErr + type Config struct + Effort string + Keybindings map[string]string + MCPDisabled map[string]bool + MCPServers map[string]MCPServerConfig + Memory MemoryConfig + Projects map[string]ProjectConfig + Provider string + Providers map[string]ProviderConfig + RecentModels []RecentModelRef + UI UIConfig + WebSearch WebSearchConfig + func Load() (Config, error) + func UpsertProjectConfig(cfg Config, cwd string, pc ProjectConfig) Config + func (c *Config) SetProviderConfig(id string, pc ProviderConfig) + func (c Config) ProviderConfig(id string) ProviderConfig + type GitHubMCPConfig struct + Endpoint string + Token string + type IssuesConfig struct + Cycle string + Project string + Provider string + Repo string + Team string + Tracker string + type LinearMCPConfig struct + Endpoint string + TeamKey string + Token string + type MCPServerConfig struct + Args []string + Command string + Disabled bool + DisabledTools []string + EnabledTools []string + Env map[string]string + OAuth bool + Timeout int + Type string + URL string + type MemoryConfig struct + Model string + Provider string + type ProjectConfig struct + Issues IssuesConfig + MCP ProjectMCPConfig + MCPDisabled map[string]bool + MCPServers map[string]MCPServerConfig + Workflows WorkflowsConfig + Worktree *bool + func LoadProject(cwd string) (ProjectConfig, error) + func LoadProjectConfig(cfg Config, cwd string) ProjectConfig + type ProjectMCPConfig struct + GitHub GitHubMCPConfig + Linear LinearMCPConfig + type ProviderConfig struct + Fields map[string]string + Model string + SlashCommands []ProviderSlashEntry + func (pc *ProviderConfig) UnmarshalJSON(data []byte) error + func (pc ProviderConfig) Field(key string) string + func (pc ProviderConfig) IsEmpty() bool + func (pc ProviderConfig) MarshalJSON() ([]byte, error) + func (pc ProviderConfig) WithField(key, value string) ProviderConfig + type ProviderSlashEntry struct + Description string + Name string + type RecentModelRef struct + Model string + Provider string + type RetryConfig = RetryUIConfig + type RetryUIConfig struct + BackoffFactor *float64 + InitialDelayMs *int + MaxRetries *int + type UIConfig struct + CursorBlink *bool + GateTodosBeforeMutate *bool + QuietMode *bool + RenderDiffs *bool + Retry *RetryUIConfig + SkipAllPermissions *bool + Theme string + ToolOutput string + Worktree *bool + type WebSearchConfig struct + BraveAPIKey string + type WorkflowDef struct + Description string + Name string + Plugin string + Scope string + Steps []WorkflowStep + type WorkflowSession struct + StartedAt time.Time + Status string + StepIndex int + UpdatedAt time.Time + Workflow string + func (s *WorkflowSession) UnmarshalJSON(data []byte) error + type WorkflowStep struct + ExitCondition string + Kind string + MaxIterations int + Model string + Name string + Prompt string + Provider string + Steps []WorkflowStep + func (s WorkflowStep) EffectiveMaxIterations() int + func (s WorkflowStep) IsLoop() bool + type WorkflowsConfig struct + ActiveWorkflow string + Items []WorkflowDef + Sessions map[string]WorkflowSession + type WorkspaceBackend int + const WorkspaceBackendGit + const WorkspaceBackendJJ + const WorkspaceBackendNone + func WorktreeBackendAt(cwd string) WorkspaceBackend