Write an Activity
Start with the Header
Section titled “Start with the Header”Every activity uses this envelope:
schemaVersion: 2kind: Activitymetadata: name: shell_referencespec: type: shell description: Run a narrow shell command.Add Schemas
Section titled “Add Schemas”Use JSON Schema-shaped input and output declarations.
input_schema_json: type: object properties: {}output_schema_json: type: object properties: status: type: stringChoose a Type
Section titled “Choose a Type”For a shell activity, declare a program allowlist:
program: echoargs: [hello, v2]allowed_programs: [echo]timeout_seconds: 10expected_exit_codes: [0]For an agent loop, declare instruction, tools, provider, and backend. v1 supports backend: cli only:
type: agent_loopinstruction: Review the current diff and report risks.tools: - orbit.task.show - orbit.graph.searchprovider: claudebackend: climax_iterations: 25backend: http is wired in code for v2 but is not part of the v1 release surface — do not pin it in shipped activity assets.
Use It
Section titled “Use It”orbit activity listorbit job run path/to/job.yaml --input key=value