Getting started
Git Vibe works best when you want one feat/* workflow that can handle both parallel lanes and simpler one-checkout work.
Recommended tools
These are the tools that make the full Git Vibe workflow available:
ghfor issue-driven vibes, pull requests, and PR checkscodexorcodeif you wantgit vibe opento launch a workspace appnpx skillsif you want to install the Git Vibe skill for Codex
Install Git Vibe
curl -fsSL https://raw.githubusercontent.com/sailscastshq/git-vibe/main/install.sh | bashTo pin a specific release:
curl -fsSL https://raw.githubusercontent.com/sailscastshq/git-vibe/v0.0.4/install.sh | GIT_VIBE_REF=v0.0.4 bashIf you are working from a local checkout, you can also run:
./install.shInstall the skill too
If you use Codex, install the Git Vibe skill alongside the CLI. The CLI creates the workflow. The skill gives the agent the conventions and commands to follow inside it.
npx skills add sailscastshq/git-vibeWhat the installer sets up
The installer:
- installs
git-vibeinto~/.git-vibe/bin - installs global Git hook wrappers into
~/.git-vibe/hooks - configures
git vibe,git vc, andgit vraliases - sets shared defaults such as
vibe.baseBranch,vibe.branchPrefix, andvibe.worktreeRoot - updates your shell profile so auto-jump works for
git vibe code,git vibe enter, andgit vibe finish
Reload your shell
The installer updates your shell profile, but it cannot modify the terminal session that launched it.
Open a new terminal or reload your profile:
source ~/.zshrcgit vibe ... works immediately through the Git alias. Reloading the shell is what enables direct git-vibe usage and the auto-jump shell integration in the current session.
Verify the install
git vibe versionPick the right mode
Git Vibe defaults to worktree, which is still the best fit when you want one isolated lane per task.
Use worktree when:
- you are running multiple agents or experiments in parallel
- you want each task in its own directory
- you want the shell and editor to jump to a dedicated lane
Use solo when:
- you usually have one active branch at a time
- you mostly want
git switch,npm run dev, and quick UI iteration - you want the editor to stay on the same checkout while Git Vibe switches branches
Set your personal default with:
git config --global vibe.mode soloOpen your first vibe
From a clean main checkout:
git switch main
git pull --ff-only origin main
git vibe code fix-login-redirectIn the default worktree mode, that creates:
- a branch like
feat/fix-login-redirect - a dedicated worktree under
../.vibe/<repo>/fix-login-redirect - shared runtime plumbing such as
node_modulesfrom the main checkout when it already exists - a context summary showing the path, compare target, and current change state
If your base checkout is already ready to run, Git Vibe links node_modules into new vibes by default so commands like npm run dev, npm test, or framework CLIs can work without reinstalling dependencies.
If you are in solo mode, the same command creates or switches feat/fix-login-redirect in your current checkout instead. The editor usually stays aligned automatically because the path does not change.
If your project needs more than that, configure vibe.sharedPaths in vibe.toml for paths like .venv, .direnv, or vendor/bundle.
If you work from issues, you can start directly from the issue number:
git vibe issue 42TIP
This is where the AI benefit becomes practical. In worktree mode, each vibe is isolated, so you can run one agent in one worktree, explore a second change in another, and keep main clean for review or release.
Attach AI context when you open a vibe
git vibe code --agent codex --task "fix login redirect" 42This metadata makes it easier to resume a vibe later and understand what it was opened for.
Open a PR when you are ready
git vibe prFinish the vibe after merge
git vibe finish --sync 42That fetches the latest remote state, verifies the merge, and cleans up the vibe. In worktree mode it removes the worktree. In solo mode it switches the current checkout back to main.