Creating Agents
What is an Agent?
An agent is an automated task that runs on a schedule or in response to events. Each agent has a type that defines what it does, a configuration that controls its behavior, and a schedule that determines when it runs. Agents use LLMs to process data and generate intelligent outputs like briefings, alerts, and summaries.
Agent Types
Weather Check
Monitors weather conditions for a given location and sends alerts.
- Requirements: None — uses free Open-Meteo API
- Configuration: Location (city name or ZIP code)
- Output: Weather forecast with temperature, conditions, and extreme weather alerts
Morning Briefing
Delivers a personalized daily summary combining calendar events with AI analysis.
- Requirements: LLM API key + calendar connection
- Configuration: Calendar selection, briefing style (concise/detailed), briefing time
- Output: Agenda summary, meeting prep notes, and contextual insights
Support Triage
Classifies and prioritizes incoming support tickets using your LLM.
- Requirements: LLM API key
- Configuration: Priority rules, auto-notify settings, escalation criteria
- Output: Classified tickets with priority levels, suggested responses, and escalation flags
Freeform
Custom agent with your own LLM instructions, triggered manually, on a schedule, or via webhook.
- Requirements: LLM API key
- Configuration: LLM provider, instructions, trigger type (manual / scheduled / webhook)
- Actions: Calendar, Email, Weather, Trigger Agent, and external MCP server tools
- Output: Varies based on instructions
Webhook-triggered Freeform agents can receive data from external services. See Inbound Webhooks for setup instructions.
Creating an Agent
- Navigate to the Agents page
- Click New Agent and select an agent type
- Give your agent a name and configure its settings
- Set a schedule (choose a preset or enter a custom cron expression)
- Click Create to save and activate your agent
Scheduling
Agents run on cron-based schedules powered by Oban . You can choose from preset schedules:
- Every morning — 7:00 AM daily
- Every hour — on the hour
- Every 15 minutes — frequent checks
- Custom — any valid cron expression
Freeform agents support three trigger modes: manual, cron schedule, and webhook.
By default, scheduled runs are skipped if the agent is already running. Enable Allow overlapping runs in the agent's schedule settings to allow concurrent execution. When a scheduled run is blocked by overlap prevention, it is recorded with a skipped status.
Failure Handling
If an agent run fails, Oban automatically retries with exponential backoff. After 5 consecutive failures, the agent is automatically disabled and you receive a notification.
Stall Detection
A stall detector runs every 5 minutes and checks for agent runs that have had no activity for 10 minutes. Stalled runs are automatically marked as failed, which counts toward the consecutive failure limit.
Agent Lifecycle
Agents move through six states:
- Draft — saved but not yet activated; will not run on schedule
- Idle — active and waiting for the next scheduled run
- Running — currently executing a task
- Paused — temporarily stopped by the user; can be resumed at any time
- Disabled — auto-disabled after 5 consecutive failures; must be re-enabled to run again
- Archived — terminal state; the agent is permanently deactivated and cannot be re-enabled
Shared Memory
Agents can share data through a shared memory system — an org-scoped key-value store organized by namespaces. This lets agents remember information across runs and share context with other agents.
How It Works
-
Configure Memory Namespaces on a Freeform agent
(e.g.,
notes, meetings, contacts) -
The agent gets three tools:
read_memory,write_memory, andlist_memories - Any agent in the same organization can read/write to shared namespaces
- Memory is also injected into the system prompt so the LLM has context from the start
Example
Agent A (Morning Briefing) writes meeting summaries to the meetings
namespace. Agent B (Freeform) is configured
with memory_namespaces: ["meetings"]
and can reference
those summaries when asked about upcoming meetings.
Expiration
Memory entries can have an optional TTL. Expired entries are automatically cleaned up daily.
Inter-Agent Communication
Freeform agents can trigger other agents to run, enabling multi-agent workflows and task delegation.
Setup
- Enable the Trigger Agent action on a Freeform agent
-
The agent gets a
trigger_agenttool it can use during its run - It can trigger any other agent in the same organization by name
- The triggered agent receives optional context and runs independently
Run Lineage
When Agent A triggers Agent B, the run history tracks the relationship. Agent B's run shows Agent A's run as its parent run, giving full visibility into cross-agent execution chains.
Loop Prevention
Signal chains are limited to a maximum depth of 5 hops to prevent infinite loops. If Agent A triggers Agent B, which triggers Agent A again, the chain will stop at the depth limit with a warning.