awml / platforms / linux-vps-cron
Scheduled scripts on a Linux VPS
Scheduled scripts on a Linux virtual private server, started by cron or by systemd timers and running the workflow's own code. This describes a kind of platform, not anyone's server: a real server's description adds the coding agents its owner runs there, and the folders it keeps. The hosting company can reach the server's disks, and the fit has no field for that. Checked on 22 October 2026.
description.yaml
description.yaml is AWML 0.4, as it was pushed. The fit reads it converted to AWML 0.8.
# Scheduled scripts on a Linux virtual private server, started by cron or by systemd timers and
# running the workflow's own code. This describes a kind of platform, not anyone's server: a real
# server's description adds the coding agents its owner runs there, and the folders it keeps. The
# hosting company can reach the server's disks, and the fit has no field for that. Checked on 22
# October 2026.
awml: "0.4"
platform: { id: linux-vps-cron, label: "Scheduled scripts on a Linux VPS" }
# A server is on all the time, apart from reboots for updates and the host's own outages; Hetzner,
# for example, aims for 99.9% availability each month. Plain cron skips a job whose time passed
# while the server was down, and a systemd timer with Persistent=true runs it on the next boot.
# https://www.hetzner.com/legal/cloud-server/
# https://man7.org/linux/man-pages/man5/systemd.timer.5.html
off_for_up_to: PT0S
# Cron and systemd timers run the workflow's own scripts, the same way every time.
# https://man7.org/linux/man-pages/man5/crontab.5.html
# https://man7.org/linux/man-pages/man5/systemd.timer.5.html
steps: code
# No agent runs on a bare server. Add the companies whose coding agents you install there.
agents: []
# A server has ordinary internet access, so its scripts can call any model company's API with a key
# kept on the server.
calls: any
# A server holds its owner's folders. A shared description cannot know their names, so it says
# notes, as AWML's examples do: keep a workflow's contexts under notes, or name your own folders
# when you describe your own server.
# https://github.com/chrismdp/awml/blob/main/SPEC.md#placing-a-workflow-where-it-can-run
holds: [notes]