Skip to content

Jobs

Every agent run is a job: an embedded runner turn, a cron lane task, or a turn started by another agent. Jobs are exposed by the gateway API and reached with kurahi api; there is no separate kurahi jobs command.

Terminal window
kurahi api listJobs # newest first
kurahi api listJobs -p agent=alice -p status=running -p limit=20
kurahi api getJob -p id=<job id>
kurahi api cancelJob -p id=<job id>
Operation Route Auth
listJobs GET /api/jobs gateway token or session admin
getJob GET /api/jobs/{id} gateway token or session admin
cancelJob POST /api/jobs/{id}/cancel gateway token or session admin

listJobs filters: agent (agent id), status, limit.

queued, running, succeeded, failed, cancelled, loop_stopped (the loop guard stopped it), denied (a policy refused it before it started).

cancelJob aborts the underlying agent run and writes job.cancelled to the audit log. A job that already finished answers ok: false with reason: already_finished; an unknown id answers not_found.

A job bridged from another agent carries its parent’s job id, so a cancelled parent is visible from its children.