Original Reddit post

I wanted to build a project directory selector from terminal. Works great from mobile too. setup an alias keyword to start it, select your folder repo, select your cli (claude, claude dangerous, opencode etc) and boom. cluade wrote the summary on this What it looks like

Step 1: Install fzf

brew install fzf

Step 2: Add this function to your ~/.zshrc

a() {
local base="/path/to/your/projects"
# Step 1: pick folder (shows clean names, not full paths)
local dir=$(basename -a "$base"/*/ | grep -v '#' | fzf --prompt="Project: " | xargs -I {} echo "$base/{}/")
[[ -z "$dir" ]] && return
# Step 2: pick mode
local mode=$(printf "claude\nclaude --dangerously-skip-permissions\nopencode" | fzf --prompt="Mode: ")
[[ -z "$mode" ]] && return
cd "$dir" && eval "$mode"
}

Replace /path/to/your/projects with your actual projects folder.

Step 3: Reload

source ~/.zshrc

Bonus: --add-dir . to sandbox Claude to the project folder Swap claude in the printf list for claude --add-dir . and Claude Code won’t be able to read or write outside that directory.

Pure shell, no extra tooling beyond fzf. Works on desktop, works over SSH, works on mobile. submitted by /u/VonDenBerg

Originally posted by u/VonDenBerg on r/ClaudeCode