neo ticket
Manage team tickets.
A ticket is team-scoped planning work, addressed KEY-N, and a team’s board is its tickets. The repo-scoped twin is neo issue, which works a repository’s intake (owner/repo#N); see neo docs tickets-and-issues.
neo ticket [OPTIONS] <COMMAND>neo ticket create
Section titled “neo ticket create”Create a ticket on a team’s board
neo ticket create [OPTIONS] --team <TEAM> --title <TITLE>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
--team |
<TEAM> |
yes | Team key (ENG or <workspace>/ENG) whose board the ticket lands on. A ticket has no repo, so this is its only scope |
|||
--title |
<TITLE> |
yes | Ticket title, and the only other required flag here. It is the whole of what a board, a search result or a link preview shows; the detail belongs in --body |
|||
--body |
<BODY> |
no | "" |
Markdown description | ||
--priority |
<PRIORITY> |
no | none, urgent, high, medium, low |
Priority to file it at. Left to the server’s default when omitted | ||
--json |
no | Print the raw response as JSON |
neo ticket list
Section titled “neo ticket list”List a team’s board.
A board holds the team’s tickets and nothing else, so every row renders KEY-N. A repo-bound issue lives on its repo’s issue list (neo issue list <owner>/<repo>) even when it carries the same team.
neo ticket list [OPTIONS] --team <TEAM>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
--team |
<TEAM> |
yes | Team key (ENG or <workspace>/ENG) whose board to list |
|||
--state |
<STATE> |
no | open |
open, closed, all, backlog, todo, in_progress, in_review, done, cancelled, duplicate |
open (non-terminal), closed (done/cancelled/duplicate), all, or one exact status |
|
--json |
no | Print the raw response as JSON |
neo ticket view
Section titled “neo ticket view”Show one ticket with its comments
neo ticket view [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--json |
no | Print {issue, comments} as JSON |
neo ticket context
Section titled “neo ticket context”Agent context pack for a ticket (always JSON).
The ticket plus its labels, links, comments, and every linked PR (open AND closed) with a checks summary and review comments/threads.
neo ticket context [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
neo ticket close
Section titled “neo ticket close”Close a ticket with a terminal status
neo ticket close [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--reason |
<REASON> |
no | done |
done, cancelled, duplicate |
Terminal status to close it with | |
--json |
no | Print the updated ticket as JSON |
neo ticket edit
Section titled “neo ticket edit”Edit a ticket’s title, body, or priority.
Only supplied fields change; anything omitted keeps its current value. At least one of --title, --body, --body-file, or --priority is required.
neo ticket edit [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--title |
<TITLE> |
no | Replace the title | |||
--body |
<BODY> |
no | Markdown description. Mutually exclusive with --body-file |
|||
--body-file |
<BODY_FILE> |
no | Read the markdown description from a file instead of a shell argument — - reads stdin. Avoids shell-quoting long bodies. Mutually exclusive with --body |
|||
--priority |
<PRIORITY> |
no | none, urgent, high, medium, low |
Replace the priority | ||
--json |
no | Print the updated ticket as JSON |
neo ticket reopen
Section titled “neo ticket reopen”Re-open a closed ticket
neo ticket reopen [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--json |
no | Print the updated ticket as JSON |
neo ticket comment
Section titled “neo ticket comment”Comment on a ticket
neo ticket comment [OPTIONS] --body <BODY> <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--body |
<BODY> |
yes | Markdown comment body | |||
--json |
no | Print the created comment as JSON |
neo ticket claim
Section titled “neo ticket claim”Atomically claim a ticket (backlog/todo → in_progress, assigned to you).
Exactly one claimer wins; a lost claim exits non-zero with the server’s 409 — the agent loop’s mutual exclusion.
neo ticket claim [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--json |
no | Print the claimed ticket as JSON |
neo ticket release
Section titled “neo ticket release”Release a claimed ticket: in_progress → todo, drop your assignment
neo ticket release [OPTIONS] <TICKET>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket to act on, as ENG-7 or <workspace>/ENG-7 |
||||
--json |
no | Print the released ticket as JSON |
neo ticket track
Section titled “neo ticket track”Record that a ticket tracks a repo-bound issue.
The direction is fixed: planning work tracks intake, never the reverse. The inverse (tracked_by) row is written by the server in the same transaction and is never created directly.
neo ticket track [OPTIONS] <TICKET> <ISSUE>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket doing the tracking, as ENG-7 or <workspace>/ENG-7 |
||||
<ISSUE> |
yes | Repo-bound issue being tracked, as acme/api#1526 or api#1526 (owner defaults to your handle). A bare #1526 is not accepted — a leading # is a comment to the shell |
||||
--json |
no | Print the created link as JSON |
neo ticket untrack
Section titled “neo ticket untrack”Remove a ticket’s tracking link to a repo-bound issue.
Both rows of the pair go in one transaction. There is no --json: the route answers 204 with no body, so exit 0 is the whole result.
neo ticket untrack [OPTIONS] <TICKET> <ISSUE>| Option | Value | Required | Default | Env | Values | Description |
|---|---|---|---|---|---|---|
<TICKET> |
yes | Ticket that was doing the tracking, as ENG-7 or <workspace>/ENG-7 |
||||
<ISSUE> |
yes | Repo-bound issue to stop tracking, as acme/api#1526 |