Schedule and usage
A job is a prompt, a working directory under /data, which assistant runs it, and when. An agent is a job started on a Machine that lives there.
Jobs
| time | a cron expression on the box clock (UTC), or manual: blank, and the job runs only on Run now |
| prompt | what to do, as a fresh headless session of the chosen assistant, inside the same fence |
| working dir | a directory under /data; the job's files and log land there |
| needs | the secrets the job must have, by their jobs.* names |
| its own cap | a monthly spend limit for this job, on top of the Machine's |
One job runs at a time; a second Run now is refused. Each run writes its own log (Log on the row, or schedule-<job> under System) and, with pipe on, DMs the owner at start and end. Rows can be paused, resumed, edited and deleted. Image updates hold while a job runs.
$ pipeos schedule ls $ pipeos schedule add nightly --cron "0 3 * * *" --prompt "…" --needs jobs.deploy_key $ pipeos schedule run nightly $ pipeos schedule log nightly
What a job needs from the vault
A secret named jobs.something reaches a job as SOMETHING. Before a run, the first missing needs name is asked for through pipeos secrets request and the run waits; the row says why, and one DM goes out per ask. You approve once, on a Machine that holds the secret; a cron job then runs at its next match, a manual job the moment the copy arrives. A denied ask is not repeated for a day. See secrets.
Usage
The Usage view is what this Machine spent on its assistant: today, 7 days, 30 days, this month; per day; and who spent it: the assistant session, the dashboard chat, each job, each pipe peer. Figures are estimates from published rates; the provider's bill is authoritative.
$ pipeos usage $ pipeos usage totals $ pipeos usage cap 40 # this Machine, per month $ pipeos usage cap --agent nightly 5 $ pipeos usage cap --cluster 100
Caps at every level
An admin can cap the Machine, the cluster, and any single job or agent, per month. At 80% the owner gets one DM. At 100%, jobs under the cap do not start until it is raised or the month turns; a session you are sitting in is warned, not cut off. The most restrictive cap wins, and every pause names the cap that caused it: on the Usage view, in the DM, in the job's log, in pipeos usage.
Agents on a cluster
An agent is started on a chosen member, or the idlest, and lives there with its work and its secrets: the cluster.