User guide
ToDo lists
You have a list of things to do, and some of them an agent could do. This is how to keep the list, and how to hand it to an agent that works through it.
A ToDo list is a list of things to do, kept as a document on this computer and opened in a tab of the browser panel beside your chat. Each item has a title, notes if you want them, and a status: To do, In progress, Blocked or Done.
You can keep a list by hand, and any agent can read it and add to it from any chat. You can also give a list an agent of its own. Then XataWorks works through the list for you: each item gets a new chat with that agent, which marks the item as it goes, and you choose how many run at once and how long to wait between them.
Making a list
File ▸ New ▸ ToDo List opens the ToDo Lists page with the New ToDo list name field ready. Type a name and press New ToDo list; the list is made and opened. File ▸ Open ▸ ToDo List…, View ▸ ToDo Lists and the ToDo Lists app in the dock open the same page. Saving, versions, renaming and deleting work as in every program here; The office covers them.
Using a list
Type in Add an item and press Enter or Add; the item goes to the bottom of the list as To do. A line above the list counts the items in each status — “2 to do · 1 in progress · 0 blocked · 3 done” — and Hide done leaves the finished ones out of sight. Hiding them is remembered for each list on this computer; it changes nothing in the list itself.
Each item is one row:
- the status menu on the left changes its status;
- the title can be edited where it is; press Enter or click away to keep the change;
- Notes opens a box for longer notes under the title. When an item has notes the button reads Notes •;
- Open chat appears when a chat is working on the item, and takes you to that chat;
- the arrows move the item up and down the list, and ✕ deletes it.
Under the title, a short line is the item’s status note: why it is blocked, or what was done. An agent writes it when it changes the status.
Asking an agent to add to a list
In any chat, ask in your own words: put “renew the domain” on my Errands list, what is left on Launch, mark “book the hall” done. The agent can read and change a list whether or not it is open. If the list is open, the change appears at once without a reload, and what you are typing is kept. When the agent works in the open list itself, a bar at the top says what it did, such as “The agent added 1 item.”
An agent can also make a list for you (“make a ToDo list called Spring cleaning with these ten jobs”).
What it asks
- Without asking: reading a list.
- Asked: making a list, and changing a list the chat did not make — adding items, editing them or changing their status.
- Asked on its own: deleting items from a list the chat did not make.
- Not asked again: anything in a list the agent made in that same chat.
Approvals and permissions explains the answers in full.
Giving a list an agent
Below the items is the Agent panel:
- Agent — None, or one of your agents (see Agents). With None, nothing happens on its own: the list is just a list.
- Model — The agent’s own, or a particular model the app can use. Every chat the list starts runs on it, whatever the agent would normally use.
- Concurrency — how many items are worked on at once, from 1 to 10. It starts at 1.
- Throttle — how long to wait, after an item is done, before starting the next: None, 15 minutes, 1 hour, or Custom… for any number of minutes up to a week. It starts at None.
Only you can change these. An agent can add and work on items, but it cannot choose the list’s agent or model or raise its limits.
How a list is worked
While a list has an agent, XataWorks looks at it every few seconds. When fewer items are being worked on than the concurrency allows, and the throttle has passed since the last item was done, it takes the top To do item and starts a new chat for it:
- the chat is named after the item and appears in the sidebar like any other chat, with the list’s agent and model;
- its first message gives the agent the item, its notes, and which list it is on, and asks it to mark the item In progress when it starts, then Blocked with what it needs, or Done with a short summary;
- that chat may change its own list without asking you. It still asks before anything else, as any chat does.
Items that are In progress count against the concurrency, and so does an item whose chat has just started. Blocked and Done items do not, so a blocked item never holds up the rest. Items you add later are picked up the same way, whoever adds them.
The panel says what the list is waiting for: how many items are being worked on (“Working on 1 of 1.”), when the next one starts during a throttle (“Next item starts at 11:00.”), or why nothing can start — for instance, that the agent is no longer available.
Blocked items
Blocked is where an item waits for you. The agent blocks an item when it needs something it does not have — a password, a decision, a file — and says so in the status note. XataWorks also blocks an item itself, with a note, when its chat cannot carry on:
- “Its chat stopped before marking it done.” — the agent finished replying without marking the item. Often it has asked you a question; open the chat to see.
- “Its chat was deleted.”
- “The app was closed while its chat was working.”
- “Its chat couldn’t be started.”
To go on, answer in the item’s chat with Open chat, and the agent can finish and mark it done. Or set the item back to To do: it goes back in the queue and gets a new chat when there is room.
Ideas
A list with an agent suits work that comes in separate pieces, where each piece is better done in a fresh chat of its own.
- A research queue. Each item is a question — “compare three bookkeeping programs for a two-person business” — and the agent writes each answer up as a document. A concurrency of 2 or 3 gets through the list sooner.
- Drafts that arrive at your pace. Each item is a newsletter piece or a reply you owe someone. The agent drafts each one — a reply goes to your Drafts folder for you to read and send yourself. A throttle of an hour means one waits for you at a time, not twenty at once.
- Changes to an app you built. Each item is a fix or an idea for a creation (“the score button doesn’t reset”). Keep the concurrency at 1, so two chats never change the same creation at once. See The Builder.
- Many small jobs on a quicker model. Summarise each of these reports, tidy each of these records. Set the list’s Model to a faster or cheaper one than the agent usually uses.
- One agent finds the work, another does it. A scheduled prompt each morning, or the mail agent as mail arrives, adds an item for each thing that needs doing; the list’s agent works through them. See Work that continues and Mail.
- A plain list of your own. With no agent, it is simply a to-do list that you and any chat can keep up to date.
Good to know
- Giving a list an agent starts the To do items already on it, not only ones added afterwards. To keep your own jobs apart from the agent’s, keep them on a second list with no agent.
- A list has one agent. Every To do item on it goes to that agent.
- Chats start only while XataWorks is running. To work through a list overnight, see An always-on computer at home.
- Each item is a whole chat on your model account, so a long list with a high concurrency can use a lot of it. The concurrency and throttle are how you keep that in hand.
- An item you mark In progress yourself counts against the concurrency, but no chat is started for it.
- Setting the agent back to None stops new chats; ones already working carry on.
- A list holds up to 2,000 items. A title is at most 500 characters and notes at most 10,000. An agent adds or changes at most 100 items at a time.
- ToDo lists are not imported from or exported to other to-do programs.
Back to all user-guide articles.