A terminal session manager with fuzzy finding and smart ranking.
Pick a workspace, get a dedicated multiplexer session — that's it.
- Auto-named sessions — each workspace directory becomes an isolated session. you don't need to think of the name.
- Auto-created sessions — no need to manually create or attach:
zz personalovercd ~/repos/my-personal-project && zellij -s my-personal-projectandzellij attach my-personal-project - Fuzzy navigation —
zzto interactively select, orzz <query>to jump directly - Basename matching —
zz personalfindsmy-personal-projectwithout typing the full path
| Before | After |
|---|---|
git clone git@github.com:aster-void/my-personal-project ~/repos/my-personal-project |
zz get git@github.com:aster-void/my-personal-project |
cd ~/repos/my-personal-project && zellij -s my-personal-project |
zz personal |
zellij attach my-personal-project |
zz personal |
Recommended: Ask your agent to implement it
# Pass this prompt to your favorite coding agent
claude "Read https://raw.githubusercontent.com/aster-void/zz/main/SPEC.md and install zz"A reference implementation (zz.sh) is also available (flat workspace + zellij):
curl -fLo ~/.local/bin/zz https://raw.githubusercontent.com/aster-void/zz/main/zz.sh
chmod +x ~/.local/bin/zz
# If your workspace isn't ~/workspace:
sed -i 's|ZZ_WORKSPACE=.*|ZZ_WORKSPACE="$HOME/repos"|' ~/.local/bin/zzzz # fuzzy select and attach
zz <query> # attach to best match
zz get <url> # clone repo into workspace
zz ls # list sessions
zz ls -a # list all repos
zz delete <query> # delete a session
zz delete --all # delete all sessions
zz --help # show help