Skip to content

Tasks, Runs & Scheduling

A task describes an outcome; a run is one attempt at it. A task can run many times — manually re-run, on a schedule, or re-triggered by an automation — and every run keeps its own full record.

Anatomy of a task

  • Title and description — the work itself. The description is the agent's brief: state the deliverable, the sources, and the constraints.
  • Priority — for your own triage in the task list.
  • Template — a task can be created from a template that pre-fills the description and settings.
  • Tool policy — advanced: allow/block specific tools for this task.

Run lifecycle

Every run moves through a state machine:

StatusMeaning
queuedAccepted, waiting for a worker
runningThe agent is executing
waiting_approvalPaused — a gated action needs your approval
waiting_inputPaused — the agent asked you a question
completed / failed / cancelledTerminal states

The two waiting states are fully resumable: the agent's state is snapshotted, and answering resumes execution exactly where it stopped — minutes or days later. A run can also suspend itself waiting for an external event or for another task.

What a run records

Open any run from the task's run selector to see:

  • Plan — the agent's todo list as it evolved
  • Activity — the full step-by-step log: tool calls, outputs, decisions
  • Output files & artifacts — deliverables produced by that run
  • Pending approvals / questions — anything still waiting on you
  • Token usage — cost transparency per run
  • Memory — facts the run saved for future work

Scheduling

Tasks support two scheduling modes, set on the task:

  • One-time — run at a specific date and time ("prepare the board pack Friday 07:00").
  • Recurring (cron) — run on a cron expression, with UI presets for common cadences (daily, weekly, monthly).

Scheduled runs behave exactly like manual ones — including pausing for approvals and emailing you when they finish or fail — so a recurring task is a genuinely unattended operation with human checkpoints only where you configured them.

text
Every Monday 08:00 — pull last week's numbers from the analytics DB,
compare with the previous week, and email the summary to the team.

Subtasks

For large work, the agent can propose subtasks (create subtask) — creating one is approval-gated by default, and whether subtasks start automatically is controlled by the project's Auto-run child tasks setting. Subtasks appear nested under the parent in the task list.

Typical use: a migration across many repositories becomes one parent task plus one subtask per repository, each with its own run history.

Task coordination

Tasks in a project can see and wait for each other:

  • List project tasks — the agent can check what else is running or done in the project.
  • Wait for task — a run can suspend until another task reaches a terminal state, then continue with its outcome.

This turns a project into a small orchestration space: "generate the three sections in parallel subtasks, wait for all of them, then assemble the final document."

Templates

The template gallery ships ready-made task definitions you can add to a project and run as-is or adapt — including:

  • GitHub PR review — review a pull request and post structured feedback
  • Incident triage — collect context and produce a first-response summary
  • Postmortem draft — turn incident notes into a structured postmortem
  • Recurring competitor watch — track competitor sites and report only what changed
  • Data quality audit — profile datasets for nulls, duplicates, and schema drift
  • Release readiness check — open PRs, critical issues, changelog draft
  • Sprint risk review — flag at-risk items from your project tracker
  • Security exposure triage — match advisories against your dependencies
  • Marketing content mailer — draft and send a recurring content email

Templates matter most together with Automations: a trigger creates a task from a template, filling its variables from the webhook payload.

Studio · Pulse — Cognipeer product documentation