tiny CLI. big commit aura. terminal glitter with a conventional commit sticker on it.
vibe reads your staged git diff, asks an AI model to dress it up in a chosen persona, and commits it before the sparkle fades.
Is this practical? technically.
Is it mostly here to make git log --oneline look like it fell out of a haunted mall kiosk in 2003? absolutely.
Stage your changes, run vibe, and receive one deliciously stylized Conventional Commit subject.
Examples of the general energy:
fix(auth): seal expired sessions behind the login veil
refactor(api): rip duplicate customer lookup off the wiring
feat(ui): jack filters into the neon search grid
test(forms): lock signup validation under neon lightsThe messages stay readable enough for real engineers, but they are allowed to wear eyeliner.
vibe has two saved vibe levels:
normal- readable commit history with persona flavorsuper- useful type/scope, then the subject runs through the glitter cannon unsupervised
WARNING: Super Vibe keeps the type(scope): shell grounded in the staged diff, then lets the selected persona become loud, emoji-friendly, slangy, and possibly hazardous to dignified git history.
Current personas in the glitter drawer:
goth- dark, elegant, haunted, but readablepunk- punchy, rebellious, blunt, high-energycyber- neon, chrome, hacker-ish, futuristicrave- bright, kinetic, ecstatic, dance-floor energygrunge- fuzzy, raw, slacker, analog, worn-inscene- loud, colorful, internet-era, expressiveemo- heartfelt, dramatic, vulnerable, sharp
Set one once:
vibe personaOr skip the dramatic menu:
vibe persona cyber
vibe persona punk supervibe persona <name> changes only the persona and leaves your saved vibe level alone. vibe persona <name> <level> saves both values, because commitment issues are for the commit messages, not the config.
export VIBE_AI_GATEWAY_API_KEY="your-key-with-the-sparkles"
git add src/whatever.ts
vibeThat is the whole spell.
If nothing is staged, vibe complains. If the API key is missing, vibe complains. If you are not inside a git repo, vibe complains. It is a tiny diva with boundaries.
Install the published CLI from npm:
npm install -g @da1z/vibe-cliThen run:
vibeThe package exposes the vibe command and runs on Node 20+.
vibe # generate + commit staged changes
vibe persona # open the persona picker
vibe persona <name> # save a persona directly
vibe persona <name> <level>
vibe --help # receive a small amount of guidanceWant your coding agent to stop writing sensible little git commit -m messages and start using the glitter cannon?
Install the companion skill:
npx skills add da1z/vibe-cli --skill use-vibe-commitsNow the agent can still inspect and stage changes with git, but when it is time to commit, it knows the sacred ritual:
vibebun install
bun test
bun run typecheck
bun run build
bun run devTech snacks inside:
- Bun
- TypeScript
- AI SDK Gateway
- Clack prompts
- Chalk + Boxen terminal sparkle
- Git, obviously, wearing sunglasses indoors
This software will run git commit -m for you.
So, like, read your staged diff. Trust the vibe, but verify the vibe. The robot is here for commit-message glam, not legal counsel, production safety review, or emotional stability.
Because commit history can be useful and still look like it has a sticker-covered flip phone.
Because docs(readme): update README deserved better.
Because silly software is still software.
Now stage something and make it sparkle.