@kexi/vibe
v2.1.0
Published
Git worktree helper CLI
Readme
vibe
A CLI tool for easy Git Worktree management.
Installation
# Global install
npm install -g @kexi/vibe
# Or run directly with npx
npx @kexi/vibe start feat/my-featureNote:
@kexi/vibeis a thin launcher. On install, npm pulls in the matching per-platform package (@kexi/vibe-<platform>-<arch>, e.g.@kexi/vibe-darwin-arm64) viaoptionalDependencies, and the launcher execs the Rust binary it ships. Copy-on-Write file cloning (macOS APFS, Linux Btrfs/XFS) is built into that Rust binary — there is no separate native add-on to install.
Other Installation Methods
For alternative installation options (Homebrew, Deno, mise, Linux packages, Windows), see the GitHub repository.
Documentation
Full documentation is available at vibe.kexi.dev
Usage
| Command | Description |
| ------------------------ | --------------------------------------------------------------------------------- |
| vibe start <branch> | Create a worktree with a new or existing branch (idempotent) |
| vibe scratch | Create a worktree with an auto-generated scratch/<timestamp> branch |
| vibe jump <branch> | Jump to an existing worktree by branch name (partial / fuzzy match supported) |
| vibe rename <new-name> | Rename the current worktree's branch and directory |
| vibe clean | Delete current worktree and return to main (prompts if uncommitted changes exist) |
| vibe trust | Trust .vibe.toml and .vibe.local.toml files |
| vibe untrust | Untrust .vibe.toml and .vibe.local.toml files |
Examples
# Create a worktree with a new branch
vibe start feat/new-feature
# Use an existing branch (or re-run if worktree already exists)
vibe start feat/existing-branch
# After work is done, delete the worktree
vibe cleanGlobal Options
| Option | Description |
| ----------------- | ------------------------------------------------- |
| -h, --help | Show help message |
| -v, --version | Show version information |
| -V, --verbose | Show detailed output |
| -q, --quiet | Suppress non-essential output |
| -n, --dry-run | Preview operations without executing (start only) |
Setup
Add the following to your shell configuration:
vibe() { eval "$(command vibe "$@")" }vibe() { eval "$(command vibe "$@")"; }function vibe
eval (command vibe $argv)
endNote: native Windows x64 is supported through the
@kexi/vibe-win32-x64optional dependency. WSL2 users can use the Linux package instead.
function vibe { Invoke-Expression (& vibe.exe $args) }Configuration
Place a .vibe.toml file in the repository root to automatically run tasks on vibe start:
# Copy files and directories from origin repository to worktree
[copy]
files = [".env"]
dirs = ["node_modules", ".cache"]
# Commands to run after worktree creation
[hooks]
post_start = [
"pnpm install",
"pnpm db:migrate"
]Trust registration is required on first use with vibe trust.
For detailed configuration options including:
- Glob patterns for file copying
- Copy performance optimization (Copy-on-Write)
- Worktree path customization
- Security and hash verification
- Local configuration overrides
See the full documentation.
License
Apache-2.0
