pkg/

directory
v1.17.0 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2026 License: MIT

Directories

Path Synopsis
Package agent detects, without any user configuration, whether a process running inside a session is an AI coding agent CLI (claude, codex, opencode, ...) and what it is currently doing: idle, working, or waiting on the user.
Package agent detects, without any user configuration, whether a process running inside a session is an AI coding agent CLI (claude, codex, opencode, ...) and what it is currently doing: idle, working, or waiting on the user.
Package app wires the pieces of lazyshell together: configuration, the session manager and the GUI.
Package app wires the pieces of lazyshell together: configuration, the session manager and the GUI.
Package config loads lazyshell's user configuration: a YAML file merged onto hardcoded defaults, so a missing or partial file is never an error.
Package config loads lazyshell's user configuration: a YAML file merged onto hardcoded defaults, so a missing or partial file is never an error.
Package control is lazyshell's agent control API: a Unix socket, one per lazyshell process, over which an AI agent running inside a session can list the other sessions, read their output, create new ones, type into them, kill and rename them, or block until one reaches a given agent state — the `lazyshell ctl` command.
Package control is lazyshell's agent control API: a Unix socket, one per lazyshell process, over which an AI agent running inside a session can list the other sessions, read their output, create new ones, type into them, kill and rename them, or block until one reaches a given agent state — the `lazyshell ctl` command.
Package debug is the --debug mode's recorder: a small append-only log file plus an in-memory ring of the most recent entries, which pkg/gui draws in a floating panel over the output panel.
Package debug is the --debug mode's recorder: a small append-only log file plus an in-memory ring of the most recent entries, which pkg/gui draws in a floating panel over the output panel.
Package gui owns everything terminal-facing: the gocui bootstrap, the layout, the keybindings and the rendering loop.
Package gui owns everything terminal-facing: the gocui bootstrap, the layout, the keybindings and the rendering loop.
Package hook is lazyshell's authoritative AI agent state channel: a Unix socket per session that an agent's own hook mechanism (Claude Code's settings.json hooks, Codex's notify command, ...) can push a state to, via the `lazyshell hook <event>` CLI command.
Package hook is lazyshell's authoritative AI agent state channel: a Unix socket per session that an agent's own hook mechanism (Claude Code's settings.json hooks, Codex's notify command, ...) can push a state to, via the `lazyshell hook <event>` CLI command.
Package i18n resolves the interface's user-facing strings against pkg/config's Language: "fr" or "en", the two lazyshell ships with.
Package i18n resolves the interface's user-facing strings against pkg/config's Language: "fr" or "en", the two lazyshell ships with.
Package keys translates gocui key events into the byte sequences a terminal would have sent to a pty.
Package keys translates gocui key events into the byte sequences a terminal would have sent to a pty.
Package screen wraps a terminal emulator: the pty writes into it, and it renders the resulting screen for display.
Package screen wraps a terminal emulator: the pty writes into it, and it renders the resulting screen for display.
Package session owns the lifecycle of the shell processes: one pty per session, a *screen.Screen (pkg/screen) rendering it and providing bounded scrollback, a drain goroutine per session and a Manager exposing New/Kill/List/Get.
Package session owns the lifecycle of the shell processes: one pty per session, a *screen.Screen (pkg/screen) rendering it and providing bounded scrollback, a drain goroutine per session and a Manager exposing New/Kill/List/Get.
Package tasks is a port of the pattern behind lazydocker's TaskManager: one task is one goroutine plus a cancelable context, and starting a new task stops the previous one.
Package tasks is a port of the pattern behind lazydocker's TaskManager: one task is one goroutine plus a cancelable context, and starting a new task stops the previous one.
Package update implements what `lazyshell update` needs: find the latest GitHub release, download the archive built for this OS/arch, check it against the release's checksums.txt, and swap the running binary for the one inside.
Package update implements what `lazyshell update` needs: find the latest GitHub release, download the archive built for this OS/arch, check it against the release's checksums.txt, and swap the running binary for the one inside.
Package version holds the build-time version string, so both pkg/app (--version, config show) and pkg/gui (help popup) can read it without depending on each other.
Package version holds the build-time version string, so both pkg/app (--version, config show) and pkg/gui (help popup) can read it without depending on each other.

Jump to

Keyboard shortcuts

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