Skip to main content
A task is a unit of work on the kanban board. It can be created in-app or synced from GitHub, Jira, or Slack.

Identity

  • Internal id: tsk_*
  • Display id: human-facing label such as TRA-1
  • Optional source_provider: github, jira, or slack

Three dimensions

Full tables: Task states.

Status (board lane)

backlog · awaiting_user · waiting_for_agent · in_progress · interrupted · in_review · completed · errored

Phase

idle · planning · implementing · testing · opening_pr · done

Checkpoint (resume barrier)

Pipeline

When claimed:
  1. Plan (may ask clarifying questions → awaiting_user)
  2. Implement on a durable ACP session in a worktree
  3. Verify (tests; retries then errored if exhausted)
  4. Address pending review comments if any
  5. Draft summary
  6. Open / update PR → park in_review
  7. On merge (or notify with no host) → completed

Board projection

The mobile board folds several statuses into fewer columns. Expect Backlog to include parked states such as awaiting_user, waiting_for_agent, and interrupted, plus In Progress, In Review, Done, and Failed.

Task vs session

The task owns board state and checkpoints. The session owns the live agent process and stream. Chat UI follows the session; the board follows the task.