app

package
v0.2.5 Latest Latest
Warning

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

Go to latest
Published: Jun 20, 2026 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultKeyMap = KeyMap{
	Quit:              key.NewBinding(key.WithKeys("q"), key.WithHelp("q", "quit")),
	Help:              key.NewBinding(key.WithKeys("?"), key.WithHelp("?", "help")),
	FocusLeft:         key.NewBinding(key.WithKeys("h", "left"), key.WithHelp("h/left", "focus left")),
	FocusRight:        key.NewBinding(key.WithKeys("l", "right"), key.WithHelp("l/right", "focus right")),
	Up:                key.NewBinding(key.WithKeys("k", "up"), key.WithHelp("k/up", "up")),
	Down:              key.NewBinding(key.WithKeys("j", "down"), key.WithHelp("j/down", "down")),
	Insert:            key.NewBinding(key.WithKeys("i"), key.WithHelp("i", "insert/passthrough")),
	Escape:            key.NewBinding(key.WithKeys("esc"), key.WithHelp("esc", "navigation mode")),
	Enter:             key.NewBinding(key.WithKeys("enter"), key.WithHelp("enter", "select/activate")),
	NewSession:        key.NewBinding(key.WithKeys("n"), key.WithHelp("n", "new session")),
	Delete:            key.NewBinding(key.WithKeys("d"), key.WithHelp("d", "delete/kill")),
	Editor:            key.NewBinding(key.WithKeys("ctrl+e"), key.WithHelp("ctrl+e", "open editor")),
	Git:               key.NewBinding(key.WithKeys("ctrl+g"), key.WithHelp("ctrl+g", "open lazygit")),
	Docker:            key.NewBinding(key.WithKeys("ctrl+d"), key.WithHelp("ctrl+d", "open lazydocker")),
	Tab:               key.NewBinding(key.WithKeys("tab"), key.WithHelp("tab", "cycle focus")),
	PageUp:            key.NewBinding(key.WithKeys("ctrl+u"), key.WithHelp("ctrl+u", "page up")),
	PassthroughEscape: key.NewBinding(key.WithKeys("ctrl+q"), key.WithHelp("ctrl+q", "escape passthrough")),
	Section1:          key.NewBinding(key.WithKeys("1"), key.WithHelp("1", "jump to sessions")),
	Section2:          key.NewBinding(key.WithKeys("2"), key.WithHelp("2", "jump to apps")),
	Section3:          key.NewBinding(key.WithKeys("3"), key.WithHelp("3", "jump to tasks")),
	Info:              key.NewBinding(key.WithKeys("0"), key.WithHelp("0", "project info")),
	Refresh:           key.NewBinding(key.WithKeys("r"), key.WithHelp("r", "refresh tasks")),
	RecursiveRefresh:  key.NewBinding(key.WithKeys("R"), key.WithHelp("R", "recursive scan")),
	PTYRun:            key.NewBinding(key.WithKeys("p"), key.WithHelp("p", "run task in PTY")),
	Favorite:          key.NewBinding(key.WithKeys("f"), key.WithHelp("f", "toggle preferred")),
	ToggleSidebar:     key.NewBinding(key.WithKeys("ctrl+b"), key.WithHelp("ctrl+b", "toggle sidebar")),
	ExpandRight:       key.NewBinding(key.WithKeys("]"), key.WithHelp("]", "expand right")),
	ExpandLeft:        key.NewBinding(key.WithKeys("["), key.WithHelp("[", "expand left")),
	ExpandRightLg:     key.NewBinding(key.WithKeys("}"), key.WithHelp("}", "expand right large")),
	ExpandLeftLg:      key.NewBinding(key.WithKeys("{"), key.WithHelp("{", "expand left large")),
	ToggleLayout:      key.NewBinding(key.WithKeys("ctrl+l"), key.WithHelp("ctrl+l", "toggle layout")),
	ToggleMouseMode:   key.NewBinding(key.WithKeys("ctrl+x"), key.WithHelp("ctrl+x", "toggle mouse mode")),
}

Functions

This section is empty.

Types

type AgentEventMsg

type AgentEventMsg struct {
	SessionID string
	Event     agent.AgentEvent
}

type AppModel

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

func New

func New(cfg *config.Config, version string) AppModel

func (AppModel) Init

func (m AppModel) Init() tea.Cmd

func (AppModel) Update

func (m AppModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

func (AppModel) View

func (m AppModel) View() string

type ErrorMsg

type ErrorMsg struct {
	Err error
}

type InputMode

type InputMode int
const (
	ModeNavigation InputMode = iota
	ModeInsert
	ModePassthrough
)

type KeyMap

type KeyMap struct {
	Quit              key.Binding
	Help              key.Binding
	FocusLeft         key.Binding
	FocusRight        key.Binding
	Up                key.Binding
	Down              key.Binding
	Insert            key.Binding
	Escape            key.Binding
	Enter             key.Binding
	NewSession        key.Binding
	Delete            key.Binding
	Editor            key.Binding
	Git               key.Binding
	Docker            key.Binding
	Tab               key.Binding
	PageUp            key.Binding
	PassthroughEscape key.Binding
	Section1          key.Binding
	Section2          key.Binding
	Section3          key.Binding
	Info              key.Binding
	Refresh           key.Binding
	RecursiveRefresh  key.Binding
	PTYRun            key.Binding
	Favorite          key.Binding
	ToggleSidebar     key.Binding
	ExpandRight       key.Binding
	ExpandLeft        key.Binding
	ExpandRightLg     key.Binding
	ExpandLeftLg      key.Binding
	ToggleLayout      key.Binding
	ToggleMouseMode   key.Binding
}

func (KeyMap) ImportantBindingGroups

func (k KeyMap) ImportantBindingGroups() []ui.BindingGroup

func (KeyMap) InsertBindings

func (k KeyMap) InsertBindings() []key.Binding

func (KeyMap) NavigationBindings

func (k KeyMap) NavigationBindings() []key.Binding

func (KeyMap) PassthroughBindings

func (k KeyMap) PassthroughBindings() []key.Binding

type LabelModal

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

func NewLabelModal

func NewLabelModal(agents []agent.Agent) *LabelModal

func (*LabelModal) Open

func (m *LabelModal) Open()

func (*LabelModal) SetSize

func (m *LabelModal) SetSize(w, h int)

func (*LabelModal) Update

func (m *LabelModal) Update(msg tea.Msg) (*LabelModal, tea.Cmd)

func (*LabelModal) View

func (m *LabelModal) View() string

func (*LabelModal) Visible

func (m *LabelModal) Visible() bool

type PASSTHROUGHMsg

type PASSTHROUGHMsg struct {
	Data []byte
}

type SessionCreatedMsg

type SessionCreatedMsg struct {
	SessionID string
	Label     string
}

type SessionDeletedMsg

type SessionDeletedMsg struct {
	SessionID string
}

type SessionLabelConfirmMsg

type SessionLabelConfirmMsg struct {
	Label    string
	AgentIdx int
}

type SideApp

type SideApp struct {
	Name      string
	Cmd       string
	Installed bool
	Sess      agent.Session
}

func (SideApp) Running

func (a SideApp) Running() bool

type TaskDoneMsg

type TaskDoneMsg struct {
	Idx      int
	ExitCode int
}

type TaskOutput

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

func (*TaskOutput) Append

func (o *TaskOutput) Append(s string)

func (*TaskOutput) String

func (o *TaskOutput) String() string

type TaskRun

type TaskRun struct {
	task.Task
	Sess   agent.Session
	Output *TaskOutput
	Status ui.TaskStatus
	IsPTY  bool
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

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