project

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AgentDisplayName added in v0.1.1

func AgentDisplayName(configCmd, currentProcess string) string

func DeleteFeature

func DeleteFeature(proj config.Project, branch string, force bool) error

DeleteFeature removes a feature's tmux window and worktree.

func FeatureWindowName

func FeatureWindowName(projectName, branch string) string

FeatureWindowName is exported for use by TUI.

func IsAgentPane added in v0.1.1

func IsAgentPane(configCmd, currentProcess string) bool

func LaunchFeature

func LaunchFeature(cfg *config.Config, proj config.Project, branch string, createNew bool) error

LaunchFeature creates a worktree (if needed), tmux window, and sets up the pane layout.

Types

type AgentStatus added in v0.1.1

type AgentStatus string

AgentStatus represents the inferred runtime state of an agent pane.

const (
	AgentStatusUnknown           AgentStatus = "unknown"
	AgentStatusIdle              AgentStatus = "idle"
	AgentStatusRunning           AgentStatus = "running"
	AgentStatusWaitingInput      AgentStatus = "waiting_input"
	AgentStatusWaitingPermission AgentStatus = "waiting_permission"
)

func DetectAgentStatus added in v0.1.1

func DetectAgentStatus(configCmd, currentProcess, output string) AgentStatus

func (AgentStatus) Label added in v0.1.1

func (s AgentStatus) Label() string

type Feature

type Feature struct {
	Branch      string
	WorkDir     string
	IsMain      bool
	Status      FeatureStatus
	WindowName  string
	Panes       []PaneStatus
	Description string
}

Feature represents a worktree/branch with its tmux state.

type FeatureStatus

type FeatureStatus int

FeatureStatus represents the state of a feature branch.

const (
	StatusInactive FeatureStatus = iota
	StatusLive
)

type PaneStatus

type PaneStatus struct {
	ConfigCmd      string // from config layout, e.g. "claude", "codex", "npm run dev"
	CurrentProcess string // from tmux pane_current_command
	AgentName      string
	IsAgent        bool
	Status         AgentStatus
}

PaneStatus represents a pane's configured command and running process.

type ProjectState

type ProjectState struct {
	Config   config.Project
	Features []Feature
}

ProjectState is the merged view of a project.

func LoadAll

func LoadAll(cfg *config.Config, st *state.State) []ProjectState

LoadAll builds the full state for all configured projects.

func LoadProject

func LoadProject(cfg *config.Config, proj config.Project, st *state.State) ProjectState

LoadProject builds the state for a single project.

Jump to

Keyboard shortcuts

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