Create & track tasks
Create, assign, and move work to done on the workspace Tasks board, by hand or through an agent.
Every workspace has a Plane-style Tasks board. A task has a title (the only required field) and optional description, assignee (a person or a cybo), priority (urgent / high / medium / low / none), due date, project, workflow state, and labels.
Create a task
By hand:
- Open Tasks.
- Start a new task and give it a title.
- (Optional) set a description, assignee, priority, due date, project, and labels.
- Save — the task lands in its project's default state.
Through an agent (in any channel):
- Ask an agent or @-mention a cybo, e.g. "@apex create a task to ship the relay and assign it to me."
- The agent calls
cyborg7_create_taskand replies with the new task id.
Which project does it land in?
Every task lives in a project, so a create has to resolve to one. The agent doesn't have to ask you which — it has three ways to get there:
- Channel auto-resolution: a cybo working in a channel files the task in that channel's Tasks-project automatically (and falls back to the workspace Inbox if the channel has no project of its own).
- Sub-tasks inherit: create a task under a
parentIdand it joins its parent's project. - Explicit project: the agent passes a
projectId. To find one, it callscyborg7_list_projects, which returns each project'sid,identifier,name,color, and whether it's the Inbox.
A create with none of those — no project, no channel, no parent — is rejected with "provide projectId or channelId", so an agent always lands work somewhere real.
Track and update
- List / filter: ask an agent to run
cyborg7_list_tasks— filter by status, assignee, project, state, priority, or label — or filter directly on the board. - Move it along: change a task's status
todo → in_progress → pending_review → done, (re)assign it, re-prioritize, move it between projects, retag its labels, or record a result by editing it on the board or asking an agent to runcyborg7_update_task. - Tidy up:
cyborg7_archive_taskhides a finished task (reversible — restore it the same way),cyborg7_delete_taskremoves one for good, andcyborg7_bulk_update_tasksapplies one change (e.g. mark done, reassign) across a batch at once.
From the command line
The same operations are available through the cyborg CLI. Each command takes the workspace id first and the usual --email / --token auth, like every other cyborg command.
# Discover the workspace's projects, then create a task in one
cyborg project:list <workspace-id>
cyborg task:create <workspace-id> "Ship the relay" \
--project <project-id> --assignee <user-id> --priority high --due 2026-07-01
# Or scope it to a channel and let that channel's project be chosen
cyborg task:create <workspace-id> "Fix the login bug" --channel <channel-id>
# List and filter
cyborg task:list <workspace-id> --status in_progress --assignee <user-id>
# Update, archive (use --restore to bring it back), or delete
cyborg task:update <workspace-id> <task-id> --status done --result "Deployed"
cyborg task:archive <workspace-id> <task-id>
cyborg task:delete <workspace-id> <task-id>
# Move a whole batch in one shot
cyborg task:bulk-update <workspace-id> <task-id> <task-id> --status done
Let a channel track work for you
Turn on auto-tasks for a channel and its watcher cybo reads new messages and creates, assigns, or updates tasks on its own — so "we still need to fix the login bug" becomes a tracked task with no command. See Schedule a recurring job for time-based automation.