glab-workitems
glab work-items
Create, list, and delete GitLab work items — GitLab's unified work tracking model for tasks, OKRs, key results, epics, incidents, test cases, and related planning objects.
Parent hierarchy
create and update accept --parent <reference>. A positive IID (42 or #42) resolves in the child's project/group scope; qualified references such as group/project#42 or group&42, and issue/work-item URLs, can select another namespace on the same instance. Quote references containing # or & in shell examples. glab resolves the parent to its global work-item ID and rejects URLs whose configured API host differs from the child's API host. Confirm the child, parent, host routing, and intended hierarchy before approving the write; server permissions and hierarchy rules still apply. Omitting the flag leaves the parent unchanged on update; an empty string is not a remove-parent operation.
# After approving the hierarchy change
glab work-items update 42 --parent 'group/project#40' --repo group/project
Date filters
list supports --created-after, --created-before, --updated-after, --updated-before, --closed-after, --closed-before, --due-after, and --due-before. After bounds are inclusive; before bounds are exclusive. Values accept YYYY-MM-DD, RFC 3339 with offset, or signed relative offsets such as -7d, 2w, -1m, and 1y (days/weeks/months/years, amount -9999 through 9999). Relative dates are evaluated by the server relative to today; date-only absolute values use the server's time zone. Use explicit-offset timestamps when reproducible boundaries matter.
Date filters require GitLab 19.4 or later; relative dates require GitLab 19.6 or later. A closed-date filter implies --state closed unless state was explicitly supplied; --state all is allowed, --state opened is rejected. Date arguments are only sent when specified, so an older server can still accept an unfiltered query but may reject a requested filter. Cursor pagination repeats the filters; relative bounds can move between runs.