Why Agent37
- Omnara’s tools, baked in.
agent37-omnarais Ubuntu 24.04 with the same development tools as Omnara’s default machine environment, so a pool only needs an API key. For your own stack, turn a public registry image into a template with one API call, or build one from a Dockerfile in Agent37’s cloud with no local Docker. - A URL for every port. A dev server or app an agent starts gets its own HTTPS address at
https://{instance}-{port}.agent37.app, and a signed link opens it in your browser. - SSH into any machine. Add your public key once, then use
ssh,scp, or VS Code Remote to watch an agent work or pick up where it left off. See SSH. - Pay for the minutes you use. Machines bill by the minute from a prepaid balance, and auto top-up refills it before it runs out.
Set up an Agent37 pool
1
Create an API key
In the Agent37 dashboard, create an API key and store it as an org-owned secret in Omnara. Machines run and bill in that key’s workspace, so add funds before you create the pool: a workspace that has never been topped up runs one small machine.
2
Choose a template
Leave the template empty to use
agent37-omnara: Ubuntu 24.04 as root with the default machine environment preinstalled: Python, Node.js, Go, PostgreSQL, Redis, gh, rg, PDF tools, and Playwright with headless Chromium.For your own tools, use a template in your Agent37 workspace. Register a public linux/amd64 image that meets the custom image requirements with one call:- Omnara starts the daemon with a command on the running machine, so the image’s main process only has to keep running. The
entrypointabove does that for an image whose own command exits, and cleans up the processes agents leave behind. - Agents run commands as the image’s default user, so pick an image that runs as root if they should install packages.
- Machines are containers, so pick an image that doesn’t need Docker or systemd.
- To build one from a Dockerfile, use
npx agent37 templates build. See Agent37 templates.
3
Create the pool
On the Machines page, click New pool and choose Agent37. Enter the credential, the template (or leave it empty), the CPU and memory, and capacity limits.Each machine is 2 vCPU with 4 GB of memory, or 4 vCPU with 8, 16, or 32 GB. Only environment variables whose names use letters, digits, and underscores, and don’t start with a digit, reach the machine.To use the API instead, call Create a pool with the fields under API fields.
API fields
When you create a pool through the API, send these fields in the Create a pool request.provider_config applies to the whole pool, and default_machine_provider_options sets the options for each new machine, which project grants and agent configs can override. For example:
templateis optional. Omit it to useagent37-omnara, or set the name of a template in your Agent37 workspace. Add@<revision>, such asomnara-machine@2, to pin a published revision.- CPU and memory must be one of Agent37’s sizes: 2 vCPU with 4096 MB, or 4 vCPU with 8192, 16384, or 32768 MB.
- Optional:
startup_scriptindefault_machine_provider_optionsruns on each new machine before the daemon starts, andallowed_templatesinprovider_configis an allowlist.