Documentation
¶
Index ¶
- func EnsureDaemon(sockPath, configFile string) (net.Conn, error)
- func FetchScreenSnapshot(cfg *config.Config, paths config.Paths, configFile string, sessionID string) *protocol.ScreenSnapshotResponseMsg
- func FetchScrollbackPreview(cfg *config.Config, paths config.Paths, configFile string, sessionID string) string
- func RunNameInput(title string) string
- func RunShellInWorktree(worktreePath string) error
- func ShortDuration(d time.Duration) string
- func SortSessions(sessions []protocol.SessionInfo)
- func WriteScreenRestore(snap *protocol.ScreenSnapshotResponseMsg)
- type Client
- func (c *Client) Close()
- func (c *Client) Handshake() error
- func (c *Client) ReadControlResponse() (protocol.Envelope, error)
- func (c *Client) ReadFrame() (protocol.Frame, error)
- func (c *Client) RunPassthrough(ctx context.Context, opts PassthroughOpts) PassthroughResult
- func (c *Client) SendControl(msgType string, payload any) error
- func (c *Client) SendData(data []byte) error
- type DashboardModel
- type DashboardResult
- type OverlayResult
- type PassthroughKeys
- type PassthroughOpts
- type PassthroughResult
- type StatusBarCfg
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FetchScreenSnapshot ¶ added in v0.2.0
func FetchScrollbackPreview ¶
func RunNameInput ¶ added in v0.9.0
RunNameInput launches a bubbletea prompt asking for a session name. Returns the entered name, or "" if the user cancelled.
func RunShellInWorktree ¶
RunShellInWorktree spawns an interactive shell with its working directory set to the given worktree path, and GRAITH_WORKTREE exported in the env.
func ShortDuration ¶ added in v0.3.0
func SortSessions ¶ added in v0.5.1
func SortSessions(sessions []protocol.SessionInfo)
func WriteScreenRestore ¶ added in v0.2.0
func WriteScreenRestore(snap *protocol.ScreenSnapshotResponseMsg)
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func Connect ¶
Connect creates a new client, performs the handshake, and reads the handshake response. On failure the connection is closed automatically.
func ConnectFast ¶ added in v0.11.0
ConnectFast is a fast-path connect for hooks. It dials the daemon socket directly with a short timeout and does NOT auto-start the daemon.
func (*Client) ReadControlResponse ¶
func (*Client) RunPassthrough ¶
func (c *Client) RunPassthrough(ctx context.Context, opts PassthroughOpts) PassthroughResult
type DashboardModel ¶ added in v0.3.0
type DashboardModel struct {
// contains filtered or unexported fields
}
func NewDashboardModel ¶ added in v0.3.0
func NewDashboardModel(sessions []protocol.SessionInfo, refresh func() []protocol.SessionInfo) DashboardModel
func (DashboardModel) Init ¶ added in v0.3.0
func (m DashboardModel) Init() tea.Cmd
func (DashboardModel) View ¶ added in v0.3.0
func (m DashboardModel) View() tea.View
type DashboardResult ¶ added in v0.3.0
func RunDashboard ¶ added in v0.3.0
func RunDashboard(sessions []protocol.SessionInfo, refresh func() []protocol.SessionInfo) *DashboardResult
type OverlayResult ¶
OverlayResult holds the outcome of the overlay interaction.
func RunOverlay ¶
func RunOverlay(sessions []protocol.SessionInfo, currentSessionID string, fetchPreview func(sessionID string) string) *OverlayResult
RunOverlay launches the bubbletea overlay listing sessions grouped by repo. currentSessionID highlights the session the user was just attached to. fetchPreview is called asynchronously to load scrollback for the selected session.
type PassthroughKeys ¶
type PassthroughOpts ¶ added in v0.3.0
type PassthroughOpts struct {
Keys PassthroughKeys
SessionID string
Info *protocol.SessionInfo
StatusBar *StatusBarCfg
}
type PassthroughResult ¶
type PassthroughResult int
const ( ResultDetached PassthroughResult = iota ResultOverlay ResultShell ResultQuit ResultDisconnected ResultRestart ResultNextSession ResultPrevSession ResultNewSession ResultForkSession ResultLastSession )
type StatusBarCfg ¶ added in v0.3.0
type StatusBarCfg struct {
Position string
}