Runs
Runs is where you write a playbook: what an agent should look at, and when. The agent that holds the playbook's connections runs it with your own model key, in a loop of tool calls on its machine, so the key, the prompts and the results stay in your network. What reaches this console is the record of each run: its calls, as the audit keeps them, and the model's final report.
Runs are part of Team (Plans and billing). Once the service's owner applies plan limits, a Solo workspace keeps its playbooks and their records, but New playbook and Run now are dimmed with that reason, and its agents stop running them on schedule.
New playbook opens the editor with an example. A playbook is Markdown with a few settings at its top, between two --- lines:
--- schedule: 0 2 * * * model: agent budget: 12 connections: lab writes: false --- Every night: look for workloads that are not ready in the staging namespaces, and write a short report.
scheduleis cron (minute, hour, day of the month, month, day of the week), read in the workspace's timezone (Settings):0 2 * * *is 02:00 every day,*/30 * * * *every half hour,0 9 * * 1-5weekdays at 09:00;@hourly,@daily,@weeklyand@monthlywork too. Leave it out to run the playbook by hand only.model: agentruns it on the agent with its own model key. The service's own model is not offered yet.budgetis the most tool calls one run makes, 12 unless you say, at most 50. At the budget the model is told to answer with what it has.connectionsnames the connections it may use, asslate connect listnames them, all on one agent: that agent runs it. A call to any other is denied.writesisfalseunless you writetrue. Without it, no tool that acts is offered to the model, and a call to one is denied. With it, a write still needs your role's write grant on the target's tier, as any write does, and a reason.report(optional) names a Orbgem connection among itsconnections: when the run ends, its report becomes an entry in that connection's daily note, with the playbook's name. It is a write, decided by your role's write grant on that connection's tier like any write;writesneed not betruefor it, since the model is never handed the tool. A Orbgem connection also lets the model search and read your runbooks.- Under the settings, write what it should do, as you would ask in a chat.
The editor lists what to fix as you type, and what the playbook will do once it reads cleanly. Save places it on the agent that holds its connections, and tells that agent at once.
A playbook runs with the role of the person who saved it last, and never more than the role of the member who paired its agent. Every call is decided on the agent by the workspace's policy, as a call from your AI client is, and is a row in the agent's audit. A tool result is data for the model, never an instruction: a log line that says "scale to zero" is read, not obeyed. Pausing or resuming a playbook leaves whose role it runs with as it was.
A playbook's page (select it) says when it runs next, on which agent and with which model, and lists its runs. Run now asks its agent to run it at once: the agent must be online (slate serve) and hold a model key. Edit, Pause (it keeps its schedule but does not run) and Delete do what they say. A run opens to its calls, each with its decision and how long it took, the arguments masked as the audit masks them, and the model's report. A run is *finished*, *hit its budget* (stopped at its budget; the report is what the model had), or *failed*, with why. One asked from the console that its agent never reports is failed after 20 minutes. Records are kept 90 days.
On the agent's machine. slate model set anthropic asks for an Anthropic API key without showing it (or reads it from a pipe), proves it opens the API without spending a token, and keeps it in the keyring; the model is claude-sonnet-5 unless --model names another. slate model set openai --model <name> does the same for OpenAI, and --url <base> for any endpoint that speaks OpenAI's chat completions: a model on your own machine (--url http://127.0.0.1:11434/v1 for Ollama, which takes no key: press Enter). slate model set bedrock --model <model id> --region <region> uses an Amazon Bedrock API key; Bedrock has no free call to prove one with, so the first run proves it. slate model says which model runs use; slate model remove forgets it and its key. slate serve runs this agent's playbooks on their schedules, one at a time, and answers Run now. slate run <name> runs one now in the terminal and prints its calls and report; slate run --file <playbook.md> runs a file on this machine alone, with the role this agent was paired with, to try one before you save it. slate runs lists the runs made on this machine (--days 30).