Developer productivity CLI

Search, inspect, and jump between local projects fast.

bet gives you a fast way to find the right repo, inspect it, and jump into it without memorizing paths or digging through a crowded ~/code folder.

local project index shell-native workflow lightweight setup
Why bet

Your machine probably has more projects than your folder structure can handle.

As your local workspace grows, simple navigation gets slower. Repos end up spread across work, client, and side-project folders. bet gives you one fast interface for finding what you need and getting into it.

Stop guessing paths

Search and jump by project slug instead of remembering exactly where a repo lives.

Keep local work organized

Define your roots once, scan them, and treat your machine like a structured workspace.

Stay in the terminal

Use a shell-native workflow that fits how developers already work instead of forcing a new system.

How it works

Set it up once. Use it every day.

bet is intentionally simple. You point it at the directories where you keep projects, let it build the index, and then use focused commands to search, inspect, and jump.

Step 01

Index your roots

Run bet update --roots "$HOME/code,$HOME/work" to scan the places where you keep your projects.

Step 02

Find what you need

Use commands like bet list, bet search api, and bet info payments to locate the right project fast.

Step 03

Jump into the work

Add shell integration once, then use bet go <slug> to move into projects without breaking your flow.

Functionality

Common tasks, shown as commands.

Think of bet as a focused command set for local project navigation. These are the core workflows most users need day to day.

Index the directories where you keep code

Run this the first time to tell bet where your projects live.

$bet update --roots "$HOME/code,$HOME/work"

List everything bet has indexed

Use this when you want a quick view of all known projects.

$bet list

Search for a project by name

Use fuzzy search when you know part of the repo name but not the exact slug.

$bet search api

Inspect a project before you open it

Check metadata or print the absolute path when you want to confirm you have the right project.

$bet info marketing-site
$bet path marketing-site

Jump into a project from your shell

After enabling shell integration (add eval "$(bet shell)" to your shell rc file), use bet go to change directly into the project directory.

$bet go marketing-site

Open a project in your editor

Launch the selected project with your configured editor or your system default app.

$bet edit marketing-site

Keep the index up to date automatically

If you want bet to refresh itself on a schedule, install a cron update interval.

$bet update --cron 1h
FAQ

Answer the obvious objections early.

Developers already have workarounds. The page should acknowledge that and explain why bet is still useful.

I already use cd, find, or fzf.

bet is not trying to replace the shell. It gives frequent project navigation a dedicated, repeatable interface so you spend less time improvising path lookup.

I do not want another tool to maintain.

The setup is lightweight: define roots, run update, and use the index. The value is in removing daily friction, not adding process.

My folders are already fairly organized.

bet becomes more valuable as project count grows or work spreads across multiple roots. Even tidy systems benefit from faster search, inspect, and jump workflows.

Install

Install bet in three steps.

Install the CLI, build your project index, then enable shell integration so bet go can drop you into a project instantly.

Step 01

Install the CLI

Use your preferred package manager.

$pnpm add -g bet-cli
$npm install -g bet-cli
$yarn global add bet-cli
Step 02

Initialize your project index

Point bet at the directories where you keep code. If you want bet to refresh the index automatically, add the optional cron command after the initial setup.

$bet update --roots "$HOME/code,$HOME/work"
#optional cron for indexing $bet update --cron 1h
Step 03

Enable shell integration and jump in

Add the shell snippet to your rc file, reload your shell, and use bet go to move directly into a project.

$echo 'eval "$(bet shell)"' >> ~/.zshrc
$source ~/.zshrc
$bet go marketing-site