Expand description
limb. A polished CLI + TUI for working with git worktrees.
The crate is organised as a thin command dispatcher on top of a handful of focused modules:
cli. Clap argument definitions for every subcommand.cmd. One submodule per subcommand; each exposesrun(ctx, args).worktree. Theworktree::Worktreedata model and the git-worktree wrappers every subcommand builds on.config. TOML loading for per-repo.limb.tomland~/.config/limb/config.toml.context. Runtime state (repo, config, flags) passed to every subcommand.discover,hooks,shell. Cross-repo scanning, user-hook execution, and shell-integration emission respectively.tui. The interactive picker (limb pick), backed byratatui.
Errors bubble up via anyhow::Result; error::Canceled is the one
structural error, used to signal Ctrl-C without an error message.
Modules§
- cancel
- Cooperative cancellation via Ctrl-C / SIGTERM / SIGHUP.
- cli
- Clap argument definitions for every subcommand.
- cmd
- One submodule per subcommand, each exposing
pub fn run(ctx, args). - config
- TOML configuration loading.
- context
- Runtime state threaded through every subcommand.
- discover
- Cross-repo discovery used by
--allandlimb pick. - error
- Structural error types.
- fmt
- Tiny formatting helpers shared by the table-printing subcommands.
- fuzzy
- Picker filter backed by
nucleo_matcher. - git
- Minimal
gitCLI wrappers. - hooks
- User-defined hook scripts.
- shell
- Shell integration emitted by
limb init <shell>. - style
- Semantic ANSI styles used by the non-TUI output path.
- tui
- Interactive TUI picker used by
limb pick. - worktree
- Worktree data model and git-worktree CLI wrappers.
Functions§
- run
- Runs the limb CLI to completion.