Skip to main content

tasks

tasks.comment

tasks.comment

Effects: write

Post a comment on a task. Attach files (screenshots, documents) by uploading them with files.upload first and passing the file IDs.

Arguments

ArgumentTypeRequiredDescription
agent_idintegernoComment as this agent instead of as yourself. Optional.
attachment_file_idsarraynoFile IDs to attach (from files.upload)
bodystringyesComment text
task_idintegeryesTask to comment on

tasks.create

tasks.create

Effects: write

Create a task in this workspace. Leave the assignee empty to put it in the backlog, or name someone to hand it over.

Arguments

ArgumentTypeRequiredDescription
agent_idintegernoAct as this agent instead of as yourself — the task is recorded as authored by it. Optional.
assigned_to_contact_idintegernoExact contact to assign to
assigneestringnoWho should do this: a workspace member (email or username), an AI agent (its name), or a contact (display name). Use 'me' for yourself. Call workspace.members to see who can be assigned. For an exact target, pass assignee_user_id / assignee_agent_id / assigned_to_contact_id instead.
assignee_agent_idintegernoExact AI agent to assign to
assignee_user_idintegernoExact workspace member to assign to
attachment_file_idsarraynoFile IDs to attach (from files.upload)
descriptionstringnoDetailed description
due_atstringnoISO datetime when the task is due, e.g. '2026-03-31T15:00:00Z'. A time without a zone is read as UTC.
due_datestringnoDate when task is due (e.g. '2026-03-31'). Use with due_time or alone.
due_timestringnoTime when task is due (e.g. '15:00'). Used with due_date.
prioritystringnoTask priority (default: medium) (one of low, medium, high, urgent)
target_sessionstringnoWhich desktop Claude session should run this, by the name shown in workspace.desktops. Only needed when the assignee is an AI agent that runs on a machine and more than one session is connected — otherwise the task is not dispatched at all, rather than sent to a machine you did not mean.
thread_idintegernoRelated thread ID
titlestringyesTask title

tasks.delete

tasks.delete

Effects: write

Delete a task. Only its creator or a workspace owner/admin may do this; to close a task instead, set status='cancelled'.

Arguments

ArgumentTypeRequiredDescription
agent_idintegernoAct as this agent instead of as yourself. Optional.
task_idintegeryesID of the task to delete

tasks.get

tasks.get

Effects: read

Read one task in full: its fields, attachments, and the whole comment thread including recorded status and assignee changes. Pass agent_id when you are acting as an agent, and the reply says assigned_to_me so you need not infer it from matching ids.

Arguments

ArgumentTypeRequiredDescription
agent_idintegernoRead as this agent. Set it to your own agent_id to be told whether the task is assigned to you.
task_idintegeryesID of the task to read

tasks.list

tasks.list

Effects: read

List tasks in this workspace. Defaults to everything a person can see; an agent calling this sees its own tasks. Filter by assignee, status, or overdue to narrow it down.

Arguments

ArgumentTypeRequiredDescription
agent_idintegernoShow one agent's own tasks instead of the whole workspace. Optional.
assigned_to_contact_idintegerno
assigneestringnoOnly tasks assigned to this member / agent / contact. Use 'me' for your own.
assignee_agent_idintegerno
assignee_user_idintegerno
created_by_mebooleannoOnly tasks you created
limitintegernoMax results per page (default 20, max 100)
offsetintegernoSkip this many results — use with limit to page through
overduebooleannoOnly tasks past their due date that are not finished
statusstringnoone of pending, in_progress, done, cancelled
thread_idintegernoFilter by related thread
unassignedbooleannoOnly tasks with nobody assigned (the backlog)

tasks.update

tasks.update

Effects: write

Update a task. Set status='done' to complete it, 'cancelled' to cancel. Reassign with assignee. Status and assignee changes are recorded in the task's comment thread.

Arguments

ArgumentTypeRequiredDescription
agent_idintegernoAct as this agent instead of as yourself. Optional.
assigned_to_contact_idintegerno
assigneestringnoWho should do this: a workspace member (email or username), an AI agent (its name), or a contact (display name). Use 'me' for yourself. Call workspace.members to see who can be assigned. For an exact target, pass assignee_user_id / assignee_agent_id / assigned_to_contact_id instead.
assignee_agent_idintegerno
assignee_user_idintegerno
attachment_file_idsarraynoReplace the task's attachments with these file IDs
clear_assigneebooleannoUnassign the task, returning it to the backlog
descriptionstringno
due_atstringnoISO datetime
prioritystringnoone of low, medium, high, urgent
statusstringnoone of pending, in_progress, done, cancelled
summarystringnoCompletion note (stored when marking done)
target_sessionstringnoWhich desktop Claude session should run this, by the name shown in workspace.desktops. Only needed when the assignee is an AI agent that runs on a machine and more than one session is connected — otherwise the task is not dispatched at all, rather than sent to a machine you did not mean.
task_idintegeryesID of the task to update
titlestringno