Coming from Conductor

Conductor is joining Meta and winding down. Conductor Cloud shuts down on November 20, 2026, and the Mac app stops getting updates in early 2027. If you used it, you already know how Ouijit works. Each task gets a git worktree and an agent. Here's how the pieces line up.

An agent working in a task's terminal, with the diff of its changes and a note for it beside

Why Ouijit

The agent runs as its own CLI in a terminal, in the task's worktree, so Claude Code, Codex, Pi and OpenCode work exactly as they do anywhere else.

Every agent gets the ouijit command. Ask it to split a feature into tasks and it starts them, each with its own agent. It can read the other agents' terminals, open its plan beside itself, link you to the line it changed, and stage review comments for you to send.

A task can run in a sandbox, so an agent with permission checks off is held to its worktree. Ouijit is free, open source, and runs on macOS and Linux.

What maps to what

A hook is a command the project runs when a task changes status. The start hook runs in the new worktree with the task's prompt in $OUIJIT_TASK_DESCRIPTION, and the done hook runs when the task is marked done. Both live under Project Settings → Lifecycle Hooks.

ConductorOuijit
ProjectProject
WorkspaceTask. Starting it creates the worktree.
Workspace name (a city)Task number, such as T-42. It names the branch and the worktree folder.
Base branchBranch from, in Project Settings → Worktree
Setup scriptStart hook. It runs in the new worktree when the task starts, and usually launches your agent.
Actions and the Run buttonScripts, under Run Commands. Each runs in a runner panel beside the terminal.
Archive scriptDone hook
Files to copyQuick start, the default worktree mode, which copies every gitignored file into the worktree
.conductor/settings.tomlProject Settings in the app. Ouijit keeps them outside the repository.
CONDUCTOR_WORKSPACE_PATHOUIJIT_WORKTREE_PATH
CONDUCTOR_ROOT_PATHOUIJIT_PROJECT_PATH
CONDUCTOR_WORKSPACE_NAMEOUIJIT_TASK_BRANCH
CONDUCTOR_PORTNone. Pick ports in your scripts.
Diff viewerDiff review, with notes the agent reads
conductor:// linksouijit:// links
MCP serverThe ouijit CLI, which every agent in Ouijit already has
Checks, Todos, CheckpointsNone
Conductor CloudNot yet. Ouijit runs on your machine today; hosted workspaces are on the roadmap.

What you give up

Move a project over

  1. Install Ouijit and open the repository as a project.
  2. Under Project Settings → Lifecycle Hooks, put your setup script and your agent command in the start hook, for example npm install && claude "$OUIJIT_TASK_DESCRIPTION".
  3. Add each action under Project Settings → Run Commands.
  4. Under Project Settings → Worktree, set Branch from if your workspaces branched from something other than the checked-out branch, and leave the mode on Quick start if you relied on Files to copy.
  5. Press ⌘N for a task, give it a prompt and start it. The start hook runs in its new worktree.

Start commanding.

View on desktop to download
Read the docs