Tasks
Schedule or trigger agent work, control unattended tool use, and deliver results across Endstack and connected services.
Tasks are channels backed by scheduled or on-demand agent work. Each task has its own conversation thread, instructions, schedule metadata, and an optional approval bypass for unattended runs.
Use a task when you want Endstack to do something at a particular time or cadence, or when you need a one-off reminder. A task can deliver its results to other destinations; it is not limited to posting in its own channel.
Where to find tasks
You can find task channels in several places:
- In the channel sidebar alongside regular channels
- In the filesystem as task definitions, or endtasks, under
~/.endos/tasks
When to use a task
Tasks are suited to work that can be described as “at this time or on this cadence, do this work and deliver the result.”
| Use case | What a task can do |
|---|---|
| Daily news or briefing | Research headlines through web search or X each morning, summarize them, and send the result by email or post it in an endOS channel such as #standup |
| Social digest | Compile a nightly X or web digest about mentions, competitors, or industry terms, save it to the desktop, and share its link in Slack |
| One-off reminder | Fire once at the requested date and time, then send you an endOS direct message |
| Cron-style job | Run at any recurring cadence supported by the scheduler, such as hourly checks, weekly reports, or month-end cleanup scripts |
| Operations or monitoring | Poll a Composio-connected system such as Supabase and alert a Slack or endOS channel when it finds an anomaly |
| Content pipeline | Gather sources, draft in Writer or EndCode, save the result to Team Drive, and notify a team channel |
Task details
Open the details pane for a task channel to review its configuration and execution state.
| Control or field | What it shows or does |
|---|---|
| Whitelist task tools | Lets this task and its same-user subagents run tools unattended, without per-tool approval prompts. A change takes effect on the next run. Only the task creator, with manage permission, can change it. |
| Task instructions | The task's Markdown instruction card |
| Schedule | A human-readable schedule in the task's timezone |
| Status | The task's lifecycle status |
| Run state | Its current execution state, such as idle or running |
| Last run | The relative time of the previous run |
| Next run | The relative time of the upcoming scheduled run |
Whitelist task tools
Scheduled tasks can call many tools in a single run, including search, browser, email, Slack, files, and Composio. Without a whitelist, those calls may generate repeated approval prompts or require frequent changes to your Auto tool review policy.
Whitelist task tools is a per-task bypass for trusted, unattended automations:
- Turn it on when you trust a task to run hands-off, such as a daily digest, reminder, or routine report.
- When it is on, tools run automatically without approval for that task's runs, including runs by its same-user subagents.
- Keep it off while designing the task or when it can take sensitive actions you want to review.
- Changes to the setting apply to the task's next run.
- Only the task creator can toggle it, and only when that creator has manage permission.
Delivering results
Task instructions can tell the agent to deliver output through any capability available to the run. Supported delivery surfaces include:
- Email — send a message to you or someone else from the instance inbox. See Email.
- Slack — send a message to a Slack channel or direct message through the Slack integration. See Slack.
- endOS DM — direct message you or a teammate in endOS.
- Any endOS channel — post a summary or update in a team channel.
- Desktop files — write a report, CSV, or draft to your home folder or Team Drive.
- Composio / app integrations — update Linear, Supabase, GitHub, Notion, or another connected app. See App integrations.
- Messaging — send a text through the Messaging integration when it is configured.
A task can combine delivery steps. For example, its instructions can save a file, email the owner, and notify a Slack channel in the same run.
How a task run works
- The scheduler or a manual trigger starts an agent run for the task.
- The run posts activity into the task's channel.
- Tool use follows your autonomy and approval settings, unless Whitelist task tools is on. With the whitelist on, tools run unattended for that task.
- The channel's context and proactive response setting continue to apply where relevant.
- Delivery steps in the task instructions determine where final results go, including email, Slack, endOS channels, files, Messaging, and connected apps.