Skip to content

Activity and Job YAML

schemaVersion: 2
kind: Activity
metadata:
name: example_activity
spec:
type: shell
description: Run an allowlisted shell command.
input_schema_json:
type: object
properties: {}
output_schema_json:
type: object
properties:
status:
type: string
TypeRequired fieldsv1 status
agent_loopinstruction, optional tools, provider, backend, model, max_iterations, wall_clock_timeout_secondsSupported. When backend: is omitted the schema default is http; v1 only supports backend: cli, so pin it explicitly (in YAML, via --backend cli, ORBIT_BACKEND=cli, or [runtime] backend = "cli"). backend: http is preview-only.
groundhoginstruction, optional tools, provider, model, max_iterations, attempt_budget_defaultNot in v1 release surface — depends on the HTTP transport.
deterministicaction, optional configSupported.
shellprogram, allowed_programs, optional args, timeout_seconds, expected_exit_codesSupported.
schemaVersion: 2
kind: Job
metadata:
name: example_job
spec:
state: enabled
max_active_runs: 1
kind: workflow
steps:
- id: run_echo
target: activity:shell_reference

Reference an activity:

- id: review
target: activity:agent_review_diff

Inline a full activity spec:

- id: echo
spec:
type: shell
program: echo
args: [hello]
allowed_programs: [echo]

Run branches in parallel:

- id: parallel_review
parallel:
join: { mode: all }
branches:
- id: branch_a
target: activity:review_a
- id: branch_b
target: activity:review_b

Each step may include when and retry.

retry:
max_attempts: 3
initial_backoff_ms: 500
backoff_cap_ms: 5000
backoff_strategy: exponential