Local repo workspace CLI for Git worktrees + tmux.
Skipper is a local-first CLI for working across GitHub repositories and branch workspaces without juggling paths by hand. It clones repositories into a shared local root, creates per-branch Git worktrees, opens or switches into matching tmux sessions, and runs shell commands in the right checkout.
By default, Skipper keeps:
- repositories in
~/.local/share/github/<repo> - non-
mainworktrees in~/.local/share/skipper/worktree/<repo>/<repo>.<branch>
If you omit --repository or --branch in an interactive terminal, Skipper lets you pick them.
bungitghopencodetmux
bun add -g @skippercorp/skipper-cliThis installs the sk command.
Or run without installing:
bunx @skippercorp/skipper-cli --help# Clone into ~/.local/share/github/<repo>
sk clone git@github.com:owner/repo.git
# Create a workspace for a feature branch
sk workspace create --repository repo --branch feature/my-change
# Jump into a tmux session for that workspace
sk workspace attach --repository repo --branch feature/my-change
# Run a shell command in that same workspace
sk workspace run --repository repo --branch feature/my-change --command "bun test"
# Run an OpenCode prompt in that workspace
sk workspace prompt --repository repo --branch feature/my-change "Explain this codebase"main is treated specially: it uses the repository checkout directly, while other branches use dedicated worktrees.
Before first workspace prompt use, configure OpenCode auth with opencode auth login.
bun install
bun run cli -- --help
bun run check:fix
bun test