Skip to main content

Overview

The most valuable agent work is often proactive. With automations enabled (the default), a deployment runs work on a schedule with no human triggering it — and no cron infrastructure for you to operate. There are two ways automations get created:
Created byHow
Your customerConversationally — “every week, look at our top-performing video and make five variations.” The agent sets up the schedule itself
Your productThe Automations API — provision defaults at onboarding, or back an automations dashboard

Create an automation

Customers just ask the agent in chat. From your product, use the API:
const automation = await herm.automations.create("dep_7xK9s2", {
  name: "Weekly video variations",
  schedule: "every Monday at 9am",
  instructions:
    "Look at our top-performing influencer video from last week and make five variations.",
});
schedule accepts a cron expression (UTC) or natural language. See the Automations API for the full field reference.

How scheduled runs behave

Each triggered run is a normal run with the same guarantees as an interactive one:
GuaranteeBehavior
DurabilityA run that hits a transient failure resumes or retries — it doesn’t silently fail at 3am
IsolationRuns execute inside the customer’s own container, with their memory and files
SteeringA run reaching a consequential action pauses and surfaces a steering_request like any other
VisibilityRuns appear on the SSE stream and in the automation’s run history
Scheduled runs build on the deployment’s history: the weekly video agent remembers what it produced last week and doesn’t repeat itself.

Manage automations

Customers list, modify, or pause automations by asking the agent — “what’s scheduled?”, “pause the weekly report”, “make it daily instead.” Changes take effect immediately. From your product:
// Dashboard listing with run history
const { data } = await herm.automations.list("dep_7xK9s2");

// Pause toggle
await herm.automations.update("dep_7xK9s2", "auto_5cT2k9", { enabled: false });

// "Run now" button
const { run_id } = await herm.automations.trigger("dep_7xK9s2", "auto_5cT2k9");

Common patterns

  • Sleep-time work: prep that finishes before the customer shows up — overnight research, morning briefings, drafts waiting for review.
  • Monitoring loops: periodic checks that act or escalate — watching ad performance, flagging anomalies, sweeping for policy issues.
  • Content cadences: recurring creative production — weekly variations, monthly recaps, scheduled social posts (gated by steering).