config

package
v0.12.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 26, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Expand

func Expand(s string, vars TemplateVars) (string, error)

func ExpandPath added in v0.11.0

func ExpandPath(p string) string

func ExpandSlice

func ExpandSlice(ss []string, vars TemplateVars) ([]string, error)

func LegacyRuntimeDirs added in v0.11.0

func LegacyRuntimeDirs() []string

LegacyRuntimeDirs returns paths where older versions stored the socket and PID file (TMPDIR or /tmp fallbacks). Used during startup to detect and clean up an orphaned daemon after the socket location changed.

func ParseDurationWithDays added in v0.3.0

func ParseDurationWithDays(s string) time.Duration

Types

type Agent

type Agent struct {
	Command     string            `toml:"command"`
	Args        []string          `toml:"args"`
	ResumeArgs  []string          `toml:"resume_args"`
	ForkArgs    []string          `toml:"fork_args"`
	Env         map[string]string `toml:"env"`
	IdleTimeout string            `toml:"idle_timeout"`
	Sandbox     SandboxConfig     `toml:"sandbox"`
}

func (Agent) IdleTimeoutDuration

func (a Agent) IdleTimeoutDuration() time.Duration

type Config

type Config struct {
	DefaultAgent     string           `toml:"default_agent"`
	GitHubUsername   string           `toml:"github_username"`
	BranchPrefix     string           `toml:"branch_prefix"`
	FetchOnCreate    bool             `toml:"fetch_on_create"`
	AllowedRepoPaths []string         `toml:"allowed_repo_paths"`
	StatusBar        StatusBar        `toml:"status_bar"`
	Keybindings      Keybindings      `toml:"keybindings"`
	Notifications    Notifications    `toml:"notifications"`
	Messages         Messages         `toml:"messages"`
	Sandbox          SandboxConfig    `toml:"sandbox"`
	Agents           map[string]Agent `toml:"agents"`
}

func Default

func Default() *Config

func Load

func Load(path string) (*Config, error)

func LoadOrDefault

func LoadOrDefault(path string) (*Config, error)

func (*Config) RepoPathAllowed added in v0.11.0

func (c *Config) RepoPathAllowed(repoPath string) bool

type Keybindings

type Keybindings struct {
	Prefix        string `toml:"prefix"`
	NewSession    string `toml:"new_session"`
	ForkSession   string `toml:"fork_session"`
	DeleteSession string `toml:"delete_session"`
	Detach        string `toml:"detach"`
	SessionList   string `toml:"session_list"`
	NextSession   string `toml:"next_session"`
	PrevSession   string `toml:"prev_session"`
	LastSession   string `toml:"last_session"`
	ResumeSession string `toml:"resume_session"`
	RenameSession string `toml:"rename_session"`
	Search        string `toml:"search"`
	ScrollMode    string `toml:"scroll_mode"`
	Shell         string `toml:"shell"`
}

type Messages added in v0.3.0

type Messages struct {
	MaxAge       string `toml:"max_age"`
	MaxPerStream int    `toml:"max_per_stream"`
}

func (Messages) MaxAgeDuration added in v0.3.0

func (m Messages) MaxAgeDuration() time.Duration

type Notifications added in v0.2.0

type Notifications struct {
	Enabled    bool   `toml:"enabled"`
	OnApproval bool   `toml:"on_approval"`
	OnStopped  bool   `toml:"on_stopped"`
	Command    string `toml:"command"`
}

type Paths

type Paths struct {
	ConfigFile string
	DataDir    string
	RuntimeDir string
	SocketPath string
	PIDFile    string
	StateFile  string
	LogDir     string
	DaemonLog  string
	MessagesDB string
}

func ResolvePaths

func ResolvePaths() Paths

func (Paths) EnsureDirs

func (p Paths) EnsureDirs() error

type SandboxConfig added in v0.11.0

type SandboxConfig struct {
	Enabled   bool     `toml:"enabled"`
	Disabled  *bool    `toml:"disabled,omitempty"`
	Command   string   `toml:"command"`
	Features  []string `toml:"features"`
	ReadDirs  []string `toml:"read_dirs"`
	WriteDirs []string `toml:"write_dirs"`
}

func (SandboxConfig) Merge added in v0.11.0

func (s SandboxConfig) Merge(agent SandboxConfig) SandboxConfig

type StatusBar added in v0.3.0

type StatusBar struct {
	Enabled  bool   `toml:"enabled"`
	Position string `toml:"position"`
}

type TemplateVars

type TemplateVars struct {
	Username                 string
	AgentSessionID           string
	SessionName              string
	SessionID                string
	WorktreePath             string
	ForkSourceAgentSessionID string
}

type Watcher added in v0.3.0

type Watcher struct {
	// contains filtered or unexported fields
}

func NewWatcher added in v0.3.0

func NewWatcher(path string, onChange func(*Config), log *slog.Logger) *Watcher

func (*Watcher) Run added in v0.3.0

func (w *Watcher) Run(ctx context.Context) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL