> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cyberun.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Tasks

> One execution of a workflow. Where you find your outputs and how to follow progress.

A **task** is one run of a workflow. You submit it from a workflow's
detail page (or from your AI client over MCP, or from a script);
Cloud schedules it onto one of your team's agents; results land on
the task's own page.

## Find your output

Once a task reaches **completed**, its detail page shows an
**Outputs** panel — one entry per file the workflow produced
(images, video, model files, JSON, anything the agent uploads).

* Click an image to preview it; click the download icon to save.
* Bulk-download isn't there yet — use the [API](/api-reference/introduction)
  or webhooks if you need automation.
* Output links are short-lived signed URLs. If a download returns
  an expired-token error, refresh the task page — Cloud mints a
  fresh URL each time.

Outputs sit in object storage indefinitely on the live deployments;
retention policy is set per deployment. If you can't find an old
task's output, check the **Tasks** list — completed runs stay
there with their results until your team's retention policy
removes them.

## Follow live progress

The task detail page streams progress as the agent runs. Live logs,
step counters, partial previews — whatever the workflow's runtime
emits — appear within a second of being produced.

If your network blocks server-sent events, the page falls back to
polling instead. Either way, you don't have to refresh.

## Lifecycle

Every task moves through these states:

| State            | Meaning                                                                                                      |
| ---------------- | ------------------------------------------------------------------------------------------------------------ |
| **pending**      | Cloud accepted the task. The scheduler hasn't picked it up yet.                                              |
| **waiting**      | The scheduler has it but no eligible agent is available yet.                                                 |
| **provisioning** | An agent is being prepared to take the task.                                                                 |
| **queued**       | An agent has been chosen. Waiting for the agent to acknowledge.                                              |
| **running**      | The agent is executing the workflow.                                                                         |
| **completed**    | Finished cleanly. Outputs available.                                                                         |
| **failed**       | Errored, timed out, or the agent disconnected. The detail page shows what went wrong and the last log lines. |
| **cancelled**    | Cancelled before reaching a terminal state.                                                                  |

`completed`, `failed`, and `cancelled` are terminal — the task
won't move past them.

## Cancel a task

* **One task**: open the task detail page, click **Cancel**.
* **Several**: in the **Tasks** list, multi-select rows and use
  the bulk-actions bar.

Cancelling a running task asks the agent to stop; the runtime ends
cleanly and any artifacts already produced still upload. Cancelling
a queued task is instant — nothing's running yet.

## Run it again

Per-task re-run is in development. For now, to run the same workflow again,
open the workflow's detail page and click **Run** — the run dialog
remembers your last-run parameters, so you start from where you
left off. Each run creates a new task; earlier tasks stay in the
**Tasks** list as history.

## Drive it from code or an AI client

* **Code**: see [Generate an API key](/cloud/guides/api-key) for
  the REST runtime endpoints.
* **AI client (Claude Code, Cursor, …)**: see
  [Connect via MCP](/cloud/guides/connect-mcp).
* **Notifications**: subscribe to
  [webhooks](/cloud/guides/webhooks) so your backend reacts when
  tasks finish, without polling.

## Related

* [Workflows](/cloud/concepts/workflows) — the templates tasks
  are based on.
* [Agents](/cloud/concepts/agents) — what executes the task.
* [Notifications](/cloud/concepts/notifications) — in-app
  notifications for task outcomes.
