Skip to content

This guide takes you from zero to a working parallel development setup in about 5 minutes.

1. Create a Worktree from a Task ​

Navigate to any git repository and describe what you want done:

bash
cd your-project

owt new "Add user authentication with email and password"

Open Orchestrator will:

  • Auto-generate a branch name from your task (e.g., add-user-authentication)
  • Ask you to confirm or edit the branch name
  • Create a git worktree in a sibling directory
  • Detect your project type and install dependencies
  • Create a tmux session
  • Launch your AI coding agent with the task description

You stay in your current terminal. The AI agent works in the background.

2. Open the Control Plane ​

Launch the Control Plane to see all your worktrees at a glance:

bash
owt

The Control Plane is a Textual decision surface that groups worktrees by what needs your attention. Each worktree shows a status light:

  • idle -- agent is waiting for input
  • working -- agent is actively coding
  • done -- agent has finished
  • error -- something went wrong

Press Enter on any worktree to jump into its tmux session.

3. Send Follow-Up Instructions ​

Send additional instructions to the AI agent without leaving your terminal:

bash
owt send auth "Fix the failing tests and add rate limiting"

Or press Enter on a worktree in the Control Plane to drop into the session and interact directly.

4. Jump Into a Worktree ​

Switch to a worktree's tmux session to review work or interact with the agent:

bash
owt switch auth

You can also press Enter on the Control Plane worktree to do the same thing.

Once inside, press Alt+s to return to the Control Plane.

5. Return to the Control Plane ​

From any worktree's tmux session, press Alt+s to go back to the Control Plane. This is a global tmux keybinding -- it works from anywhere.

To create a new worktree from inside tmux, press Alt+c.

6. Merge and Clean Up ​

When the work is done, run the two-phase merge:

bash
owt merge auth

This merges the branch into your base branch, verifies the result, and automatically cleans up the worktree, git branch, and tmux session.

What's Next? ​

Now that you have the basics: