> For the complete documentation index, see [llms.txt](https://docs.ebrain.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ebrain.ai/agents-autonomous/scheduling-and-runs.md).

# Scheduling, running, and results

Once you've built an agent, this page covers the lifecycle: when it runs, how to trigger it yourself, how to pause it, and where to find what it produced. If you haven't created one yet, start with [Building an agent](/agents-autonomous/building-an-agent.md).

## Schedule it or run it on demand

Every agent either runs **on a schedule** or stays **on demand** (no schedule, you trigger it manually whenever you need it).

You set the schedule with the **Repeats** pill, which offers these ready-made presets:

| Preset                  | When it runs                         |
| ----------------------- | ------------------------------------ |
| Every day at 8:00       | Daily                                |
| Weekdays at 7:30        | Monday to Friday                     |
| Fridays at 9:00         | Once a week                          |
| Mondays at 9:00         | Once a week                          |
| Every 6 hours           | On an interval                       |
| Every hour              | On an interval                       |
| No schedule (on-demand) | Never automatic, you run it yourself |

### Custom cadences

The presets cover the common cases, but a schedule actually supports four shapes:

* **Daily** at a chosen time
* **Weekly** on chosen day(s) of the week at a chosen time
* **Monthly** on a chosen day of the month at a chosen time
* **Interval** such as "every N minutes, hours, or days"

If you want something the presets don't list (a specific weekday and time, a monthly run, or an unusual interval), the easiest route is to **ask Tim**, for example "run this every weekday at 6pm." Tim proposes the schedule as a confirmation card that you approve.

{% hint style="info" %}
Times use a timezone, set to **Europe/Amsterdam** by default. The run may start slightly after the scheduled minute: scheduled times get a small spread (a few seconds up to roughly a minute and a half) so that not everything fires at the exact same instant.
{% endhint %}

A few things worth knowing about schedules:

* An agent can have **at most one schedule** at a time.
* When you change only the timing of an existing schedule, its paused or active state is preserved. Editing the time won't silently switch a paused agent back on.

## Run now

You don't have to wait for the next scheduled time. **Run now** is available from the agent's **"..." menu** in the list, and as a button on the agent detail page.

{% stepper %}
{% step %}

## Trigger the run

Choose **Run now**. It queues the agent to run right away, ahead of any scheduled runs in line, and skips the small scheduling spread so it starts immediately.
{% endstep %}

{% step %}

## Watch it work

The agent shows a live **Running** badge with a spinner in the list, in the detail header, and in the status rail. A toast confirms **"Running ..."** while it works.
{% endstep %}

{% step %}

## Get the result

On success you'll see **"Run complete - the result is in Chats."** On failure you'll see **"Run failed - check the agent's runs."** Either way, open the run history to see the details.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
**Double-run protection:** if a manual run is already in progress, pressing Run again does nothing harmful, you'll just see **"This agent is already running."** A scheduled run in progress does not block you from also pressing Run now.
{% endhint %}

## Pause and resume

A **scheduled** agent can be **Paused** so it stops firing on its schedule, and later **Resumed**. Use the Pause/Resume button on the detail page or the **"..." menu**.

The status badge tells you where the agent stands:

* **Active** - scheduled and running on its cadence
* **Paused** - scheduled, but switched off for now
* **On demand** - no schedule, so you can only run it manually
* **Running** - a run is in progress right now

An on-demand agent has no Pause/Resume control, because there's no schedule to pause. And pausing only stops the *scheduled* runs, you can still use **Run now** on a paused agent whenever you want.

## Run history and results

Open an agent to see its detail page. The **Previous runs** list shows recent runs, newest first. Each row gives you:

* A colored status dot: green for success, red for failed, amber for running, grey for other
* The run's date and time
* A short **summary** of what happened
* Any **delivery** status chips (see below)

If a run produced a conversation, the row is clickable. **View chat** opens the full result conversation in Chats, where you can read everything the agent produced and continue with Tim from there. Before an agent has ever fired, you'll see **"No runs yet - this agent hasn't fired,"** along with the next scheduled time if one exists.

The detail rail on the right summarizes the essentials at a glance: **Status**, **Next run** (or "Paused" / "No schedule"), **Last ran** ("Never" if it hasn't run yet), **Target**, and **Repeats** (the schedule).

{% hint style="info" %}
Every run posts a **fresh conversation** into Chats, tagged as an agent run so you can spot it in your chat list. You also get a bell notification when a run succeeds or fails, and a running-agents indicator keeps you posted even if you navigate away.
{% endhint %}

## Where results are delivered

A run's result is always posted somewhere, and you choose how widely it goes when you set up the agent's **Deliver to** channels.

{% tabs %}
{% tab title="Chat (always on)" %}
The result is **always** posted into Chats as a new conversation, badged as an agent run, and you get an in-app bell notification with a short summary on success or failure. This baseline can't be turned off, which is why the toast confirms "the result is in Chats."
{% endtab %}

{% tab title="WhatsApp (optional)" %}
Have the result sent to you on WhatsApp as well. This requires your WhatsApp to be **linked in Settings**, otherwise the channel shows but stays disabled with the hint **"Link WhatsApp in Settings to use this."**

Delivery timing follows WhatsApp's rules: results arrive instantly while your WhatsApp chat with Tim is recent (within 24 hours). If the chat has gone quiet, you may get one short nudge and the latest result is held until you reply. Results held longer than 7 days expire, and only the latest queued result per agent is kept so you aren't flooded.

See [Using eBrain on WhatsApp](/ebrain-on-whatsapp/getting-started.md) to link your number.
{% endtab %}

{% tab title="Email (optional)" %}
The result is emailed to your own account email address, available wherever email sending is configured.
{% endtab %}
{% endtabs %}

You can pick more than one channel, for example chat plus WhatsApp plus email. WhatsApp and email are off by default, so a new agent delivers to chat only.

### Per-run delivery status

In the run history, small chips show how each delivery went:

| Chip            | Meaning                                                                       |
| --------------- | ----------------------------------------------------------------------------- |
| **delivered**   | The result reached the channel.                                               |
| **queued**      | Held behind WhatsApp's 24-hour window until you reply.                        |
| **skipped**     | A benign non-delivery.                                                        |
| **unavailable** | Something drifted (for example, WhatsApp got unlinked) and you should fix it. |
| **failed**      | Delivery didn't succeed.                                                      |

## What an agent run will and won't do

An agent runs unattended, so there's no one present to answer a question or approve a step mid-run. Because of that, a run gathers and analyzes information (your mail, calendar, tasks, and saved data) and produces an output: a briefing, a summary, a draft, or a list of what needs action.

{% hint style="warning" %}
Agents produce results for you to **review and act on**. They do not autonomously send email or create calendar events on your own behalf during a run. The only "writing" a run does is deterministic and opt-in: posting its result into a chat, optionally creating a result task in a project (if you turn that on), and delivering the result to your chosen channels.
{% endhint %}

This is the key difference from a live chat with Tim, where you're present and Tim asks for your approval before any write action. To learn how that approval step works in a normal conversation, see [Approval flows explained](/chatting-with-tim/approval-flows.md).

## Related pages

<table data-view="cards"><thead><tr><th>Topic</th><th data-card-target data-type="content-ref">Link</th></tr></thead><tbody><tr><td>Create and configure an agent</td><td><a href="/pages/GgvpNGdjSwwyImG7i7cp">/pages/GgvpNGdjSwwyImG7i7cp</a></td></tr><tr><td>What agents are and when to use them</td><td><a href="/pages/2FNhAcz3vH2jDMbaMGkQ">/pages/2FNhAcz3vH2jDMbaMGkQ</a></td></tr><tr><td>Link WhatsApp for delivery</td><td><a href="/pages/ElvdX9NZxkxrs7FDTNUt">/pages/ElvdX9NZxkxrs7FDTNUt</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ebrain.ai/agents-autonomous/scheduling-and-runs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
