> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asteragents.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Manage Scheduled Tasks Tool

> Let agents create, inspect, edit, and delete scheduled tasks during conversations

## What it does

The Manage Scheduled Tasks tool lets agents run the full lifecycle of a recurring task on
behalf of a user, mid-conversation. Instead of going to Control Hub, a user can say "send me
a daily report at 9 AM" and the agent creates it — then later ask "what's scheduled?",
"push that to 10 AM", or "turn it off" and the agent handles those too.

Tasks created this way run on the **current agent**, sending the stored prompt on the
configured schedule.

## Actions

The tool takes an `action` and the parameters that action needs.

| Action   | What it does                                                       |
| -------- | ------------------------------------------------------------------ |
| `create` | Schedules a new task                                               |
| `list`   | Returns task summaries, optionally filtered                        |
| `get`    | Returns one task with its full prompt and recent execution history |
| `update` | Edits fields on an existing task                                   |
| `delete` | Soft-deletes a task                                                |

`get` returns each run's link to its conversation, so the user can open a past report and
follow up on it.

## Parameters

| Parameter        | Type    | Required                        | Description                                                                                                                 |
| ---------------- | ------- | ------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `action`         | string  | Yes                             | One of `create`, `list`, `get`, `update`, `delete`                                                                          |
| `taskId`         | integer | For `get` / `update` / `delete` | The scheduled task ID                                                                                                       |
| `name`           | string  | For `create`                    | A descriptive name. Optional on `update`                                                                                    |
| `description`    | string  | No                              | Human-readable note about what the task does                                                                                |
| `prompt`         | string  | For `create`                    | The complete message sent to the agent on each run. Must be self-contained. On `update`, fully replaces the existing prompt |
| `schedule`       | string  | For `create`                    | Cron expression in the user's local timezone (e.g. `0 9 * * *` = 9 AM daily). Converted to UTC for execution                |
| `enabled`        | boolean | No                              | `update` only — `true` to enable, `false` to pause                                                                          |
| `nameFilter`     | string  | No                              | `list` only — case-insensitive partial match on task name                                                                   |
| `enabledFilter`  | boolean | No                              | `list` only — when `true`, return only enabled tasks                                                                        |
| `executionLimit` | integer | No                              | `get` only — how many recent executions to include (default 10, max 50)                                                     |

## Common use cases

### Daily digest emails

*"Send me a daily summary of new candidates in the knowledge base every evening at 6 PM"*

The agent calls `create` with a `0 18 * * *` schedule and a prompt that searches the KB and
emails the results.

### Recurring reports

*"Every Monday morning, pull last week's sales data and email a summary to the team"*

A weekly task that queries databases and generates reports.

### Reviewing what's already scheduled

*"What do I have running?"* → `list`

*"Show me what the Monday report actually does and how the last few runs went"* → `get`

### Adjusting an existing task

*"Move the daily digest to 7 AM"* → `update` with a new `schedule`

*"Pause the ticket monitor while I'm out"* → `update` with `enabled: false`

## Best practices

* **Prompts must be self-contained**: The agent only receives the prompt text on each run — no conversation history from when the task was created
* **Be specific in prompts**: Include all context, recipients, formats, and conditions directly in the prompt
* **Include "no data" handling**: Tell the agent what to do when there's nothing to report (e.g., "If no new items, send a brief confirmation email")
* **Pause rather than delete** when a task is only temporarily unwanted — `update` with `enabled: false` keeps the prompt and history

## Managing created tasks

Tasks created by this tool also appear in **Control Hub** → **Scheduled Tasks** where you can:

* Edit the schedule or prompt
* Enable/disable the task
* View execution history
* Run the task on demand
* Delete the task

See [Scheduled Tasks](/features/scheduled-tasks) for full management details.

## Related tools

* [Send Email](/tools/send_email) - Often used together — scheduled tasks generate reports and email them
* [Search Knowledge Base](/tools/search_knowledge_base) - Common in scheduled tasks that monitor for new documents
* [Call Agent](/tools/call_agent) - Scheduled tasks can trigger multi-agent workflows
