Skip to main content

What Are Executors?

Executors are the AI code tools that Draft uses to implement tickets. When a ticket moves to EXECUTING, Draft spawns the configured executor CLI in the ticket’s isolated worktree.

Supported Executors

ExecutorCLIModeStatus
Claude CodeclaudeHeadlessRecommended
Cursor AgentcursorHeadlessSupported
Other ExecutorsVariousVariousCommunity

How Execution Works

  1. Draft creates an isolated git worktree for the ticket
  2. The executor CLI is spawned with the ticket’s instructions as a prompt
  3. The agent reads the codebase, makes changes, and exits
  4. Draft checks the git diff in the worktree

Post-Execution States

OutcomeTicket StateReason
Success + changes detectedVERIFYINGRuns verification pipeline
Success + no changesBLOCKED”No changes produced”
CLI failureBLOCKEDError message from CLI

Configuration

Set the executor in draft.yaml:
executor_config:
  executor_type: CLAUDE
Draft auto-detects available CLIs on your system. If multiple executors are installed, the configured one takes precedence.

Executor Detection

Draft checks for CLIs in your PATH:
# Check which executors Draft can find
which claude    # Claude Code CLI
which cursor    # Cursor CLI
If the configured executor isn’t found, the job will fail with a clear error message.