cup create -n name [-l listId|sprint:current] [-p parentId] [-d desc|--description-file path] [-s status] [--priority p] [--due-date d] [--start-date d] [--time-estimate t] [--assignee id|me] [--group-assignee uuid|@handle,...] [--tags t] [--custom-item-id n] [--template id] [--field "Name" val] | Create task (--list accepts sprint:current, --field sets custom fields inline; --description-file reads markdown from a file or - for stdin) |
cup update <id> [-n name] [-d desc|--description-file path] [-s status] [--priority p] [--due-date d|none] [--start-date d] [--time-estimate t] [--assignee id|me] [--remove-assignee id|me] [--group-assignee uuid|@handle] [--remove-group-assignee uuid|@handle] [--parent id] [--archive] [--unarchive] [--type type] [--field "Name" val] | Update task fields (--description-file reads markdown from a file or - for stdin) |
cup comment <id> -m text|--message-file path [--notify-all] [--mention user] | Post comment (markdown auto-converted to rich text; --message-file reads from a file or - for stdin; --mention for real @mentions, repeatable) |
cup comment-edit <commentId> -m text|--message-file path [--resolved] [--unresolved] [--mention user] | Edit a comment (markdown auto-converted to rich text; --mention for real @mentions) |
cup comment-delete <commentId> or cup comment-delete --task <taskId> --mine [--match text] | Delete a comment by ID or delete one of your task comments |
cup replies <commentId> | List threaded replies |
cup reply <commentId> -m text|--message-file path [--notify-all] [--mention user] | Reply to a comment (markdown auto-converted to rich text; --message-file reads from a file or - for stdin; --mention for real @mentions) |
cup assign <id> [--to ids|me] [--remove ids|me] [--group uuid|@handle,...] [--remove-group uuid|@handle,...] | Assign/unassign users and groups (all flags accept comma-separated values) |
cup depend <id> [--on taskId] [--blocks taskId] [--remove] | Add/remove dependencies |
cup move <id> [--to listId|sprint:current] [--remove listId] | Add/remove task from lists. --to + --remove together changes the task's home list (uses v3 home_list endpoint with auto status mapping). --to alone adds multi-list membership. --to accepts sprint:current. |
cup field <id> [--set "Name" value] [--remove "Name"] | Set/remove custom field values |
cup field-create <name> -t <type> [-d desc] [--options "a,b,c"] [--required] [--list id] [--lists id1,id2] | Create a custom field — workspace-wide (default), on one list (--list), or bulk across lists (--lists, parallel, per-list reporting) |
cup tag <id> [--add tags] [--remove tags] | Add/remove tags on a task |
cup link <taskId> <linksTo> [--remove] | Link/unlink tasks |
cup attach <taskId> <filePath> | Upload file attachment |
cup delete <id> [--confirm] | Delete task (DESTRUCTIVE) |
cup list-delete <listId> [--confirm] | Delete list (DESTRUCTIVE, requires --confirm in non-interactive) |
cup folder-delete <folderId> [--confirm] | Delete folder (DESTRUCTIVE, requires --confirm in non-interactive) |
cup space-delete <spaceId> [--confirm] | Delete space (DESTRUCTIVE, requires --confirm in non-interactive) |
cup duplicate <taskId> | Duplicate a task |
cup bulk status <status> <taskIds...> | Bulk update status |
cup bulk assign <taskIds...> [--to userId|me] [--remove userId|me] | Bulk assign/unassign user from tasks |
cup bulk due-date <date|none|clear> <taskIds...> | Bulk set or clear due dates |
cup bulk tag <tagName> <taskIds...> [--remove] | Bulk add/remove tag from tasks |
cup bulk priority <taskIds...> --to <priority> | Bulk set priority on many tasks |
cup bulk field <taskIds...> --set "Name" value | Bulk set a custom field value |
cup bulk move <taskIds...> --to <listId> | Bulk move tasks to a destination list |
cup checklist view <id> | View checklists on a task |
cup checklist create <id> <name> | Create a checklist |
cup checklist delete <checklistId> | Delete a checklist |
cup checklist add-item <checklistId> <name> [--parent itemId] | Add item to checklist (nest under parent via --parent) |
cup checklist edit-item <checklistId> <itemId> [--name n] [--resolved] [--unresolved] [--assignee id] [--parent itemId|null] | Edit checklist item (reparent with --parent, use "null" to unnest) |
cup checklist delete-item <checklistId> <itemId> | Delete checklist item |
cup time start <taskId> [-d desc] | Start timer |
cup time stop | Stop running timer |
cup time status | Show running timer |
cup time log <taskId> <duration> [-d desc] | Log manual entry (e.g. "2h", "30m") |
cup time list [--days n] [--task id] [--all] | List my recent time entries (--all for team) |
cup time update <timeEntryId> [-d desc] [--duration dur] | Update time entry |
cup time delete <timeEntryId> | Delete time entry |
cup goal-create <name> [-d desc] [--color hex] | Create a goal |
cup goal-update <goalId> [-n name] [-d desc] [--color hex] | Update a goal |
cup goal-delete <goalId> | Delete a goal |
cup key-result-create <goalId> <name> [--type t] [--target n] | Create key result |
cup key-result-update <keyResultId> [--progress n] [--note text] | Update key result |
cup key-result-delete <keyResultId> | Delete key result |
cup doc-create <title> [-c content] | Create a doc |
cup doc-page-create <docId> <name> [-c content] [--parent-page pageId] | Create doc page |
cup doc-page-edit <docId> <pageId> [--name text] [-c content] | Edit doc page |
cup doc-delete <docId> | Delete a doc |
cup doc-page-delete <docId> <pageId> | Delete doc page |
cup space-create <name> | Create a space |
cup list-create <spaceId> <name> [--folder folderId] [--copy-statuses-from id] | Create a list in a space or folder |
cup folder-create <spaceId> <name> | Create a folder in a space |
cup list-rename <listId> <newName> | Rename a list |
cup folder-rename <folderId> <newName> | Rename a folder |
cup space-rename <spaceId> <newName> | Rename a space |
cup tag-create <spaceId> <name> [--fg color] [--bg color] | Create space tag |
cup tag-update <spaceId> <tagName> --name <newName> [--fg c] [--bg c] | Update space tag |
cup tag-delete <spaceId> <name> | Delete space tag |
cup list-from-template <name> --template <id> [--space id] [--folder id] | Create list from template |
cup view-create <listId> <name> -t <type> [--group-by field] | Create a view on a list |
cup view-update <viewId> [-n name] [--group-by field] | Update a view |
cup view-delete <viewId> [--confirm] | Delete a view (DESTRUCTIVE) |
cup list-comment <listId> -m text [--notify-all] [--mention user] | Post comment on a list (--mention for real @mentions) |
cup view-comment <viewId> -m text [--notify-all] [--mention user] | Post comment on a view (--mention for real @mentions) |
cup webhook create --url <url> --events <events> [--space|--folder|--list|--task <id>] | Create a webhook |
cup webhook update <webhookId> [--url u] [--events e] [--status s] | Update a webhook |
cup webhook delete <webhookId> [--confirm] | Delete a webhook (DESTRUCTIVE) |
cup merge <sourceTaskId> <intoTaskId> [--confirm] | Merge task into another (DESTRUCTIVE, source deleted) |
cup time estimate-by-user <taskId> <userId> <duration> [--replace] | Set per-user time estimate |
cup chat send <channelId> -m <text> [--post --title t] | Send message to channel |
cup chat reply <messageId> -m <text> | Reply to a message |
cup chat react <messageId> --emoji <name> | Add reaction |
cup chat unreact <messageId> --emoji <name> | Remove reaction |
cup chat channel-create <name> [--private] [--topic t] | Create channel |
cup chat dm <userIds...> | Create/open DM |
cup chat channel-update <id> [--name n] [--topic t] | Update channel |
cup chat channel-delete <id> [--confirm] | Delete channel |
cup chat message-update <messageId> -m <text> | Edit message |
cup chat message-delete <messageId> [--confirm] | Delete message |
cup favorite add <type> <id> [alias] [-n name] | Add a local favorite |
cup favorite remove <alias> | Remove a favorite |
cup favorite list [--type t] | List favorites (optionally filter by type) |
cup profile list [--json] | List all profiles |
cup profile add <name> | Add a new profile (interactive) |
cup profile remove <name> | Remove a profile |
cup profile use <name> | Set the default profile |
cup config get <key> / set <key> <value> / path | Manage config |
cup completion <shell> | Shell completions (bash/zsh/fish) |