Use tapd task commands to create, inspect, list, update, and query TAPD
tasks.
All task commands use the configured TAPD credentials from tapd login or the
TAPD_ACCESS_TOKEN / TAPD_CLIENT_ID / TAPD_CLIENT_SECRET environment
variables.
Most task commands require a workspace:
tapd task list --workspace-id 123456The short form is also supported:
tapd task list -w 123456Task commands default to table output:
tapd task list -w 123456Use JSON when piping to another program or when you need the full SDK response shape:
tapd task list -w 123456 --format jsontapd task create -w 123456 --name "Implement login" --owner aliceUseful optional flags:
tapd task create \
-w 123456 \
--name "Implement login" \
--description "Add TAPD credential validation" \
--owner alice \
--creator bob \
--status open \
--story-ids 1111112222001000001 \
--iteration-id 2222223333001000001 \
--priority-label High \
--begin 2026-06-01 \
--due 2026-06-14tapd task view 1111112222001000001 -w 123456This command queries the task list API with the requested ID and returns the first matching task.
tapd task list -w 123456 --limit 20 --page 1Filter by common fields:
tapd task list -w 123456 --owner alice
tapd task list -w 123456 --creator bob
tapd task list -w 123456 --status progressing
tapd task list -w 123456 --story-ids 1111112222001000001
tapd task list -w 123456 --iteration-id 2222223333001000001
tapd task list -w 123456 --ids 1111112222001000001,1111112222001000002Request specific fields from TAPD:
tapd task list -w 123456 --fields id,name,status,owner,creator,progresstapd task count -w 123456
tapd task count -w 123456 --owner alice
tapd task count -w 123456 --status donetapd task update 1111112222001000001 -w 123456 --name "Updated task title"Update several common fields:
tapd task update 1111112222001000001 \
-w 123456 \
--current-user alice \
--status progressing \
--owner bob \
--progress 50 \
--due 2026-06-14tapd task update exposes common fields currently mapped by the CLI. Use
tapd task batch-update when you need fields not exposed as flags.
Batch updates are read from a JSON file:
tapd task batch-update -w 123456 --file tasks.jsonThe file can contain an array of update objects:
[
{
"id": 1111112222001000001,
"name": "Updated task title",
"owner": "alice"
},
{
"id": 1111112222001000002,
"status": "done",
"progress": 100
}
]The CLI adds workspace_id to each item when it is missing.
The file can also contain the SDK request object:
{
"workitems": [
{
"id": 1111112222001000001,
"name": "Updated task title"
}
]
}The top-level workspace_id is always set from --workspace-id.
List task fields:
tapd task fields -w 123456Use JSON output to inspect full field options:
tapd task fields -w 123456 --format jsonList task changes:
tapd task changes -w 123456 --task-id 1111112222001000001Count task changes:
tapd task changes count -w 123456 --task-id 1111112222001000001Useful filters:
tapd task changes -w 123456 --creator alice
tapd task changes -w 123456 --change-summary "status"
tapd task changes -w 123456 --need-parse-changes=falsetapd task removed -w 123456
tapd task removed -w 123456 --creator alice
tapd task removed -w 123456 --archivedtapd task by-view remains unavailable because the current SDK does not expose
a typed task-by-view API.
The task command implementation currently lives in:
internal/cmd/task.go
When adding or renaming task commands:
- Reuse the typed SDK methods from
github.com/go-tapd/tapd. - Keep table output compact and use
--format jsonfor full response data. - Update
features.md. - Update this document.
- Regenerate shell completion files if they have been installed locally.