Skip to content

CLI Reference

Complete reference for all Gira commands and options.

Table of Contents

Ticket Management

Global Options

These options can be used with any command:

  • --help - Show help message and exit
  • --version - Show version number and exit

Commands

gira ticket update

Update one or more tickets.

gira ticket update [ticket_ids] [options]

Arguments:

  • ticket_ids - Ticket ID(s) to update (supports patterns like 'GCM-1*', ranges like 'GCM-1..10', use '-' to read IDs from stdin, or omit for --stdin JSON) (optional)
  • Type: array
  • Pattern: ^[A-Z]{2,4}-\d+$
  • Examples: GIRA-123, GCM-456, PROJ-1

Options:

  • -t, --title - New title
  • Default:
  • Min length: 3
  • Max length: 200

  • -d, --description - New description (use '-' for stdin, 'editor' to open editor)

  • Default:
  • Max length: 5000

  • --description-file - Read description from a file

  • Default:
  • Examples: ticket-description.md, docs/feature-spec.md, /tmp/bug-report.txt

  • -s, --status - New status

  • Choices: backlog, todo, in_progress, review, done
  • Default:
  • Examples: backlog, todo, in_progress

  • -p, --priority - New priority

  • Choices: low, medium, high, critical
  • Default:
  • Examples: medium, high

  • --type - New ticket type

  • Default:

  • -a, --assignee - New assignee (use 'none' to clear)

  • Default:
  • Pattern: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
  • Examples: user@example.com, john.doe@company.org

  • --add-labels - Labels to add (comma-separated)

  • Default:

  • --remove-labels - Labels to remove (comma-separated)

  • Default:

  • -e, --epic - New epic ID (use 'none' to clear)

  • Default:

  • --parent - New parent ID (use 'none' to clear)

  • Default:

  • --sprint - Sprint ID to assign ticket to (use 'current' for active sprint, 'none' to clear)

  • Default:

  • -sp, --story-points - New story points estimate (use 0 to clear)

  • Type: integer
  • Default:

  • -o, --output - Output format: text, json

  • Choices: text, json, table, csv
  • Default: text
  • Examples: json, table

  • -q, --quiet - Only output ticket ID

  • Type: boolean

  • --strict - Enforce strict assignee validation (no external assignees)

  • Type: boolean

  • --stdin - Read JSON array of ticket updates from stdin

  • Type: boolean

  • --jsonl - Read JSONL (JSON Lines) format for streaming large datasets

  • Type: boolean

  • --dry-run - Preview changes without saving them

  • Type: boolean

  • -f, --force - Legacy option (confirmation removed for AI-friendliness)

  • Type: boolean

  • --cf - Update custom field value in format 'name=value' (can be used multiple times)

  • Type: array
  • Default:

  • --remove-cf - Remove custom field by name (can be used multiple times)

  • Type: array
  • Default:

Examples:

gira ticket update GCM-123 --status in_progress
gira ticket update PROJ-456 --assignee jane@example.com --priority high
gira ticket update GCM-789 --add-label "backend" --story-points 5