app

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Jun 26, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package app is the composition root: it resolves the repo, paths, and config into the concrete managers (worktree, session backend, agent launcher, forge) that the CLI commands consume.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

type App struct {
	Cfg       config.Config
	Log       *zerolog.Logger
	Paths     paths.Paths
	Repo      domain.Repo
	Worktrees worktree.Manager
	Sessions  session.SessionBackend
	Store     *session.Store
	// contains filtered or unexported fields
}

App holds the wired-up managers for a repository.

func New

func New(ctx context.Context, cfg config.Config, log *zerolog.Logger) (*App, error)

New builds the App for the repository containing the working directory. Returns domain.ErrNotGitRepo when not inside a git work tree. The agent and forge are constructed best-effort: errors are deferred to Agent()/Forge() so commands that don't need them (init, status) still work.

func (*App) Agent

func (a *App) Agent() (agent.Launcher, error)

Agent returns the claude launcher, or the construction error.

func (*App) Forge

func (a *App) Forge() (forge.Forge, error)

Forge returns the configured forge, or the construction error.

Jump to

Keyboard shortcuts

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