Rove is a terminal-native workspace for running multiple coding tasks in parallel with Claude Code, Codex, Copilot, Kimi, or any CLI you register.
Rove isolates parallel work in git worktrees and branches, while agent and shell sessions keep running when you disconnect.
Documentation · Quick start · Concepts · CLI · Agent API · Website
The sidebar tracks tasks and their sessions, the workspace embeds the active agent or shell, and the files pane shows the worktree's changes. Switch tasks to review output, inspect diffs, run tests, or send the next instruction.
One line, on a machine with nothing installed — it sets up the Bun runtime Rove needs, then Rove itself:
curl -fsSL https://rove.sma1lboy.me/install.sh | shOr use the package manager you already have:
npm install -g @sma1lboy/rove # offers to install Bun on first launch
bun install -g @sma1lboy/rove # if you already run Bun
npx @sma1lboy/rove # try it without installingInstall the skill to let a coding agent orchestrate Rove directly:
rove skill installThen launch it in a repository:
cd your-repo
roveRove needs git and at least one supported agent CLI on PATH, and runs on macOS, Linux, and Windows; Windows also requires Node.js and Git for Windows/Git Bash. The CLI itself runs on Bun ≥ 1.3.11 — every install route above brings it along, and ROVE_BUN=/path/to/bun points Rove at a Bun installed somewhere unusual.
Press n, choose a repository, base branch, and agent, then enter a prompt. Press F1 for the live keybinding reference; ctrl+q returns to the sidebar and quits from there without stopping sessions.
The package also installs kobe as a compatibility alias; rove is the canonical command. On first launch, supported legacy state is copied additively into ~/.rove; existing files and worktrees stay in place.
- Parallel tasks — keep a refactor, bug fix, test investigation, and review moving at the same time.
- Git isolation — each managed task owns a worktree and branch, so agents working on different tasks do not overwrite each other's files.
- Persistent sessions — quit the TUI or drop SSH, then reattach without stopping the work.
- Your existing agents — use the real Claude Code, Codex, Copilot, Kimi, or custom CLI, with its own authentication, permissions, models, and access to the local environment.
- Terminal-native — run Rove where the code lives: laptop, devbox, VPS, or a narrow mobile SSH session.
- Automation-ready — scripts and coding agents can create, inspect, message, and land tasks through
rove api.
Managed task
├── git worktree
├── git branch
└── terminal tabs
├── Claude Code
├── Codex
└── shell
Tabs inside one task share its files; create separate managed tasks when work needs isolation. Project-main tasks and rove . directory tasks deliberately reuse an existing directory. Sessions continue in the background when the TUI detaches, and Rove restores them when you return.
The usual loop is simple: start several different tasks, switch between their live sessions, review each worktree's diff and checks, send follow-up instructions, then merge the completed branches. See Concepts and Sessions for the full lifecycle.
rove api exposes the same task model to shell scripts and coding agents. A typical workflow creates a task, checks its output, sends follow-up instructions, and lands the completed branch:
rove api add --repo "$PWD" --prompt "Fix the flaky auth test."
rove api list
rove api read-output --task-id <id>
rove api send --task-id <id> --prompt "Run the integration suite too."
rove api land --task-id <id>Install the companion skill to let a coding agent orchestrate Rove directly:
rove skill installTasks created from inside another Rove session remember which task and tab dispatched them, so workers can report results back without an external coordinator. The API also covers task inspection, notifications, prompts, panes, issue tracking, routines, and worktree-safe lifecycle operations.
See the Agent API reference for every verb, flag, and exit code.
Rove works with the tools you already use: your editor, terminal, git workflow, and coding agents.
It runs the interactive agent CLIs you already use, keeps their sessions alive on the host, and lets you manage parallel coding tasks directly from your terminal — including over SSH.
- Terminal TUI — no desktop app required
- SSH-native — the same workflow works on remote machines
- Persistent sessions — disconnect and come back without losing running agents
- Existing agent CLIs — Claude Code, Codex, Copilot, Kimi, or your own
- Git-native isolation — parallel tasks can live in separate worktrees and branches
- Programmable — orchestrate tasks through
rove api
- Review: diff views and inline notes sent back as one agent prompt
- Recovery: rate-limit resume, cross-engine handoff, and multiple agents within one task
- Remote ergonomics: narrow/mobile layouts, a durable Inbox, notifications, and attachments
- Unattended work: scheduled routines with optional prechecks that skip idle runs
- Planning context: local Kanban, GitHub issue intake, and reusable repository field notes
- Customization: themes and plugins with custom panes, events, and commands
Explore the TUI guide, Routines, configuration, and plugin authoring for details.
rove doctorSee Troubleshooting for diagnostics and recovery steps.
bun install
bun run dev:sandbox
bun run testStart with CONTRIBUTING.md and Architecture. Shipped behavior lives in the changelog.
MIT © Jackson Chen

