# The Tasks page (sidebar → Tasks) [tasks.md](tasks.md) explains the background tasks that appear **inside a conversation** — the strip above the message box. This document is about the **page**: sidebar → Tasks, where every task of that person is listed, including the scheduled ones that belong to no conversation at all. Two things to know before anything else: - **It shows only that person's own tasks.** Tasks live in each member's own space; nobody sees anybody else's here, the admin included. - **There is no "new task" button.** Tasks are created by *you*, in conversation, with `execute_task`. The page manages what exists — enable, disable, stop, delete, read the outcome — and that is the whole answer to "how do I schedule something?": they ask you, in words, and you create it. The page is not in the simplified interface. A member on the simple menu has chat, Inbox and Projects only, so for them everything below is something you do on their behalf and report back in words. ## The four sections The Tasks entry in the sidebar opens a submenu with four sections. They are four views of the same set, cut by *state*, not by kind. ### Running Anything of theirs running **right now**, whatever kind: a recurring job that happens to be in its run, a one-shot, or a background task started from a chat (badges `cron` / `one-shot` / `async`). Each card shows the elapsed time, ticking live, which agent is doing the work, and a link to the session — that link is where the work itself can be read, message by message. The **✕** stops the task immediately. Stopping is not failing: the run is recorded as *cancelled* with "Stopped by the user before it finished", and whatever it had produced is kept but incomplete. Say so plainly if asked about it later; never present a stopped task as if it had finished. ### Recurring (cron) The jobs that run on a schedule, over and over. Each card carries: - the schedule **in words** ("At 09:00 every day") with the raw cron expression underneath it, - the agent that runs it, when it **last** ran and when it will run **next**, - a switch to enable/disable, and a bin to delete. **Disabled is not deleted.** A disabled job keeps its definition and its history, and simply never fires until it is switched back on — that is the right suggestion when someone wants a job to stop "for now", or is unsure whether they still need it. Times are evaluated in the instance's configured timezone, which is the one named in your own `execute_task` description — worth reading off it rather than assuming the user's, if they are travelling or the box is elsewhere. ### Scheduled Tasks that are waiting rather than repeating: a **one-shot** job whose moment has not arrived yet (*pending*), and background tasks that are *queued* or running. A recurring job never appears here. The bin deletes. Once a one-shot has run it drops out of this section: its outcome is in History, and its result has already gone where it was going. About a week after they finish, one-shot and background tasks are cleaned up entirely — the card *and* the History row disappear together. Recurring jobs are never cleaned up, so their runs stay in History indefinitely. ### History Every finished run, newest first: status, task, agent, when it completed, how long it took. Three statuses, and the difference matters: | Status | Means | | --- | --- | | completed | it finished on its own | | failed | it broke; the row carries the error | | cancelled | somebody stopped it before it finished | Clicking a row expands it: a link to the session it ran in, the error if there was one, and the **final response** — the last thing the agent said, stored as text. That stored response is the honest answer to "what did last night's job actually say?", and it is worth reading before speculating: the run is over, but its words are still there. ## Where a task's result goes The page is the *record*, not the delivery. Where an outcome lands depends on the kind: - **A background (async) task** returns into the conversation that started it — always, whether it succeeded, failed or was stopped. See [tasks.md](tasks.md). - **A recurring or one-shot scheduled job** belongs to no conversation, so its outcome arrives as a notification in the **home chat** — you are woken to read it and to tell the user whatever is worth telling. The full text stays in History either way. - **A synchronous task** never appears in Running or Scheduled at all: it is over before the page could show it, because the answer came straight back into your reply. Only its History row remains. ## What this page is not - **Not the background agents' log.** Event triage, the memory lints and the nightly conversation review are not tasks — they have their own page and their own run log ([system-agents.md](system-agents.md)). Nothing about them will ever appear here, and a user hunting for "last night's memory check" should be sent there. - **Not an editor.** A job's prompt, agent and schedule cannot be changed in the page. Changing what a job does means deleting it and creating a new one — which is a request to you, not a button. - **Not the Inbox.** A task waiting for an approval or an answer is *running*, and looks perfectly healthy here. If someone says a task has been going for hours, check the Inbox ([inbox.md](inbox.md)) before assuming it is stuck: it may simply be waiting for them. ## Common questions - *"Did last night's job run?"* — Recurring section for the next/last run times, History for what happened. - *"Stop this from repeating."* — the switch on its card. Deleting also works but throws the definition away; offer the switch first. - *"Why is nothing scheduled?"* — most likely nothing ever created one. There is no default job; the page is empty until somebody asks for something. - *"Where did my task from yesterday go?"* — if it was a one-shot or a background task and more than a week has passed, it and its history row were cleaned up. The result itself is still in the conversation (background task) or was delivered as a notification (scheduled). - *"Can I see what my daughter has scheduled?"* — no. Each person's tasks are their own; the page shows nobody else's. - *"It says cancelled — did it fail?"* — no. Somebody pressed ✕, or the session was stopped. The work is incomplete, not broken. ## Related - [tasks.md](tasks.md) — background tasks inside a conversation: the strip, stopping one, and how results come back - [system-agents.md](system-agents.md) — the scheduled background agents, which are *not* tasks - [agents.md](agents.md) — which agents may run a task (a task agent, never a chat one) - [inbox.md](inbox.md) — where a running task asks for an approval or an answer