Open source CLI tool for developers

Project Switcher CLI
for Terminal Workspaces.
Two keystrokes.

son finds your recent repos, fuzzy-searches them with fzf, and opens ready-made terminal workspaces in tmux, WezTerm, or iTerm2 with split panes, editors, and startup hooks.

Also available via go install · macOS · Linux

~/dev
~$

Search Projects with fzf
and Frecency Ranking.

Launch split-pane workspaces with editors and startup hooks. Designed for developers who value their time.

Smart Discovery

Scans your dev directories automatically. Zero config. Finds every repo, every project, every time.

Multi-Terminal

Native support for iTerm2, tmux, and WezTerm. Uses whichever you have, adapts to its API.

Fuzzy Search

Powered by fzf. Type a few characters, find any project instantly. Frecency-sorted for smarter defaults.

Custom Layouts

Single pane, split, 3-pane, or grid. Define per-project or use smart defaults based on project type.

Editor Integration

Launches VS Code, Cursor, Zed, or Neovim alongside your terminal panes. One command, full workspace.

Startup Hooks

Auto-run commands per project. Start dev servers, set env vars, activate venvs. All from .son.toml.

Switch Between Projects in Terminal — Fast.

Install son on macOS or Linux. From zero to a fully configured workspace in under 60 seconds.

01

Install

One command. Homebrew or Go install. No dependencies, no runtime, no bloat.

$ brew install abdussamet032/tap/son
02

Run

Type son. See your projects sorted by recent activity and frequency. Pick one with fuzzy search.

$ son
03

Code

Your terminal opens with the layout you want, editor ready, dev server running. Zero to productive in under a second.

$ # you're already coding

son vs tmuxinator, zoxide, and Manual Setup

Looking for a tmuxinator alternative? See how son compares to existing terminal session managers and directory jumpers.

FeaturesontmuxinatorzoxideManual
Zero-config project discovery
Frecency sorting
Fuzzy search (fzf)
Multi-terminal supporttmux only
Custom split layouts
Editor integration
Startup hooks
Per-project config
Single binary, no runtimen/a

Install son on macOS and Linux

One command. Start switching between projects immediately. No config files, no setup wizard, no tutorials needed.

Homebrew$ brew install abdussamet032/tap/son
Go$ go install github.com/abdussamet032/son@latest