A terminal user interface for managing beads issues, inspired by LazyGit.
Navigate, create, and manage your project issues without leaving the terminal.
- Three-panel layout - See In Progress, Open, and Closed issues at a glance
- Vim-style navigation -
j/kto move,h/lto switch panels - Quick editing - Edit title, status, priority, or type with single keystrokes
- Filter & search - Use
/to filter issues by title or ID - Detail view - Press
Enterto see full issue details - External editor - Edit descriptions with
$EDITOR(defaults to nano) - Custom commands - Define your own keybindings for workflows
- Go 1.25+
bdCLI installed and available in PATH
go install github.com/youruser/lazybeads@latestOr clone and build:
git clone https://github.com/youruser/lazybeads
cd lazybeads
go install .Run lazybeads in any directory with beads initialized:
cd your-project
lazybeadsIf beads isn't initialized, you'll be prompted to set it up.
Verify the bd CLI integration works:
lazybeads --check| Key | Action |
|---|---|
j / k |
Move down / up |
g / G |
Jump to top / bottom |
Ctrl+u / Ctrl+d |
Page up / down |
h / l |
Previous / next panel |
| Key | Action |
|---|---|
Enter |
View issue details |
a or c |
Create new issue |
x |
Delete issue |
R |
Refresh list |
| Key | Action |
|---|---|
t |
Edit title |
s |
Edit status |
p |
Edit priority |
T |
Edit type |
d or e |
Edit description (opens $EDITOR) |
y |
Copy issue ID to clipboard |
| Key | Action |
|---|---|
/ |
Start filter |
Esc |
Clear filter |
| Key | Action |
|---|---|
? |
Show help |
Esc |
Go back / cancel |
q |
Quit |
LazyBeads looks for a configuration file at:
$LAZYBEADS_CONFIG(if set)~/.config/lazybeads/config.yml(default)
Define custom keybindings that execute shell commands. Template variables from the selected issue are available.
customCommands:
- key: "w"
description: "Start work in new tmux pane"
context: "list" # list, detail, or global
command: "tmux split-window -h 'claude --issue {{.ID}}'"
- key: "b"
description: "Open in browser"
context: "list"
command: "open 'https://your-tracker.com/issues/{{.ID}}'"Available template variables:
{{.ID}}- Issue ID{{.Title}}- Issue title{{.Status}}- Status (open, in_progress, closed){{.Type}}- Type (task, bug, feature, epic, chore){{.Priority}}- Priority (0-4){{.Description}}- Full description
lazybeads/
├── main.go # Entry point, CLI flags
├── internal/
│ ├── app/ # Bubble Tea application model
│ ├── beads/ # bd CLI wrapper
│ ├── config/ # Configuration loading
│ ├── models/ # Data models
│ └── ui/ # UI components and styles
└── .beads/ # Issue storage (managed by bd)
- beads - Git-native issue tracking
- LazyGit - Terminal UI for git
- Bubble Tea - TUI framework for Go
MIT