@krodak/clickup-cli 1.5.0 → 1.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@krodak/clickup-cli",
3
- "version": "1.5.0",
3
+ "version": "1.5.2",
4
4
  "description": "ClickUp CLI for AI agents and humans",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -35,6 +35,7 @@
35
35
  "test": "vitest run",
36
36
  "test:e2e": "vitest run --config vitest.e2e.config.ts",
37
37
  "test:watch": "vitest",
38
+ "docs:sync": "tsx scripts/sync-command-docs.ts",
38
39
  "typecheck": "tsc --project tsconfig.build.json --noEmit",
39
40
  "lint": "eslint .",
40
41
  "lint:fix": "eslint . --fix",
@@ -7,8 +7,6 @@ description: 'Use when managing ClickUp tasks, sprints, or comments via the `cup
7
7
 
8
8
  Reference for AI agents using the `cup` CLI tool. Covers task management, sprint tracking, comments, and project workflows.
9
9
 
10
- Keywords: ClickUp, task management, sprint, project management, agile, backlog, subtasks, standup, overdue, search
11
-
12
10
  ## Setup
13
11
 
14
12
  Config at `~/.config/cup/config.json` with `apiToken` and `teamId`. Optional: `sprintFolderId` to pin sprint detection to a specific folder. Run `cup init` to set up interactively.
@@ -23,171 +21,119 @@ Environment variables `CU_API_TOKEN` and `CU_TEAM_ID` override config file when
23
21
  | Piped / non-TTY | Markdown tables | `--json` for JSON |
24
22
 
25
23
  - Default piped output is **Markdown** - optimized for agent context windows
26
- - `cup task <id>` outputs a Markdown summary when piped; use `--json` for the full raw API object (custom fields, checklists, etc.)
24
+ - `cup task <id>` outputs a Markdown summary when piped; use `--json` for the full raw API object
27
25
  - Set `CU_OUTPUT=json` to always get JSON when piped
28
- - Set `NO_COLOR` to disable color (tables still render, just uncolored)
29
26
  - Agents typically don't need `--json` unless parsing structured data with `jq`
30
27
 
31
28
  ## Commands
32
29
 
33
- All commands support `--help` for full flag details.
30
+ All commands support `--help` for full flag details. All commands support `--json`.
34
31
 
35
32
  ### Read
36
33
 
37
- | Command | What it returns |
38
- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
39
- | `cup tasks [--status s] [--name q] [--type t] [--list id] [--space id] [--include-closed] [--json]` | My tasks (all types, or filter with --type) |
40
- | `cup assigned [--status s] [--include-closed] [--json]` | All my tasks grouped by status |
41
- | `cup sprint [--status s] [--space nameOrId] [--folder id] [--include-closed] [--json]` | Tasks in active sprint (auto-detected) |
42
- | `cup sprints [--space nameOrId] [--json]` | List all sprints (marks active with \*) |
43
- | `cup search <query> [--status s] [--include-closed] [--json]` | Search my tasks by name (multi-word, fuzzy status) |
44
- | `cup task <id> [--json]` | Single task details |
45
- | `cup subtasks <id> [--status s] [--name q] [--include-closed] [--json]` | Subtasks of a task |
46
- | `cup comments <id> [--json]` | Comments on a task |
47
- | `cup activity <id> [--json]` | Task details + comment history combined |
48
- | `cup inbox [--days n] [--include-closed] [--json]` | Tasks updated in last n days (default 30) |
49
- | `cup summary [--hours n] [--json]` | Standup helper: completed, in-progress, overdue |
50
- | `cup overdue [--include-closed] [--json]` | Tasks past their due date |
51
- | `cup spaces [--name partial] [--my] [--json]` | List/filter workspace spaces |
52
- | `cup lists <spaceId> [--name partial] [--json]` | Lists in a space (including folder lists) |
53
- | `cup open <query> [--json]` | Open task in browser by ID or name |
54
- | `cup auth [--json]` | Check authentication status |
55
- | `cup folders <spaceId> [--name partial] [--json]` | Folders in a space (with their lists) |
56
- | `cup tags <spaceId> [--json]` | List tags available in a space |
57
- | `cup members [--json]` | List workspace members |
58
- | `cup fields <listId> [--json]` | List custom fields for a list |
59
- | `cup goals [--json]` | List goals in your workspace |
60
- | `cup key-results <goalId> [--json]` | List key results for a goal |
61
- | `cup docs [query] [--json]` | List workspace docs (optionally filter by name) |
62
- | `cup doc <docId> [pageId] [--json]` | View doc metadata + page tree, or a specific page |
63
- | `cup doc-pages <docId> [--json]` | All pages in a doc with content |
64
- | `cup task-types [--json]` | List custom task types in your workspace |
65
- | `cup templates [--json]` | List task templates in your workspace |
34
+ | Command | What it returns |
35
+ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
36
+ | `cup tasks [--status s] [--name q] [--type t] [--list id] [--space id] [--include-closed]` | My tasks (filter by status, name, type, list, space) |
37
+ | `cup assigned [--status s] [--include-closed]` | All my tasks grouped by status |
38
+ | `cup sprint [--status s] [--space nameOrId] [--folder id] [--include-closed]` | Tasks in active sprint (auto-detected) |
39
+ | `cup sprints [--space nameOrId]` | List all sprints (marks active with \*) |
40
+ | `cup search <query> [--status s] [--include-closed]` | Search my tasks by name |
41
+ | `cup task <id>` | Single task details (custom fields, checklists, attachments, deps, links) |
42
+ | `cup subtasks <id> [--status s] [--name q] [--include-closed]` | Subtasks of a task |
43
+ | `cup comments <id>` | Comments on a task |
44
+ | `cup activity <id>` | Task details + comment history combined |
45
+ | `cup inbox [--days n] [--include-closed]` | Tasks updated in last n days (default 30) |
46
+ | `cup summary [--hours n]` | Standup: completed, in-progress, overdue |
47
+ | `cup overdue [--include-closed]` | Tasks past due date (most overdue first) |
48
+ | `cup spaces [--name partial] [--my]` | List/filter workspace spaces |
49
+ | `cup lists <spaceId> [--name partial]` | Lists in a space (including folder lists) |
50
+ | `cup folders <spaceId> [--name partial]` | Folders in a space (with their lists) |
51
+ | `cup members` | Workspace members (username, ID, email) |
52
+ | `cup fields <listId>` | Custom fields on a list (type, required, options) |
53
+ | `cup tags <spaceId>` | Tags available in a space |
54
+ | `cup goals` | Workspace goals with progress |
55
+ | `cup key-results <goalId>` | Key results for a goal |
56
+ | `cup docs [query]` | Workspace docs (optionally filter by name) |
57
+ | `cup doc <docId> [pageId]` | Doc metadata + page tree, or a specific page |
58
+ | `cup doc-pages <docId>` | All pages in a doc with content |
59
+ | `cup task-types` | Custom task types (for `--custom-item-id`) |
60
+ | `cup templates` | Task templates (for `--template`) |
61
+ | `cup open <query>` | Open task in browser by ID or name |
62
+ | `cup auth` | Check authentication status |
66
63
 
67
64
  ### Write
68
65
 
69
- | Command | What it does |
70
- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- |
71
- | `cup update <id> [-n name] [-d desc] [-s status] [--priority p] [--due-date d] [--time-estimate t] [--assignee id\|me] [--parent id] [--json]` | Update task fields (desc supports markdown) |
72
- | `cup create -n name [-l listId] [-p parentId] [-d desc] [-s status] [--priority p] [--due-date d] [--time-estimate t] [--assignee id\|me] [--tags t] [--custom-item-id n] [--json]` | Create task (desc supports markdown) |
73
- | `cup comment <id> -m text [--notify-all] [--json]` | Post comment on task |
74
- | `cup comment-edit <commentId> -m text [--resolved] [--unresolved] [--json]` | Edit an existing comment |
75
- | `cup assign <id> [--to userId\|me] [--remove userId\|me] [--json]` | Assign/unassign users |
76
- | `cup depend <id> [--on taskId] [--blocks taskId] [--remove] [--json]` | Add/remove task dependencies |
77
- | `cup move <id> [--to listId] [--remove listId] [--json]` | Add/remove task from lists |
78
- | `cup field <id> [--set "Name" value] [--remove "Name"] [--json]` | Set/remove custom field values |
79
- | `cup delete <id> [--confirm] [--json]` | Delete a task (DESTRUCTIVE, irreversible) |
80
- | `cup tag <id> [--add tags] [--remove tags] [--json]` | Add/remove tags on a task |
81
- | `cup checklist view <id> [--json]` | View checklists on a task |
82
- | `cup checklist create <id> <name> [--json]` | Create a checklist |
83
- | `cup checklist delete <checklistId> [--json]` | Delete a checklist |
84
- | `cup checklist add-item <checklistId> <name> [--json]` | Add item to a checklist |
85
- | `cup checklist edit-item <checklistId> <itemId> [--name n] [--resolved] [--unresolved] [--assignee id] [--json]` | Edit a checklist item |
86
- | `cup checklist delete-item <checklistId> <itemId> [--json]` | Delete a checklist item |
87
- | `cup comment-delete <commentId> [--json]` | Delete a comment |
88
- | `cup replies <commentId> [--json]` | List threaded replies on a comment |
89
- | `cup reply <commentId> -m text [--notify-all] [--json]` | Reply to a comment |
90
- | `cup link <taskId> <linksTo> [--remove] [--json]` | Add or remove link between tasks |
91
- | `cup attach <taskId> <filePath> [--json]` | Upload file attachment to a task |
92
- | `cup time start <taskId> [-d desc] [--json]` | Start tracking time on a task |
93
- | `cup time stop [--json]` | Stop the running timer |
94
- | `cup time status [--json]` | Show currently running timer |
95
- | `cup time log <taskId> <duration> [-d desc] [--json]` | Log manual time entry (e.g. "2h", "30m") |
96
- | `cup time list [--days n] [--task id] [--json]` | List recent time entries |
97
- | `cup time update <timeEntryId> [-d desc] [--duration dur] [--json]` | Update a time entry |
98
- | `cup time delete <timeEntryId> [--json]` | Delete a time entry |
99
- | `cup doc-create <title> [-c content] [--json]` | Create a new doc |
100
- | `cup doc-page-create <docId> <name> [-c content] [--parent-page pageId] [--json]` | Create a page in a doc |
101
- | `cup doc-page-edit <docId> <pageId> [--name text] [-c content] [--json]` | Edit a doc page |
102
- | `cup tag-create <spaceId> <name> [--fg color] [--bg color] [--json]` | Create a tag in a space |
103
- | `cup tag-delete <spaceId> <name> [--json]` | Delete a tag from a space |
104
- | `cup duplicate <taskId> [--json]` | Duplicate a task (read + create copy) |
105
- | `cup bulk status <status> <taskIds...> [--json]` | Bulk update status of multiple tasks |
106
- | `cup goal-create <name> [-d desc] [--color hex] [--json]` | Create a goal |
107
- | `cup goal-update <goalId> [-n name] [-d desc] [--color hex] [--json]` | Update a goal |
108
- | `cup key-result-create <goalId> <name> [--type t] [--target n] [--json]` | Create a key result on a goal |
109
- | `cup key-result-update <keyResultId> [--progress n] [--note text] [--json]` | Update a key result |
110
- | `cup goal-delete <goalId> [--json]` | Delete a goal |
111
- | `cup key-result-delete <keyResultId> [--json]` | Delete a key result |
112
- | `cup doc-delete <docId> [--json]` | Delete a doc |
113
- | `cup doc-page-delete <docId> <pageId> [--json]` | Delete a doc page |
114
- | `cup tag-update <spaceId> <tagName> --name <newName> [--fg c] [--bg c] [--json]` | Update a tag in a space |
115
- | `cup create -n name -l listId --template <templateId> [--json]` | Create task from a template |
116
- | `cup config get <key>` / `cup config set <key> <value>` / `cup config path` | Manage CLI config (keys: apiToken, teamId, sprintFolderId) |
117
- | `cup completion <shell>` | Shell completions (bash/zsh/fish) |
118
-
119
- ## Quick Reference
120
-
121
- | Topic | Detail |
122
- | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
123
- | Task IDs | Native (`abc123def`) or custom (`PROJ-123`). Custom IDs auto-detected by `PREFIX-DIGITS` format |
124
- | `--type` | Filter by task type: `task` (regular), or custom type name/ID (e.g. `initiative`, `Bug`) |
125
- | `--list` on create | Optional when `--parent` is given (auto-detected) |
126
- | `--status` | Fuzzy matching: exact > starts-with > contains. Prints match to stderr. |
127
- | `--priority` | Names (`urgent`, `high`, `normal`, `low`) or numbers (1-4) |
128
- | `--due-date` | `YYYY-MM-DD` format |
129
- | `--assignee` | User ID or `me` (on `cup create`, `cup update`, `cup assign`) |
130
- | `--tags` | Comma-separated (e.g. `--tags "bug,frontend"`) |
131
- | `--time-estimate` | Duration format: `"2h"`, `"30m"`, `"1h30m"`, or raw milliseconds |
132
- | `--custom-item-id` | Custom task type ID for `cup create` (e.g. `1` for initiative) |
133
- | `--on` / `--blocks` | Task dependency direction (used with `cup depend`) |
134
- | `--to` / `--remove` | List ID to add/remove task (used with `cup move`) |
135
- | `cup field --set` | Supports: text, number, checkbox (true/false), dropdown (option name), date (YYYY-MM-DD), url, email |
136
- | `cup field` | Field names resolved case-insensitively; errors list available fields/options |
137
- | `cup delete` | DESTRUCTIVE. Requires `--confirm` in non-interactive mode. Cannot be undone |
138
- | `cup tag --add/--remove` | Comma-separated tag names (e.g. `--add "bug,frontend"`) |
139
- | `--space` | Partial name match or exact ID |
140
- | `--name` | Partial match, case-insensitive |
141
- | `--include-closed` | Include closed/done tasks (on `tasks`, `assigned`, `subtasks`, `sprint`, `search`, `inbox`, `overdue`) |
142
- | `cup assign --to me` | Shorthand for your own user ID |
143
- | `cup search` | Matches all query words against task name, case-insensitive |
144
- | `cup sprint` | Auto-detects active sprint by searching for folders named sprint/iteration/cycle/scrum, parses multiple date formats (US, ISO, month-day, European), prompts in TTY when ambiguous. Override with `--folder <id>` or `cup config set sprintFolderId <id>` |
145
- | `cup summary` | Categories: completed (done/complete/closed within N hours), in progress, overdue |
146
- | `cup overdue` | Excludes closed tasks, sorted most overdue first |
147
- | `cup open` | Tries task ID first, falls back to name search |
148
- | `cup checklist` | Full CRUD for task checklists: view, create, delete, add-item, edit-item, delete-item |
149
- | `cup tags` | List available tags in a space. Useful for discovering valid tag names before using `cup tag` |
150
- | `cup tag-create` | Create a new tag in a space. Optional `--fg` and `--bg` for colors |
151
- | `cup tag-delete` | Delete a tag from a space |
152
- | `cup members` | List workspace members with username, ID, and email |
153
- | `cup fields` | List custom fields on a list. Shows field type, required status, and dropdown options |
154
- | `cup duplicate` | Duplicate a task. Creates a copy with name, description, priority, tags, and time estimate |
155
- | `cup bulk status` | Update status of multiple tasks at once. Reports failures without stopping |
156
- | `cup goals` | List goals with progress percentage and owner |
157
- | `cup goal-create` | Create a goal with optional description and color |
158
- | `cup goal-update` | Update goal name, description, or color |
159
- | `cup key-results` | List key results for a goal with progress tracking |
160
- | `cup key-result-create` | Create a key result (number or percentage type) with a target value |
161
- | `cup key-result-update` | Update key result progress or add a note |
162
- | `cup time` | Track time: start/stop timer, log entries, list history, update/delete entries. Duration format: "2h", "30m", "1h30m" |
163
- | `cup time update` | Update a time entry description or duration |
164
- | `cup time delete` | Delete a time entry |
165
- | `cup comment-edit` | Edit comment text and resolution status |
166
- | `cup comment-delete` | Delete a comment |
167
- | `cup replies` / `cup reply` | View and post threaded comment replies |
168
- | Custom task IDs | Auto-detected by format (`PROJ-123`). Uses `teamId` from config. All commands support them |
169
- | `cup link` + custom IDs | Both IDs must be the same type (both custom or both native). Mixing may not work |
170
- | `cup link` | Link/unlink tasks (different from dependencies) |
171
- | `cup attach` | Upload files to tasks. Attachments shown in `cup task` detail view |
172
- | `cup folders` | List folders in a space with their contained lists |
173
- | `cup docs` | List and search workspace docs by name |
174
- | `cup doc` | View doc metadata + page tree (no pageId), or a specific page (with pageId) |
175
- | `cup doc-pages` | Dump all pages in a doc with full content |
176
- | `cup doc-create` | Create a new doc with optional initial content |
177
- | `cup doc-page-create` | Create a page in a doc, optionally nested under a parent page |
178
- | `cup doc-page-edit` | Edit a doc page name or content |
179
- | `cup doc-delete` | Delete a doc |
180
- | `cup doc-page-delete` | Delete a doc page |
181
- | `cup goal-delete` | Delete a goal |
182
- | `cup key-result-delete` | Delete a key result |
183
- | `cup tag-update` | Rename a tag in a space, optionally update colors |
184
- | `cup task-types` | List custom task types (useful for discovering `--custom-item-id` values) |
185
- | `cup templates` | List task templates (useful for `cup create --template`) |
186
- | `--template` | On `cup create`, create task from a template instead of from scratch |
187
- | `cup task` | Shows custom fields, checklists, attachments, dependencies, and linked tasks in detail view |
188
- | `cup lists` | Discovers list IDs needed for `--list` and `cup create -l` |
189
- | Errors | stderr with exit code 1 |
190
- | Parsing | Strict - excess/unknown arguments rejected |
66
+ | Command | What it does |
67
+ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------- |
68
+ | `cup create -n name [-l listId] [-p parentId] [-d desc] [-s status] [--priority p] [--due-date d] [--time-estimate t] [--assignee id\|me] [--tags t] [--custom-item-id n] [--template id]` | Create task |
69
+ | `cup update <id> [-n name] [-d desc] [-s status] [--priority p] [--due-date d] [--time-estimate t] [--assignee id\|me] [--parent id]` | Update task fields |
70
+ | `cup comment <id> -m text [--notify-all]` | Post comment on task |
71
+ | `cup comment-edit <commentId> -m text [--resolved] [--unresolved]` | Edit a comment |
72
+ | `cup comment-delete <commentId>` | Delete a comment |
73
+ | `cup replies <commentId>` | List threaded replies |
74
+ | `cup reply <commentId> -m text [--notify-all]` | Reply to a comment |
75
+ | `cup assign <id> [--to userId\|me] [--remove userId\|me]` | Assign/unassign users |
76
+ | `cup depend <id> [--on taskId] [--blocks taskId] [--remove]` | Add/remove dependencies |
77
+ | `cup move <id> [--to listId] [--remove listId]` | Add/remove task from lists |
78
+ | `cup field <id> [--set "Name" value] [--remove "Name"]` | Set/remove custom field values |
79
+ | `cup tag <id> [--add tags] [--remove tags]` | Add/remove tags on a task |
80
+ | `cup link <taskId> <linksTo> [--remove]` | Link/unlink tasks |
81
+ | `cup attach <taskId> <filePath>` | Upload file attachment |
82
+ | `cup delete <id> [--confirm]` | Delete task (DESTRUCTIVE) |
83
+ | `cup duplicate <taskId>` | Duplicate a task |
84
+ | `cup bulk status <status> <taskIds...>` | Bulk update status |
85
+ | `cup checklist view <id>` | View checklists on a task |
86
+ | `cup checklist create <id> <name>` | Create a checklist |
87
+ | `cup checklist delete <checklistId>` | Delete a checklist |
88
+ | `cup checklist add-item <checklistId> <name>` | Add item to checklist |
89
+ | `cup checklist edit-item <checklistId> <itemId> [--name n] [--resolved] [--unresolved] [--assignee id]` | Edit checklist item |
90
+ | `cup checklist delete-item <checklistId> <itemId>` | Delete checklist item |
91
+ | `cup time start <taskId> [-d desc]` | Start timer |
92
+ | `cup time stop` | Stop running timer |
93
+ | `cup time status` | Show running timer |
94
+ | `cup time log <taskId> <duration> [-d desc]` | Log manual entry (e.g. "2h", "30m") |
95
+ | `cup time list [--days n] [--task id]` | List recent time entries |
96
+ | `cup time update <timeEntryId> [-d desc] [--duration dur]` | Update time entry |
97
+ | `cup time delete <timeEntryId>` | Delete time entry |
98
+ | `cup goal-create <name> [-d desc] [--color hex]` | Create a goal |
99
+ | `cup goal-update <goalId> [-n name] [-d desc] [--color hex]` | Update a goal |
100
+ | `cup goal-delete <goalId>` | Delete a goal |
101
+ | `cup key-result-create <goalId> <name> [--type t] [--target n]` | Create key result |
102
+ | `cup key-result-update <keyResultId> [--progress n] [--note text]` | Update key result |
103
+ | `cup key-result-delete <keyResultId>` | Delete key result |
104
+ | `cup doc-create <title> [-c content]` | Create a doc |
105
+ | `cup doc-page-create <docId> <name> [-c content] [--parent-page pageId]` | Create doc page |
106
+ | `cup doc-page-edit <docId> <pageId> [--name text] [-c content]` | Edit doc page |
107
+ | `cup doc-delete <docId>` | Delete a doc |
108
+ | `cup doc-page-delete <docId> <pageId>` | Delete doc page |
109
+ | `cup tag-create <spaceId> <name> [--fg color] [--bg color]` | Create space tag |
110
+ | `cup tag-update <spaceId> <tagName> --name <newName> [--fg c] [--bg c]` | Update space tag |
111
+ | `cup tag-delete <spaceId> <name>` | Delete space tag |
112
+ | `cup config get <key>` / `set <key> <value>` / `path` | Manage config |
113
+ | `cup completion <shell>` | Shell completions (bash/zsh/fish) |
114
+
115
+ ## Flags & Conventions
116
+
117
+ | Topic | Detail |
118
+ | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
119
+ | Task IDs | Native (`abc123def`) or custom (`PROJ-123`). Custom IDs auto-detected by `PREFIX-DIGITS` format |
120
+ | `--status` | Fuzzy matching: exact > starts-with > contains. Prints match to stderr |
121
+ | `--priority` | Names (`urgent`, `high`, `normal`, `low`) or numbers (1-4) |
122
+ | `--due-date` | `YYYY-MM-DD` format |
123
+ | `--assignee` | User ID or `me` |
124
+ | `--tags` | Comma-separated (e.g. `--tags "bug,frontend"`) |
125
+ | `--time-estimate` | Duration: `"2h"`, `"30m"`, `"1h30m"`, or raw milliseconds |
126
+ | `--type` | `task` (regular) or custom type name/ID (e.g. `initiative`, `Bug`) |
127
+ | `--custom-item-id` | Custom task type ID for `cup create` (find with `cup task-types`) |
128
+ | `--space` | Partial name match or exact ID |
129
+ | `--name` | Partial match, case-insensitive |
130
+ | `--include-closed` | Include closed/done tasks |
131
+ | `--list` on create | Optional when `--parent` is given (auto-detected) |
132
+ | `cup field --set` | Supports: text, number, checkbox (true/false), dropdown (option name), date (YYYY-MM-DD), url, email. Names resolved case-insensitively; errors list available fields/options |
133
+ | `cup sprint` | Auto-detects active sprint by folder name (sprint/iteration/cycle/scrum), parses multiple date formats. Override with `--folder <id>` or `cup config set sprintFolderId <id>` |
134
+ | `cup link` | Both IDs must be the same type (both custom or both native) |
135
+ | `cup delete` | DESTRUCTIVE. Requires `--confirm` in non-interactive mode. Cannot be undone |
136
+ | Errors | stderr with exit code 1. Strict parsing - excess/unknown arguments rejected |
191
137
 
192
138
  ## Agent Workflow Examples
193
139
 
@@ -207,7 +153,6 @@ cup activity abc123def # task + comments combined
207
153
  cup tasks --status "in progress" # by status
208
154
  cup tasks --name "login" # by partial name
209
155
  cup tasks --type initiative # initiatives only
210
- cup tasks --type task # regular tasks only
211
156
  cup search "payment flow" # multi-word search
212
157
  cup search auth --status "prog" # fuzzy status match
213
158
  cup sprint # current sprint
@@ -221,105 +166,54 @@ cup inbox --days 7 # recently updated
221
166
  ```bash
222
167
  cup update abc123def -s "done"
223
168
  cup update abc123def --priority high --due-date 2025-03-15
224
- cup update abc123def --time-estimate 2h
225
- cup update abc123def --parent parentId # make it a subtask
226
169
  cup create -n "Fix the thing" -p abc123def
227
170
  cup create -n "Fix bug" -l <listId> --priority urgent --tags "bug,frontend"
228
- cup create -n "Q3 Roadmap" -l <listId> --custom-item-id 1 # create initiative
171
+ cup create -n "Q3 Roadmap" -l <listId> --custom-item-id 1
229
172
  cup comment abc123def -m "Completed in PR #42"
230
173
  cup assign abc123def --to me
231
174
  cup depend task3 --on task2 # task3 waits for task2
232
- cup depend task1 --blocks task2 # task1 blocks task2
233
- cup move task1 --to list2 --remove list1 # move between lists
175
+ cup move task1 --to list2 --remove list1
234
176
  cup field abc123def --set "Story Points" 5
235
- cup field abc123def --set "Category" "Bug Fix"
236
- cup field abc123def --remove "Old Field"
237
177
  cup tag abc123def --add "bug,frontend"
238
- cup tag abc123def --remove "triage"
239
- cup checklist view abc123def # view checklists
240
- cup checklist create abc123def "QA Steps" # add checklist
241
- cup checklist add-item <clId> "Run unit tests" # add item
242
- cup checklist edit-item <clId> <itemId> --resolved # check off item
243
- cup comment-edit <commentId> -m "Updated findings" # edit a comment
244
- cup comment-delete <commentId> # delete a comment
245
- cup replies <commentId> # view threaded replies
246
- cup reply <commentId> -m "Agreed, fixing" # reply to a comment
247
- cup link abc123 def456 # link two tasks
248
- cup link abc123 def456 --remove # unlink two tasks
249
- cup attach abc123def ./screenshot.png # upload file to task
250
- cup time start abc123def -d "Working on feature" # start timer
251
- cup time status # check running timer
252
- cup time stop # stop timer
253
- cup time log abc123def 2h -d "Code review" # log manual entry
254
- cup time list --days 7 # recent entries
178
+ cup checklist create abc123def "QA Steps"
179
+ cup checklist add-item <clId> "Run unit tests"
180
+ cup checklist edit-item <clId> <itemId> --resolved
181
+ cup link abc123 def456
182
+ cup attach abc123def ./screenshot.png
183
+ cup time start abc123def -d "Working on feature"
184
+ cup time stop
185
+ cup time log abc123def 2h -d "Code review"
255
186
  cup delete abc123def --confirm # irreversible!
256
187
  ```
257
188
 
258
- ### Work with docs
189
+ ### Docs
259
190
 
260
191
  ```bash
261
- cup docs # list all docs
262
- cup docs "design" # search docs by name
263
- cup doc <docId> # doc metadata + page tree
264
- cup doc <docId> <pageId> # view page content
265
- cup doc-pages <docId> # all pages with content
266
- cup doc-create "Architecture Notes" # create a doc
267
- cup doc-create "Notes" -c "# Draft" # create with content
268
- cup doc-page-create <docId> "New Section" # add page to doc
269
- cup doc-page-create <docId> "Sub" --parent-page <pageId> # nested page
270
- cup doc-page-edit <docId> <pageId> --name "Renamed" # rename page
271
- cup doc-page-edit <docId> <pageId> -c "# Updated content" # edit content
192
+ cup docs "design" # search docs
193
+ cup doc <docId> <pageId> # view page
194
+ cup doc-create "Architecture Notes" -c "# Draft"
195
+ cup doc-page-create <docId> "Section" --parent-page <pageId>
196
+ cup doc-page-edit <docId> <pageId> -c "# Updated"
272
197
  ```
273
198
 
274
- ### Discover workspace structure
199
+ ### Workspace structure
275
200
 
276
201
  ```bash
277
- cup spaces # all spaces
278
- cup spaces --name "Engineering" # find space ID by name
202
+ cup spaces --name "Engineering" # find space ID
279
203
  cup folders <spaceId> # folders with their lists
280
- cup folders <spaceId> --name "sprint" # filter folders by name
281
- cup lists <spaceId> # lists in a space (needs ID from cup spaces)
282
- cup sprints # all sprints across folders
204
+ cup lists <spaceId> # lists in a space
283
205
  cup members # workspace members
284
206
  cup fields <listId> # custom fields on a list
285
- cup auth # verify token works
286
- cup config set sprintFolderId <id> # pin sprint detection to a folder
287
- ```
288
-
289
- ### Bulk operations
290
-
291
- ```bash
292
- cup duplicate abc123 # duplicate a task
293
- cup bulk status "done" t1 t2 t3 # mark multiple tasks done
294
- cup tag-create <spaceId> "urgent" # create a space tag
295
- cup tag-update <spaceId> "urgent" --name "critical" # rename a tag
296
- cup tag-delete <spaceId> "old-tag" # delete a space tag
297
- ```
298
-
299
- ### Templates and task types
300
-
301
- ```bash
302
- cup task-types # list custom task types
303
- cup templates # list task templates
304
- cup create -n "Bug" -l <listId> --template <templateId> # create from template
305
- ```
306
-
307
- ### Delete operations
308
-
309
- ```bash
310
- cup goal-delete <goalId> # delete a goal
311
- cup key-result-delete <krId> # delete a key result
312
- cup doc-delete <docId> # delete a doc
313
- cup doc-page-delete <docId> <pageId> # delete a doc page
207
+ cup task-types # custom task types
208
+ cup templates # task templates
314
209
  ```
315
210
 
316
- ### Goals and key results
211
+ ### Goals
317
212
 
318
213
  ```bash
319
- cup goals # list all goals
214
+ cup goals
320
215
  cup goal-create "Ship v2" -d "Release version 2"
321
- cup goal-update g123 -n "Updated name"
322
- cup key-results g123 # key results for a goal
216
+ cup key-results g123
323
217
  cup key-result-create g123 "API coverage" --type percentage --target 80
324
218
  cup key-result-update kr456 --progress 60 --note "On track"
325
219
  ```