ArxDeck
Agents & automations

Task templates & runs

Multi-step automated jobs on tickets — task templates, runs, conditions, and control flow.

Task templates & runs

Task templates are multi-step automation recipes defined in the workflow editor. When a template runs, ArxDeck creates an automated job (a task run) that executes each step in order. You see active and recent jobs on ticket detail under Active automated jobs.

Task templates power:

  • Run task workflow automations
  • Nested Run task steps inside other templates
  • Scheduled tasks and inbound webhook tasks (same step model, different hosts)

ArxDeck Helper can propose task templates and workflow automations through project chat. Describe the pipeline you want and approve proposals in the Proposals inbox. See ArxDeck Helper.

Task templates

Project admins define templates at Settings → Workflows → [workflow] → Task templates.

Each template is a tree of steps. Leaf steps include:

StepPurpose
Acquire project queueWait for a slot in a workflow queue group
Run agentLaunch a configured agent on the ticket
Release project queueFree the queue slot when work finishes
Change statusMove the ticket to another workflow status
Merge pull requestMerge a linked PR (optional CI gate when GitHub is configured)
Run taskStart a nested template as a child automated job
Emit signalSend a named signal other runs can wait for
Await signalPause until a matching signal arrives (workflow templates only)

Optional stage labels on steps appear in the Active automated jobs panel so you can see where a run is in the pipeline.

Run agent result fields

On workflow templates, scheduled tasks, and ticket-scoped webhook nested actions, each Run agent step can declare optional result fields so the agent returns structured JSON with its final outcome:

  • Field types: text, number, boolean, and enum (with configured choices)
  • Each field can be marked required or optional
  • At launch, the contract is frozen for that run — later task-definition edits do not affect active runs
  • Agents submit values through report_agent_outcome with a data object matching the contract
  • Invalid or incomplete reports are declined; the run stays active until a valid report
  • Later Condition and Switch steps can branch on the declared fields

Direct single-step Run agent automations that do not create a task run do not support result fields.

Insert reference picker

Step configuration fields support # entity references (tickets, docs, knowledge) via the same insert-reference picker used in chat and ticket composers.

How runs start

Common entry points:

  1. Workflow automation — add a Run task action with a taskTemplateId. When the trigger fires, ArxDeck spawns a task run from that template.
  2. Nested Run task — a parent template's Run task step starts a child run. The parent step stays active until the child completes.
  3. Scheduled tasks and webhook tasks — use the same step editor with host-specific palettes (see those docs).

Single-step Run agent automations (without a template) do not create task runs — they launch agents directly on the ticket.

Monitoring and cancelling runs

On ticket detail:

  • Active automated jobs lists running templates with stage, queue wait, and linked agent runs
  • A state popover on each active job shows step progress and stage labels
  • Cancel run stops linked agent runs and releases queue leases (users with ticket edit access)

Human ticket edits are never blocked by active automated jobs — you can always comment and change status while agents or pipelines run.

Changing a ticket's workflow is blocked while automated jobs or executing agent runs are active. Cancel runs first, then change workflow.

Conditions & control flow

Beyond leaf steps, templates support Condition, Switch, and Loop blocks for branching and iteration. These are part of the task template system — not only automation rule filters.

Condition

Evaluates predicate groups (AND/OR, with optional nested subgroups) and runs either a then or else branch.

Switch

Matches a field value against cases (first match wins) with an optional default branch.

Loop

Repeats a body in Conditional mode (continue-while predicate + optional Run at least once) or For N times mode. Loops require a max attempts limit and an on exceed policy (fail_run or continue_after_loop).

Inside a loop body, predicates can reference enclosing loop actions by id for live iteration (1-based; first iteration is 1) and maxAttempts values that update each iteration. Nested loops are addressable by loop action id.

Predicates

Predicates can reference:

SourceExamples
Ticket fieldsStatus, enabled custom fields
Prior step outputsAny completed leaf step's typed output fields
Last step outputThe most recent completed leaf
Webhook fieldsExtracted payload fields (webhook tasks only; ticket fields unavailable until resolve_ticket)

Leaf predicates support positive operators (equals, contains, exists) with an optional Invert toggle. Groups support Invert group to negate the combined result.

Per-branch on failure policies control whether a failed step fails the whole run, skips remaining steps in the branch, or continues.

When a loop's on exceed policy is fail_run, exceeding max attempts fails the entire automated job.

Failed run notifications

Task template runs can notify assignees or configured recipients on failure according to workflow and template settings. Check automation and template configuration for notification hooks.

Signals (brief)

Emit signal and Await signal coordinate runs on the same ticket by name (optional correlation key). Webhook tasks can emit signals after ticket resolution but cannot await them. Workflow templates can both emit and await.

Setup & configuration

  1. Open Settings → Workflows → [workflow] → Task templates.
  2. Create a template with the steps your pipeline needs.
  3. Add queue acquire/release steps when serializing work (see Queues).
  4. Wire a Run task automation or nest templates as needed.
  5. Test on a non-production ticket before enabling on high-volume workflows.