Routines: work that runs on its own
Describe the job once and put it on a schedule: a persona, a team or a webhook does each step, unattended, every day. Every run is on record with what it did and what it cost, and runaway loops are stopped before they spend.
Most AI tooling gives you a chat window and leaves the hard part to you: remembering to run it, feeding it context, checking what came back, and carrying the result to wherever it needs to go. A routine closes that loop. You describe the job once, set a schedule, and the work happens whether or not anyone opens the app.

A sequence of steps, each with the right worker
A routine is an ordered set of steps, and each step goes to whoever fits it: a persona with a defined method for a focused piece of work, a team of agents for a job with roles (a scout, an analyst, a writer, an editor), or a webhook that hands the result to another system. Steps pass their output forward, so later work builds on earlier work instead of starting cold.

Not only for publishing
The routines on this site write the newsroom, and they also do work nobody reads as an article. Every morning one walks the shop and files what needs attention: products with no photographs, stock about to run out. Four times a day another scouts homes that match a brief and writes up the one worth seeing. A market brief each morning, a competitive scan each week, a monthly summary of your own archive, a weekly report handed to another system: the pattern is the same each time.

Tools, with limits that hold
A step reaches for tools the way a colleague would: browsing the live web, pulling market and property data, building charts, reading and writing files in its workspace, running code in a sandbox, querying your indexed research, calling a tool server you connect over MCP. Each one is granted, not assumed: a research step can read the web without touching your files, and a drafting step can write without being able to publish. The boundary is enforced where the tool runs, not suggested in a prompt.
Every run on record, every token priced

Each run shows its steps, how long each took, which tools were called, what each step produced, and where it failed if it failed, so a broken run points at the step that broke. What a run spent is priced per step, per model and per provider, on your own keys. A scheduled digest first asks the decision model whether there is anything new to write about, and a confident "nothing" skips the run instead of paying for it.
Built not to run away
Loops and long runs are capped: iterations, tool calls per step, and the tokens a run may use. A routine that starts calling itself or chewing through tokens is stopped and recorded, not left to drain an allowance overnight. A fire is skipped while the previous run is still going, and a run interrupted by a restart is billed from what it had already done, never twice.
Jarvis keeps them healthy
Ask Jarvis which routines are failing and why, and it reads their health, their runs and their history before it answers, then tells you what to change: a clearer prompt, a better schedule, a source that works. Anything it would change itself asks you first.