Runners

Choose which agent Craig launches in managed TUI sessions.

Craig supports Claude Code, Codex, and Cursor. Each one needs to be installed and on your PATH. When you create a task or add an agent tab, Craig drops the runner into that task's worktree and starts it in a managed PTY. The task prompt is stored as metadata — Craig doesn't paste it into the runner for you.

Experimental Pi runner

Craig can also launch the Pi coding agent. Install and authenticate Pi, then enable Pi coding agent runner under Options > Feature Previews. The preview is workspace-local and Pi remains unavailable for new tasks and agent tabs while it is off.

{
  "previews": {
    "piRunner": true
  }
}

Selecting a runner

Pick your runner while creating a task or adding an agent tab in the TUI. From the command line:

craig task new --repo <repo-id> --runner claude "your task prompt"

Task creation requires either --repo <repo-id> or --workspace <workspace-id>. Use craig repo list or craig workspace list to find the target id.

Enabling / disabling runners

Configure which runners are available in .craig/config.json:

{
  "runners": {
    "codex":  { "enabled": true },
    "cursor": { "enabled": true },
    "claude": { "enabled": false },
    "pi":    { "enabled": true }
  }
}

Custom runner path

If the binary isn't on your PATH, point Craig at it in config. Takes effect on the next session you create.

{
  "runners": {
    "claude": {
      "enabled": true,
      "path": "/usr/local/bin/claude"
    }
  }
}

Cursor workspace trust

Cursor may ask whether to trust each Craig-managed worktree or project bundle. To establish trust once at a common parent, open the Craig workspace's .craig directory in Cursor and approve its prompt. Only do this if you are comfortable allowing Cursor agents to work throughout that local workspace. Craig does not pass Cursor's --trust flag or weaken the runner's safety settings.