|
1 | 1 | # TaskFlow CLI |
2 | 2 |
|
3 | | -The `taskflow` CLI is a thin HTTP client that calls the TaskFlow server. Commands are derived automatically from the domain operation definitions — adding a new server operation makes it available in the CLI with no additional code. |
| 3 | +The `taskflow` CLI is a thin HTTP client that calls the TaskFlow server. Commands are derived automatically from the domain model — every Resource and Operation in the model becomes a CLI command. |
4 | 4 |
|
5 | 5 | ## Configuration |
6 | 6 |
|
@@ -38,34 +38,46 @@ taskflow actor get <name> |
38 | 38 | taskflow actor update <name> [--display_name <name>] [--role <role>] [--active <bool>] |
39 | 39 | ``` |
40 | 40 |
|
| 41 | +### admin |
| 42 | +
|
| 43 | +``` |
| 44 | +taskflow admin stats # system-wide statistics (admin only) |
| 45 | +``` |
| 46 | +
|
41 | 47 | ### board |
42 | 48 |
|
43 | 49 | ``` |
44 | | -taskflow board create --slug <slug> --name <name> --workflow <json> |
| 50 | +taskflow board create --slug <slug> --name <name> [--workflow <json>] |
45 | 51 | taskflow board list [--include_deleted] |
46 | 52 | taskflow board get <slug> |
47 | 53 | taskflow board update <slug> [--name <name>] [--description <desc>] |
48 | | -taskflow board delete <slug> |
| 54 | +taskflow board delete <slug> # soft-delete (admin only) |
49 | 55 | taskflow board reassign <slug> --target_board <slug> [--states <state1,state2>] |
| 56 | +taskflow board detail <slug> # full board dump |
| 57 | +taskflow board overview <slug> # task counts by state |
| 58 | +taskflow board audit <slug> # board audit log |
50 | 59 | ``` |
51 | 60 |
|
52 | 61 | ### task |
53 | 62 |
|
54 | 63 | ``` |
55 | | -taskflow task create <slug> --title <title> [--description <desc>] [--priority <priority>] [--tags <t1,t2>] |
| 64 | +taskflow task create <slug> --title <title> [--description <desc>] [--priority <priority>] [--tags <t1,t2>] [--assignee <name>] |
56 | 65 | taskflow task list <slug> [--state <state>] [--assignee <name>] [--priority <p>] [--tag <tag>] [--q <search>] |
57 | 66 | [--sort <field>] [--order <asc|desc>] [--include_closed] [--include_deleted] |
58 | 67 | taskflow task get <slug> <num> |
59 | | -taskflow task update <slug> <num> [--title <title>] [--description <desc>] [--priority <p>] [--tags <t1,t2>] |
| 68 | +taskflow task detail <slug> <num> # task with comments, deps, attachments, audit |
| 69 | +taskflow task update <slug> <num> [--title <title>] [--description <desc>] [--priority <p>] [--tags <t1,t2>] [--assignee <name>] |
60 | 70 | taskflow task transition <slug> <num> --transition <name> [--comment <text>] |
61 | 71 | taskflow task delete <slug> <num> |
| 72 | +taskflow task search [--q <query>] [--state <state>] [--assignee <name>] [--priority <p>] [--include_closed] |
| 73 | +taskflow task audit <slug> <num> # task audit log |
62 | 74 | ``` |
63 | 75 |
|
64 | 76 | ### workflow |
65 | 77 |
|
66 | 78 | ``` |
67 | 79 | taskflow workflow get <slug> |
68 | | -taskflow workflow set <slug> (reads workflow JSON from stdin or --workflow flag) |
| 80 | +taskflow workflow set <slug> # reads workflow JSON from --workflow flag |
69 | 81 | taskflow workflow health <slug> |
70 | 82 | ``` |
71 | 83 |
|
@@ -103,34 +115,22 @@ taskflow webhook update <id> [--url <url>] [--events <e1,e2>] [--active <bool>] |
103 | 115 | taskflow webhook delete <id> |
104 | 116 | ``` |
105 | 117 |
|
106 | | -### audit |
| 118 | +### delivery |
107 | 119 |
|
108 | 120 | ``` |
109 | | -taskflow audit list <slug> <num> # task audit log |
110 | | -taskflow audit list <slug> # board audit log |
| 121 | +taskflow delivery list <id> # webhook delivery attempts |
111 | 122 | ``` |
112 | 123 |
|
113 | | -### Convenience commands |
| 124 | +### tag |
114 | 125 |
|
115 | 126 | ``` |
116 | | -taskflow board detail <slug> # complete board dump (tasks, comments, deps, audit) |
117 | | -taskflow admin stats # system-wide statistics |
118 | | -taskflow search --q <query> [--state] [--assignee] [--priority] # cross-board search |
| 127 | +taskflow tag list <slug> # tags in use on a board |
119 | 128 | ``` |
120 | 129 |
|
121 | | -## Input Validation |
122 | | -
|
123 | | -The CLI validates required flags before making HTTP requests. Missing required flags show an error with usage: |
124 | | -
|
125 | | -``` |
126 | | -$ taskflow webhook create |
127 | | -Usage: |
128 | | - taskflow webhook create [flags] |
129 | | -... |
130 | | -missing required flag(s): --url, --events, --secret |
131 | | -``` |
| 130 | +## Special Values |
132 | 131 |
|
133 | | -Optional fields (like `--description`, `--tags`) are not required. |
| 132 | +- **`@me`** — use as `--assignee @me` to assign tasks to yourself or filter by your own tasks |
| 133 | +- **Priority values** — `critical`, `high`, `medium`, `low`, or omit for none |
134 | 134 |
|
135 | 135 | ## Output Formats |
136 | 136 |
|
|
0 commit comments