CLI Reference¶
Complete reference for all Gira commands and options.
Table of Contents¶
Archive Management¶
-
gira archive done- Archive all done tickets with optional filtering. -
gira archive list- List archived tickets with optional filtering. -
gira archive old- Archive tickets older than specified number of days. -
gira archive restore- Restore an archived ticket back to the board. -
gira archive suggest- Suggest tickets to archive based on various criteria. -
gira archive ticket- Archive a single ticket.
Comments¶
-
gira comment add- Add a comment to a ticket or epic. -
gira comment attach- Attach files to an existing comment. -
gira comment delete- Delete a comment from a ticket or epic. -
gira comment list- List all comments on a ticket or epic.
Configuration¶
-
gira config rename-prefix- Rename the ticket ID prefix for the entire project. -
gira config reset- Reset configuration to default values. -
gira config set- Set a configuration value.
Core Commands¶
-
gira board- Display the kanban board. -
gira init- Initialize a new Gira project in the current directory. -
gira query- Execute queries and manage saved queries. -
gira sync- Detect and resolve ticket ID conflicts from merge operations. -
gira sync- Detect and resolve ticket ID conflicts from merge operations.
Documentation¶
gira docs generate- Generate documentation for Gira including CLI reference, AI agent guides, and workflow documentation.
Epic Management¶
-
gira epic create- Create a new epic. -
gira epic delete- Delete or archive an epic. -
gira epic list- List epics with optional filters. -
gira epic show- Show details of a specific epic. -
gira epic update- Update an existing epic.
Migration¶
gira migrate hybrid- Migrate the project to use hybrid directory structure for backlog tickets.
Other Commands¶
-
gira ai ai-help- Show AI-optimized command examples and patterns. -
gira ai examples- Alias for ai-help command. -
gira ai setup- Set up AI documentation for the project. -
gira ai status- Show AI documentation files and integration status. -
gira ai-help- Show AI-optimized command examples and patterns. -
gira attachment add- Add attachment(s) to a ticket or epic. -
gira attachment download- Download attachment(s) to specified location without opening. -
gira attachment list- List all attachments for a ticket or epic. -
gira backlog- Show tickets in the backlog with enhanced filtering and display options. -
gira cache clear- Clear cached data. -
gira cache status- Show cache statistics. -
gira context epic- Show ticket in the context of its epic. -
gira context references- Show where this ticket is referenced (comments, commits). -
gira context related- Find tickets related by various criteria. -
gira context show- Display comprehensive context for a ticket (explicit show subcommand). -
gira context timeline- Show activity timeline for a ticket. -
gira context tree- Show visual dependency tree for a ticket. -
gira export csv- Export tickets to CSV format -
gira export json- Export tickets to JSON format -
gira export md- Export tickets to Markdown format -
gira ext disable- Disable hook execution. -
gira ext enable- Enable hook execution. -
gira ext init- Initialize the hooks directory with example templates. -
gira ext install- Install a specific hook template. -
gira ext list- List all available hooks and their status. -
gira ext show- Display the contents of a hook file. -
gira ext test- Test a hook with sample data. -
gira hooks install- Install Git hooks for Gira integration. -
gira hooks status- Show the status of Git hooks for Gira integration. -
gira hooks uninstall- Uninstall Git hooks for Gira integration. -
gira metrics duration- Analyze time tickets spend in each status to identify bottlenecks. -
gira metrics overview- Display comprehensive metrics overview for the project. -
gira metrics trends- Display ticket creation, completion, and backlog trends over time. -
gira metrics velocity- Display team velocity trends across sprints. -
gira operation cancel- Cancel a running operation. -
gira operation cleanup- Clean up old operation snapshots. -
gira operation list- List async operations. -
gira operation resume- Resume operations from persistence. -
gira operation status- Check the status of an async operation. -
gira operation wait- Wait for an operation to complete. -
gira query-list- List all saved queries (DEPRECATED). -
gira query-run- Run a saved query by name (DEPRECATED). -
gira query-save- Save a query expression for later reuse (DEPRECATED). -
gira storage configure- Configure storage backend for attachments. -
gira storage status- Check storage configuration and credential status. -
gira storage validate- Validate storage credentials and show detailed information. -
gira webhook add- Add a new webhook endpoint. -
gira webhook disable- Disable webhooks globally or a specific webhook endpoint. -
gira webhook enable- Enable webhooks globally or a specific webhook endpoint. -
gira webhook health- Check webhook endpoint health and connectivity. -
gira webhook list- List configured webhook endpoints. -
gira webhook remove- Remove a webhook endpoint. -
gira webhook stats- Show webhook delivery statistics. -
gira webhook test- Test a webhook endpoint with a sample payload. -
gira webhook webhook filter help- Show help for webhook filter expressions. -
gira webhook webhook filter validate- Validate a webhook filter expression. -
gira workflow analyze- Analyze workflow patterns and suggest improvements. -
gira workflow apply- Apply a predefined workflow template. -
gira workflow config- Display current workflow configuration. -
gira workflow diagram- Display visual workflow diagram. -
gira workflow enforce- Set workflow enforcement level. -
gira workflow migrate- Migrate tickets from one workflow to another. -
gira workflow rule- Manage custom workflow rules. -
gira workflow show- Display available workflow transitions for a ticket. -
gira workflow stats- Show workflow statistics and metrics. -
gira workflow strict- Enable or disable strict workflow enforcement. -
gira workflow templates- List available workflow templates. -
gira workflow transitions- Manage allowed status transitions. -
gira workflow validate- Validate all tickets against workflow rules.
Shell Completion¶
-
gira completion install- Install shell completion for Gira. -
gira completion show- Show completion script for manual installation.
Sprint Management¶
-
gira sprint assign- Assign multiple tickets to a sprint. -
gira sprint assign-by-dates- Assign tickets to sprint based on completion dates. -
gira sprint assign-by-epic- Assign all tickets from an epic to a sprint. -
gira sprint assign-wizard- Interactive wizard for assigning unassigned tickets to sprints. -
gira sprint close- Close a sprint (change status to completed). -
gira sprint complete- Complete a sprint (alias for close). -
gira sprint create- Create a new sprint. -
gira sprint delete- Delete or archive a sprint. -
gira sprint generate-historical- Generate historical sprints from completed epics and tickets. -
gira sprint list- List all sprints. -
gira sprint show- Show details of a specific sprint. -
gira sprint start- Start a sprint (change status from planned to active). -
gira sprint unassign- Remove tickets from sprint assignments. -
gira sprint update- Update sprint fields.
Team Management¶
-
gira team add- Add a new team member. -
gira team discover- Discover team members from Git commit history. -
gira team list- List all team members. -
gira team remove- Remove a team member.
Ticket Management¶
-
gira ticket add-dep- Add a dependency relationship between tickets. -
gira ticket blame- Discover tickets associated with specific file lines. -
gira ticket bulk-add-deps- Add dependencies to multiple tickets at once. -
gira ticket bulk-remove-deps- Remove dependencies from multiple tickets at once. -
gira ticket bulk-update- Update multiple tickets with the same changes. -
gira ticket clear-deps- Clear all dependencies from one or more tickets. -
gira ticket commits- List all commits associated with a ticket. -
gira ticket create- Create a new ticket. -
gira ticket delete- Delete or archive ticket(s). -
gira ticket deps- Show dependency relationships for a ticket. -
gira ticket edit- Edit a ticket (alias for update). -
gira ticket list- List tickets with optional filters. -
gira ticket ls- List tickets (alias for list). -
gira ticket move- Move ticket(s) to a different status/swimlane. -
gira ticket mv- Move ticket(s) to a different status (alias for move). -
gira ticket order- Set the order of a ticket within its status column. -
gira ticket remove-dep- Remove a dependency relationship between tickets. -
gira ticket rm- Remove ticket(s) (alias for delete). -
gira ticket show- Show details of a specific ticket. -
gira ticket ticket estimate batch- Interactive batch estimation of multiple tickets. -
gira ticket ticket estimate compare- Compare two tickets side-by-side for relative estimation. -
gira ticket ticket estimate relative- Show base ticket details while estimating other tickets. -
gira ticket ticket estimate set- Set story points for one or more tickets. -
gira ticket tree- Display parent ticket and all subtasks in a hierarchical tree view. -
gira ticket update- Update one or more tickets.
Global Options¶
These options can be used with any command:
--help- Show help message and exit--version- Show version number and exit
Commands¶
gira init¶
Initialize a new Gira project in the current directory.
Arguments:
name- Project name (optional)- Type: string
Options:
-d, --description- Project description-
Max length: 5000
-
-p, --prefix- Ticket ID prefix (2-4 uppercase letters) -
Default:
-
-f, --force- Overwrite existing project -
Type: boolean
-
--strict-workflow- Use traditional linear workflow instead of flexible transitions -
Type: boolean
-
-w, --workflow- Workflow template: scrum, kanban, support-desk, bug-tracking, minimal, custom -
Default:
-
--non-interactive- Run without prompts (all required options must be provided) - Type: boolean
Examples:
gira board¶
Display the kanban board.
Options:
-a, --assignee- Filter by assignee- Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
-p, --priority- Filter by priority - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
-t, --type- Filter by ticket type -
Default:
-
-l, --label- Filter by label -
Default:
-
--story-points-eq- Filter by exact story point value - Type: integer
-
Default:
-
--story-points-gt- Filter by story points greater than value - Type: integer
-
Default:
-
--story-points-lt- Filter by story points less than value - Type: integer
-
Default:
-
--created-after- Filter tickets created after date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--created-before- Filter tickets created before date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--updated-after- Filter tickets updated after date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--updated-before- Filter tickets updated before date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--due-after- Filter tickets due after date (YYYY-MM-DD) -
Default:
-
--due-before- Filter tickets due before date (YYYY-MM-DD) -
Default:
-
--due-on- Filter tickets due on specific date (YYYY-MM-DD) -
Default:
-
--overdue- Show only tickets past their due date -
Type: boolean
-
--has-comments- Show only tickets that have comments -
Type: boolean
-
--no-comments- Show only tickets without comments -
Type: boolean
-
--has-parent- Show only subtasks that have a parent ticket -
Type: boolean
-
--no-parent- Show only tickets that are not subtasks -
Type: boolean
-
--in-sprint- Filter tickets in a specific sprint -
Default:
-
--not-in-sprint- Filter tickets not in a specific sprint -
Default:
-
--not-in-epic- Filter tickets not linked to a specific epic -
Default:
-
-c, --compact- Show compact view -
Type: boolean
-
--fast- Use optimized display for large projects -
Type: boolean
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--json- Output in JSON format (shorthand for --format json) -
Type: boolean
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira backlog¶
Show tickets in the backlog with enhanced filtering and display options.
Options:
-a, --assignee- Filter by assignee- Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
-p, --priority- Filter by priority (critical, high, medium, low) - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
-t, --type- Filter by type (bug, feature, task, etc.) -
Default:
-
-l, --label- Filter by label -
Default:
-
--epic- Filter by epic ID (comma-separated for multiple) -
Default:
-
--no-epic- Show only tickets without epic assignment -
Type: boolean
-
--search- Search text in ticket title and description -
Default:
-
--sort- Sort by: priority (default), created, updated, title, id -
Default: priority
-
--limit- Limit number of results shown - Type: integer
-
Default:
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--fields- Comma-separated list of fields to include in JSON output -
Default:
-
--counts- Show summary counts by priority -
Type: boolean
-
--ready- Show only ready tickets (no blockers, assigned) -
Type: boolean
-
--unassigned- Show only unassigned tickets -
Type: boolean
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira query¶
Execute queries and manage saved queries.
Options:
-e, --entity- Type of entity to search-
Default: ticket
-
-f, --format- Output format - Choices: text, json, table, csv
- Default: table
-
Examples: json, table
-
-l, --limit- Maximum number of results to return - Type: integer
-
Default:
-
-o, --offset- Number of results to skip - Type: integer
-
Default: 0
-
-s, --sort- Sort results by field -
Default:
-
--filter-json- JSONPath expression to filter JSON output -
Default:
-
--no-header- Don't show table header -
Type: boolean
-
-v, --verbose- Show detailed error messages -
Type: boolean
-
--save- Save query with given name -
Default:
-
-d, --description- Description for saved query - Default:
-
Max length: 5000
-
--force- Overwrite existing saved query -
Type: boolean
-
--color/--no-color- Enable/disable colored output - Type: boolean
- Default: True
Examples:
gira query-save¶
Save a query expression for later reuse (DEPRECATED).
Arguments:
name- Name for the saved query (required)-
Type: string
-
query_string- Query expression to save (required) - Type: string
- Examples: ..py$, ^test_., (bug|fix):
Options:
-d, --description- Description of what the query returns- Default:
-
Max length: 5000
-
-e, --entity- Entity type the query targets -
Default: ticket
-
-f, --force- Overwrite existing query with the same name - Type: boolean
Examples:
gira query-list¶
List all saved queries (DEPRECATED).
Options:
-e, --entity- Filter by entity type-
Default:
-
-v, --verbose- Show detailed information -
Type: boolean
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
- Examples: json, table
Examples:
gira query-run¶
Run a saved query by name (DEPRECATED).
Arguments:
name- Name of the saved query to run (required)- Type: string
Options:
-f, --format- Output format- Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
-l, --limit- Maximum number of results - Type: integer
-
Default:
-
-o, --offset- Number of results to skip - Type: integer
-
Default: 0
-
-s, --sort- Sort results by field -
Default:
-
--filter-json- JSONPath expression -
Default:
-
--no-header- Don't show table header -
Type: boolean
-
-v, --verbose- Show detailed error messages - Type: boolean
Examples:
gira graph¶
Arguments:
entity_args- Ticket ID (e.g., GCM-123) or epic command (e.g., epic EPIC-001) (optional)- Type: array
Options:
-d, --depth- Maximum depth to traverse relationships- Type: integer
-
Default: 2
-
--blockers/--no-blockers- Show tickets that block this ticket - Type: boolean
-
Default: True
-
--blocks/--no-blocks- Show tickets blocked by this ticket - Type: boolean
-
Default: True
-
--parent/--no-parent- Show parent ticket relationship - Type: boolean
-
Default: True
-
--children/--no-children- Show child tickets - Type: boolean
-
Default: True
-
--epic/--no-epic- Show epic relationship - Type: boolean
-
Default: True
-
-f, --format- Output format: tree, json - Choices: text, json, table, csv
- Default: tree
-
Examples: json, table
-
--epics- Show all epics overview -
Type: boolean
-
--epic-deps- Show dependencies between epics -
Type: boolean
-
--mixed- Show mixed view of epics and tickets -
Type: boolean
-
-s, --status- Filter epics by status (for --epics mode) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-o, --owner- Filter epics by owner (for --epics mode) - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
--min-progress- Filter epics by minimum progress percentage - Type: integer
-
Default:
-
--all-tickets- Show all tickets in epic view (default shows first 5 per status) -
Type: boolean
-
--compact- Use compact mode for large graphs -
Type: boolean
-
--stats- Show graph statistics panel -
Type: boolean
-
--legend- Show legend for icons and colors - Type: boolean
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--enhanced- Use enhanced visual display with panels -
Type: boolean
-
--export- Export graph to file (format determined by extension: .svg, .png, .html, .mermaid, .dot) - Default:
Examples:
gira describe¶
Arguments:
command- Command path to describe (e.g., 'ticket create') (optional)- Type: array
Options:
-f, --format- Output format: json or markdown- Choices: text, json, table, csv
- Default: json
-
Examples: json, table
-
--no-color- Explicitly disable syntax highlighting (default is already no color) -
Type: boolean
-
--color- Enable syntax highlighting (colors the JSON output) -
Type: boolean
-
--theme- Syntax highlighting theme (requires --color) -
Default: monokai
-
--indent- JSON indentation spaces - Type: integer
-
Default: 2
-
--compact- Compact JSON output -
Type: boolean
-
--render- Render markdown with Rich formatting - Type: boolean
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--examples/--no-examples- Include command examples in markdown - Type: boolean
-
Default: True
-
--full- Generate full documentation with all commands - Type: boolean
Examples:
gira backup¶
Options:
-o, --output- Output file path. If not specified, creates backup in current directory- Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--exclude-archived- Exclude archived tickets from the backup - Type: boolean
Examples:
gira restore¶
Arguments:
backup_file- Path to the backup file to restore (required)- Type: string
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-t, --target- Target directory for restoration. Defaults to current directory- Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
-f, --force- Skip confirmation prompt - Type: boolean
Examples:
gira sync¶
Detect and resolve ticket ID conflicts from merge operations.
Options:
-n, --dry-run- Show what would be changed without making changes- Type: boolean
Examples:
gira ai-help¶
Show AI-optimized command examples and patterns.
Arguments:
agent- Specific AI agent (claude, gemini, etc.) (optional)- Type: string
Examples:
gira sync¶
Detect and resolve ticket ID conflicts from merge operations.
Options:
-n, --dry-run- Show what would be changed without making changes- Type: boolean
Examples:
gira ticket create¶
Create a new ticket.
Arguments:
title- Ticket title (required unless using --stdin) (optional)- Type: string
- Min length: 3
- Max length: 200
Options:
-d, --description- Ticket description (use '-' for stdin, 'editor' to open editor)-
Max length: 5000
-
--description-file- Read description from a file - Default:
-
Examples: ticket-description.md, docs/feature-spec.md, /tmp/bug-report.txt
-
-p, --priority- Priority level - Choices: low, medium, high, critical
- Default: medium
-
Examples: medium, high
-
-a, --assignee- Assignee - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
-t, --type- Ticket type -
Default: task
-
-l, --labels- Comma-separated labels -
Default:
-
-e, --epic- Epic ID -
Default:
-
--parent- Parent ticket ID for subtasks -
Default:
-
-sp, --story-points- Story points estimate - Type: integer
-
Default:
-
-s, --status- Initial status (e.g., backlog, todo, in_progress) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-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 tickets from stdin for bulk creation -
Type: boolean
-
--jsonl- Read JSONL (JSON Lines) format for streaming large datasets -
Type: boolean
-
--csv- Read CSV format from stdin for bulk creation -
Type: boolean
-
--csv-delimiter- CSV delimiter character (default: comma) -
Default: ,
-
--skip-invalid- Skip invalid rows and continue processing -
Type: boolean
-
--fail-on-error/--no-fail-on-error- Exit with error if any row fails (default: true) - Type: boolean
-
Default: True
-
--cf- Custom field value in format 'name=value' (can be used multiple times) - Type: array
- Default:
Examples:
gira ticket list¶
List tickets with optional filters.
Options:
-q, --query- Query expression (e.g., 'status:todo AND priority:high')- Default:
-
Examples: ..py$, ^test_., (bug|fix):
-
-s, --status- Filter by status - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-a, --assignee- Filter by assignee - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
-t, --type- Filter by type -
Default:
-
-p, --priority- Filter by priority - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
-l, --label- Filter by label -
Default:
-
--parent- Filter by parent ticket ID (show subtasks) -
Default:
-
--blocked- Show only tickets blocked by unresolved dependencies -
Type: boolean
-
--story-points-eq- Filter by exact story point value - Type: integer
-
Default:
-
--story-points-gt- Filter by story points greater than value - Type: integer
-
Default:
-
--story-points-lt- Filter by story points less than value - Type: integer
-
Default:
-
--created-after- Filter tickets created after date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--created-before- Filter tickets created before date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--updated-after- Filter tickets updated after date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--updated-before- Filter tickets updated before date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--due-after- Filter tickets due after date (YYYY-MM-DD) -
Default:
-
--due-before- Filter tickets due before date (YYYY-MM-DD) -
Default:
-
--due-on- Filter tickets due on specific date (YYYY-MM-DD) -
Default:
-
--overdue- Show only tickets past their due date -
Type: boolean
-
--has-comments- Show only tickets that have comments -
Type: boolean
-
--no-comments- Show only tickets without comments -
Type: boolean
-
--has-parent- Show only subtasks that have a parent ticket -
Type: boolean
-
--no-parent- Show only tickets that are not subtasks -
Type: boolean
-
--in-sprint- Filter tickets in a specific sprint -
Default:
-
--not-in-sprint- Filter tickets not in a specific sprint -
Default:
-
--not-in-epic- Filter tickets not linked to a specific epic -
Default:
-
--epic- Filter tickets by epic ID (comma-separated for multiple epics) -
Default:
-
--no-epic- Show only tickets without epic assignment (alias for --not-in-epic without value) -
Type: boolean
-
--search- Search text in ticket fields (default: title and description) -
Default:
-
--search-in- Specify fields to search: title, description, id, status, type, priority, assignee, reporter, labels, all (can be used multiple times) - Type: array
-
Default:
-
--exact-match- Perform exact string match instead of fuzzy match -
Type: boolean
-
--regex-search- Treat search pattern as a regular expression - Type: boolean
-
Examples: ..py$, ^test_., (bug|fix):
-
--case-sensitive-search- Make search case-sensitive -
Type: boolean
-
--sort- Sort by: id, priority, created, updated, title, order -
Default: id
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--ids-only- Show only ticket IDs -
Type: boolean
-
--counts- Show summary counts -
Type: boolean
-
--include-archived- Include archived tickets in results -
Type: boolean
-
--fields- Comma-separated list of fields to include in JSON output (e.g., 'id,title,status' or use aliases like 'basics') -
Default:
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.priority=="high")].id') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira ticket show¶
Show details of a specific ticket.
Arguments:
ticket_id- Ticket ID to show (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-f, --format- Output format- Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: text
-
Examples: json, table
-
--json- Output as JSON (shorthand for --format json) -
Type: boolean
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$.title') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira ticket update¶
Update one or more tickets.
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 move¶
Move ticket(s) to a different status/swimlane.
Arguments:
ticket_ids- Ticket ID(s) to move (use '-' to read from stdin) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
target_status- Target status to move ticket to (required) - Type: string
- Pattern:
^\d{4}-\d{2}-\d{2}$ - Examples: 2025-01-20, 2025-12-31
Options:
-p, --position- Position in new column (1-based)- 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
-
--dry-run- Preview the move without performing it -
Type: boolean
-
--git/--no-git- Stage the move using 'git mv' - Type: boolean
-
Default:
-
-f, --force- Skip confirmation prompt -
Type: boolean
-
--force-transition- Skip workflow validation and force the transition -
Type: boolean
-
--confirm- Force confirmation prompt even if configured to skip -
Type: boolean
-
-a, --assignee- Filter by assignee (use 'me' for current user) - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
--from- Only move tickets from this status - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-e, --epic- Filter tickets by epic ID - Default:
- Pattern:
^EPIC-\d{3}$ -
Examples: EPIC-001, EPIC-002
-
-s, --sprint- Filter tickets by sprint ID (use 'current' for active sprint) - Default:
- Pattern:
^SPRINT-\d{3}$ -
Examples: SPRINT-001, SPRINT-002
-
-c, --comment- Add comment to moved tickets -
Default:
-
--assign- Assign tickets to user while moving -
Default:
-
--add-label- Add label to moved tickets -
Default:
-
--priority- Update priority while moving - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
--check-dependencies- Check for blocking dependencies -
Type: boolean
-
-b, --batch- Batch ID for undo operations -
Default:
-
--if-no-blockers- Only move if ticket has no unresolved blocking dependencies -
Type: boolean
-
--if-complete- Only move if ticket completion criteria are met -
Type: boolean
-
--if-allowed- Only move if workflow transition is allowed - Type: boolean
Examples:
gira ticket tree¶
Display parent ticket and all subtasks in a hierarchical tree view.
Arguments:
ticket_id- Ticket ID to display tree for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Examples:
gira ticket add-dep¶
Add a dependency relationship between tickets.
Arguments:
ticket_id- Ticket ID to add dependency to (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
dependency_id- Ticket ID that this ticket depends on (blocks this ticket) (required) - Type: string
- Pattern:
^\d{4}-\d{2}-\d{2}$ - Examples: 2025-01-20, 2025-12-31
Options:
--no-reciprocal- Don't add reciprocal relationship- Type: boolean
Examples:
gira ticket remove-dep¶
Remove a dependency relationship between tickets.
Arguments:
ticket_id- Ticket ID to remove dependency from (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
dependency_id- Ticket ID to remove as dependency (required) - Type: string
- Pattern:
^\d{4}-\d{2}-\d{2}$ - Examples: 2025-01-20, 2025-12-31
Options:
--no-reciprocal- Don't remove reciprocal relationship- Type: boolean
Examples:
gira ticket deps¶
Show dependency relationships for a ticket.
Arguments:
ticket_id- Ticket ID to show dependencies for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-f, --format- Output format: table, json- Choices: text, json, table, csv
- Default: table
- Examples: json, table
Examples:
gira ticket order¶
Set the order of a ticket within its status column.
Arguments:
ticket_id- Ticket ID to reorder (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
position- New position (1-based) (optional) - Type: integer
Options:
--before- Place before this ticket ID-
Default:
-
--after- Place after this ticket ID - Default:
Examples:
gira ticket delete¶
Delete or archive ticket(s).
Arguments:
ticket_ids- Ticket ID(s) to delete (use '-' to read from stdin) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-f, --force- Skip confirmation prompt-
Type: boolean
-
--confirm- Force confirmation prompts even when skip is configured -
Type: boolean
-
-p, --permanent- Permanently delete instead of archiving -
Type: boolean
-
-o, --output- Output format (json) - Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
-q, --quiet- Only output ticket IDs -
Type: boolean
-
--git/--no-git- Stage the archive/delete using 'git mv' or 'git rm' - Type: boolean
-
Default:
-
-s, --status- Filter by status (e.g., done) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
--older-than- Filter tickets older than duration (e.g., '30 days', '2 weeks') -
Default:
-
-e, --epic- Filter tickets by epic ID -
Default:
-
--dry-run- Show what would be archived without doing it -
Type: boolean
-
-b, --batch- Batch ID for undo operations - Default:
Examples:
gira ticket bulk-update¶
Update multiple tickets with the same changes.
Arguments:
ticket_ids- List of ticket IDs to update (optional if using stdin) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-t, --title- New title (applied to all tickets)- Default:
- Min length: 3
-
Max length: 200
-
-d, --description- New description (applied to all tickets) - Default:
-
Max length: 5000
-
-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:
-
-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 IDs -
Type: boolean
-
--strict- Enforce strict assignee validation (no external assignees) -
Type: boolean
-
--all-or-nothing- Fail entire operation if any ticket update fails -
Type: boolean
-
--dry-run- Preview changes without saving them -
Type: boolean
-
--stdin- Read CSV format from stdin (first column must be ticket ID) -
Type: boolean
-
--csv-delimiter- CSV delimiter character (default: comma) -
Default: ,
-
--skip-invalid- Skip invalid rows and continue processing -
Type: boolean
-
--fail-on-error/--no-fail-on-error- Exit with error if any update fails (default: true) - Type: boolean
-
Default: True
-
--transaction- Execute all updates atomically with rollback on failure - Type: boolean
Examples:
gira ticket bulk-add-deps¶
Add dependencies to multiple tickets at once.
Arguments:
ticket_ids- Ticket IDs to add dependencies to (optional if using file input) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-d, --deps- Comma-separated list of dependency IDs-
Default:
-
--from-csv- CSV file with dependency mappings -
Default:
-
--from-json- JSON file with dependency mappings -
Default:
-
--no-reciprocal- Don't add reciprocal relationships -
Type: boolean
-
--dry-run- Preview changes without applying them -
Type: boolean
-
--validate-only- Only validate dependencies, don't apply - Type: boolean
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-q, --quiet- Suppress progress output -
Type: boolean
-
--transaction- Execute all operations atomically with rollback on failure - Type: boolean
Examples:
gira ticket bulk-remove-deps¶
Remove dependencies from multiple tickets at once.
Arguments:
ticket_ids- Ticket IDs to remove dependencies from (optional if using file input) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-d, --deps- Comma-separated list of dependency IDs to remove-
Default:
-
--from-csv- CSV file with dependency mappings to remove -
Default:
-
--from-json- JSON file with dependency mappings to remove -
Default:
-
--all- Remove all dependencies from specified tickets -
Type: boolean
-
--no-reciprocal- Don't remove reciprocal relationships -
Type: boolean
-
--dry-run- Preview changes without applying them -
Type: boolean
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-q, --quiet- Suppress progress output -
Type: boolean
-
--transaction- Execute all operations atomically with rollback on failure - Type: boolean
Examples:
gira ticket clear-deps¶
Clear all dependencies from one or more tickets.
Arguments:
ticket_ids- Ticket IDs to clear all dependencies from (required)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
--no-reciprocal- Don't remove reciprocal relationships-
Type: boolean
-
-f, --force- Skip confirmation prompt -
Type: boolean
-
--dry-run- Preview changes without applying them -
Type: boolean
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-q, --quiet- Suppress progress output -
Type: boolean
-
--transaction- Execute all operations atomically with rollback on failure - Type: boolean
Examples:
gira ticket commits¶
List all commits associated with a ticket.
Arguments:
ticket_id- Ticket ID to show commits for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-n, --limit- Maximum number of commits to show- Type: integer
-
Default:
-
-f, --format- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
--json- Output as JSON (shorthand for --format json) -
Type: boolean
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira ticket blame¶
Discover tickets associated with specific file lines.
Arguments:
files- File(s) to analyze for ticket references (required)- Type: array
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-L, --lines- Line range (e.g., '10,20' or '10,+5')-
Default:
-
-f, --format- Output format: table, json, simple - Choices: text, json, table, csv
- Default: table
-
Examples: json, table
-
--ids-only- Show only ticket IDs (implies simple format) -
Type: boolean
-
--json- Output as JSON (shorthand for --format json) -
Type: boolean
-
-C, --context- Show N lines of context around blamed lines - Type: integer
-
Default:
-
--history- Show full history of tickets that touched specific lines (requires -L) -
Type: boolean
-
--no-cache- Bypass cache and force fresh blame analysis -
Type: boolean
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira ticket edit¶
Edit a ticket (alias for update).
Arguments:
ticket_ids- Ticket ID(s) to edit (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 mv¶
Move ticket(s) to a different status (alias for move).
Arguments:
ticket_ids- Ticket ID(s) to move (use '-' to read from stdin) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
target_status- Target status to move ticket to (required) - Type: string
- Pattern:
^\d{4}-\d{2}-\d{2}$ - Examples: 2025-01-20, 2025-12-31
Options:
-p, --position- Position in new column (1-based)- 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
-
--dry-run- Preview the move without performing it -
Type: boolean
-
--git/--no-git- Stage the move using 'git mv' - Type: boolean
-
Default:
-
-f, --force- Skip confirmation prompt -
Type: boolean
-
--force-transition- Skip workflow validation and force the transition -
Type: boolean
-
-a, --assignee- Filter by assignee (use 'me' for current user) - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
--from- Only move tickets from this status - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-e, --epic- Filter tickets by epic ID - Default:
- Pattern:
^EPIC-\d{3}$ -
Examples: EPIC-001, EPIC-002
-
-s, --sprint- Filter tickets by sprint ID (use 'current' for active sprint) - Default:
- Pattern:
^SPRINT-\d{3}$ -
Examples: SPRINT-001, SPRINT-002
-
-c, --comment- Add comment to moved tickets -
Default:
-
--assign- Assign tickets to user while moving -
Default:
-
--add-label- Add label to moved tickets -
Default:
-
--priority- Update priority while moving - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
--check-dependencies- Check for blocking dependencies -
Type: boolean
-
-b, --batch- Batch ID for undo operations - Default:
Examples:
gira ticket ls¶
List tickets (alias for list).
Options:
-q, --query- Query expression (e.g., 'status:todo AND priority:high')- Default:
-
Examples: ..py$, ^test_., (bug|fix):
-
-s, --status- Filter by status - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-a, --assignee- Filter by assignee - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
-t, --type- Filter by type -
Default:
-
-p, --priority- Filter by priority - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
-l, --label- Filter by label -
Default:
-
--parent- Filter by parent ticket ID (show subtasks) -
Default:
-
--blocked- Show only tickets blocked by unresolved dependencies -
Type: boolean
-
--story-points-eq- Filter by exact story point value - Type: integer
-
Default:
-
--story-points-gt- Filter by story points greater than value - Type: integer
-
Default:
-
--story-points-lt- Filter by story points less than value - Type: integer
-
Default:
-
--created-after- Filter tickets created after date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--created-before- Filter tickets created before date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--updated-after- Filter tickets updated after date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--updated-before- Filter tickets updated before date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--due-after- Filter tickets due after date (YYYY-MM-DD) -
Default:
-
--due-before- Filter tickets due before date (YYYY-MM-DD) -
Default:
-
--due-on- Filter tickets due on specific date (YYYY-MM-DD) -
Default:
-
--overdue- Show only tickets past their due date -
Type: boolean
-
--has-comments- Show only tickets that have comments -
Type: boolean
-
--no-comments- Show only tickets without comments -
Type: boolean
-
--has-parent- Show only subtasks that have a parent ticket -
Type: boolean
-
--no-parent- Show only tickets that are not subtasks -
Type: boolean
-
--in-sprint- Filter tickets in a specific sprint -
Default:
-
--not-in-sprint- Filter tickets not in a specific sprint -
Default:
-
--not-in-epic- Filter tickets not linked to a specific epic -
Default:
-
--epic- Filter tickets by epic ID (comma-separated for multiple epics) -
Default:
-
--no-epic- Show only tickets without epic assignment (alias for --not-in-epic without value) -
Type: boolean
-
--search- Search text in ticket fields (default: title and description) -
Default:
-
--search-in- Specify fields to search: title, description, id, status, type, priority, assignee, reporter, labels, all (can be used multiple times) - Type: array
-
Default:
-
--exact-match- Perform exact string match instead of fuzzy match -
Type: boolean
-
--regex-search- Treat search pattern as a regular expression - Type: boolean
-
Examples: ..py$, ^test_., (bug|fix):
-
--case-sensitive-search- Make search case-sensitive -
Type: boolean
-
--sort- Sort by: id, priority, created, updated, title, order -
Default: id
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--ids-only- Show only ticket IDs -
Type: boolean
-
--counts- Show summary counts -
Type: boolean
-
--include-archived- Include archived tickets in results -
Type: boolean
-
--fields- Comma-separated list of fields to include in JSON output (e.g., 'id,title,status' or use aliases like 'basics') -
Default:
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.priority=="high")].id') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira ticket rm¶
Remove ticket(s) (alias for delete).
Arguments:
ticket_ids- Ticket ID(s) to remove (use '-' to read from stdin) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-f, --force- Skip confirmation prompt-
Type: boolean
-
-p, --permanent- Permanently delete instead of archiving -
Type: boolean
-
-o, --output- Output format (json) - Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
-q, --quiet- Only output ticket IDs -
Type: boolean
-
--git/--no-git- Stage the archive/delete using 'git mv' or 'git rm' - Type: boolean
-
Default:
-
-s, --status- Filter by status (e.g., done) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
--older-than- Filter tickets older than duration (e.g., '30 days', '2 weeks') -
Default:
-
-e, --epic- Filter tickets by epic ID -
Default:
-
--dry-run- Show what would be archived without doing it -
Type: boolean
-
-b, --batch- Batch ID for undo operations - Default:
Examples:
gira ticket ticket estimate set¶
Set story points for one or more tickets.
Arguments:
story_points- Story points to assign (0-100) (required)-
Type: integer
-
ticket_ids- Ticket ID(s) to estimate (supports patterns) (required) - Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-o, --output- Output format: text, json- Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-q, --quiet- Only output ticket IDs -
Type: boolean
-
--dry-run- Preview changes without saving - Type: boolean
Examples:
gira ticket ticket estimate compare¶
Compare two tickets side-by-side for relative estimation.
Arguments:
ticket_id_1- First ticket ID (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
ticket_id_2- Second ticket ID (required) - Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-o, --output- Output format: text, json- Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira ticket ticket estimate relative¶
Show base ticket details while estimating other tickets.
Arguments:
base_ticket_id- Base ticket ID for comparison (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ -
Examples: GIRA-123, GCM-456, PROJ-1
-
ticket_ids- Ticket ID(s) to estimate relative to base (required) - Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-o, --output- Output format: text, json- Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira ticket ticket estimate batch¶
Interactive batch estimation of multiple tickets.
Arguments:
ticket_ids- Ticket ID(s) to estimate interactively (required)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-o, --output- Output format: text, json- Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
--skip-estimated- Skip tickets that already have story points - Type: boolean
Examples:
gira epic create¶
Create a new epic.
Arguments:
title- Epic title (required unless using --stdin) (optional)- Type: string
- Min length: 3
- Max length: 200
Options:
-d, --description- Epic 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
-
-o, --owner- Epic owner email (defaults to git user email) - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
-t, --target-date- Target completion date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-q, --quiet- Only output epic ID -
Type: boolean
-
--stdin- Read JSON array of epics from stdin for bulk creation -
Type: boolean
-
--jsonl- Read JSONL (JSON Lines) format for streaming large datasets - Type: boolean
Examples:
gira epic list¶
List epics with optional filters.
Options:
-q, --query- Query expression (e.g., 'status:active AND owner:me()')- Default:
-
Examples: ..py$, ^test_., (bug|fix):
-
-s, --status- Filter by status (draft, active, completed) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-o, --owner- Filter by owner email - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
--search- Search text in epic fields (default: title and description) -
Default:
-
--search-in- Specify fields to search: title, description, id, status, owner, all (can be used multiple times) - Type: array
-
Default:
-
--exact-match- Perform exact string match instead of fuzzy match -
Type: boolean
-
--regex-search- Treat search pattern as a regular expression - Type: boolean
-
Examples: ..py$, ^test_., (bug|fix):
-
--case-sensitive-search- Make search case-sensitive -
Type: boolean
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--counts- Show summary counts -
Type: boolean
-
--fields- Comma-separated list of fields to include in JSON output (e.g., 'id,title,status' or use aliases like 'epic_basics') -
Default:
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.status=="active")].id') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira epic show¶
Show details of a specific epic.
Arguments:
epic_id- Epic ID to show (e.g., EPIC-001) (required)- Type: string
- Pattern:
^EPIC-\d{3}$ - Examples: EPIC-001, EPIC-002
Options:
-f, --format- Output format- Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: text
-
Examples: json, table
-
--json- Output as JSON (shorthand for --format json) -
Type: boolean
-
--tickets/--no-tickets- Show tickets belonging to this epic - Type: boolean
-
Default: True
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$.tickets[*]') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira epic update¶
Update an existing epic.
Arguments:
epic_id- Epic ID to update (required unless using --stdin) (optional)- Type: string
- Pattern:
^EPIC-\d{3}$ - Examples: EPIC-001, EPIC-002
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 (draft, active, completed) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-o, --owner- New owner email - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
--target-date- New target date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--add-ticket- Add ticket to epic (can be used multiple times) - Type: array
-
Default:
-
--remove-ticket- Remove ticket from epic (can be used multiple times) - Type: array
-
Default:
-
--output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-q, --quiet- Only output epic ID -
Type: boolean
-
--stdin- Read JSON array of epic 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
Examples:
gira epic delete¶
Delete or archive an epic.
Arguments:
epic_id- Epic ID to delete (required)- Type: string
- Pattern:
^EPIC-\d{3}$ - Examples: EPIC-001, EPIC-002
Options:
-f, --force- Skip confirmation prompt-
Type: boolean
-
-p, --permanent- Permanently delete instead of archiving -
Type: boolean
-
-o, --output- Output format (json) - Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--git/--no-git- Stage the archive/delete using 'git mv' or 'git rm' - Type: boolean
- Default:
Examples:
gira sprint create¶
Create a new sprint.
Arguments:
name- Sprint name (required)- Type: string
Options:
-g, --goal- Sprint goal-
Default:
-
--goal-file- Read goal from a file - Default:
-
Examples: sprint-goals.md, objectives/q1-goals.txt, ./planning/sprint-15.md
-
-s, --start-date- Start date (YYYY-MM-DD, defaults to today) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
-e, --end-date- End date (YYYY-MM-DD, overrides duration) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
-d, --duration- Duration in days (ignored if end-date is provided) - Type: integer
- Default: 14
-
Examples: 7, 14, 30
-
-q, --quiet- Quiet mode - only show sprint ID - Type: boolean
Examples:
gira sprint list¶
List all sprints.
Options:
-q, --query- Query expression (e.g., 'status:active AND name:~"sprint"')- Default:
-
Examples: ..py$, ^test_., (bug|fix):
-
--status- Filter by sprint status (planned, active, completed) - Type: array
- Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
--after- Show sprints that start after this date (YYYY-MM-DD) -
Default:
-
--before- Show sprints that end before this date (YYYY-MM-DD) -
Default:
-
--between- Show sprints within date range (YYYY-MM-DD,YYYY-MM-DD) -
Default:
-
--min-tickets- Show sprints with at least this many tickets - Type: integer
-
Default:
-
--active- Show only active sprints (deprecated: use --status active) -
Type: boolean
-
--completed- Show only completed sprints (deprecated: use --status completed) -
Type: boolean
-
--search- Search text in sprint fields (default: name and goal) -
Default:
-
--search-in- Specify fields to search: name, goal, id, status, all (can be used multiple times) - Type: array
-
Default:
-
--exact-match- Perform exact string match instead of fuzzy match -
Type: boolean
-
--regex-search- Treat search pattern as a regular expression - Type: boolean
-
Examples: ..py$, ^test_., (bug|fix):
-
--case-sensitive-search- Make search case-sensitive -
Type: boolean
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--json- Output in JSON format (shorthand for --format json) -
Type: boolean
-
--fields- Comma-separated list of fields to include in JSON output (e.g., 'id,name,status' or use aliases like 'sprint_basics') -
Default:
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.status=="active")].id') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira sprint show¶
Show details of a specific sprint.
Arguments:
sprint_id- Sprint ID to show (e.g., SPRINT-001) (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Options:
-f, --format- Output format- Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: text
-
Examples: json, table
-
--json- Output in JSON format (shorthand for --format json) -
Type: boolean
-
--tickets/--no-tickets- Show tickets belonging to this sprint - Type: boolean
-
Default: True
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$.tickets[*]') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira sprint update¶
Update sprint fields.
Arguments:
sprint_id- Sprint ID to update (e.g., SPRINT-2025-01-15) (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Options:
-n, --name- Update sprint name-
Default:
-
-g, --goal- Update sprint goal -
Default:
-
--goal-file- Read goal from a file - Default:
-
Examples: sprint-goals.md, objectives/q1-goals.txt, ./planning/sprint-15.md
-
--start-date- Update start date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--end-date- Update end date (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
-a, --add-ticket- Add ticket(s) to sprint - Type: array
-
Default:
-
-r, --remove-ticket- Remove ticket(s) from sprint - Type: array
-
Default:
-
-s, --status- Update sprint status (planned/active/completed) - Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
--dry-run- Preview changes without saving them - Type: boolean
Examples:
gira sprint start¶
Start a sprint (change status from planned to active).
Arguments:
sprint_id- Sprint ID to start (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Examples:
gira sprint close¶
Close a sprint (change status to completed).
Arguments:
sprint_id- Sprint ID to close (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Options:
--retrospective/--no-retrospective- Include retrospective- Type: boolean
-
Default: True
-
--git/--no-git- Stage the sprint move using 'git mv' - Type: boolean
- Default:
Examples:
gira sprint complete¶
Complete a sprint (alias for close).
Arguments:
sprint_id- Sprint ID to complete (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Options:
--retrospective/--no-retrospective- Include retrospective- Type: boolean
-
Default: True
-
--git/--no-git- Stage the sprint move using 'git mv' - Type: boolean
- Default:
Examples:
gira sprint delete¶
Delete or archive a sprint.
Arguments:
sprint_id- Sprint ID to delete (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Options:
-f, --force- Skip confirmation prompt-
Type: boolean
-
-p, --permanent- Permanently delete instead of archiving -
Type: boolean
-
-o, --output- Output format (json) - Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--git/--no-git- Stage the archive/delete using 'git mv' or 'git rm' - Type: boolean
- Default:
Examples:
gira sprint assign¶
Assign multiple tickets to a sprint.
Arguments:
sprint_id- Sprint ID to assign tickets to (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ -
Examples: SPRINT-001, SPRINT-002
-
ticket_ids- Ticket ID(s) to assign (supports patterns like 'GCM-1*', ranges like 'GCM-1..10', or '-' for stdin) (optional) - Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
--from-file- Read ticket IDs from file- Default:
-
Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
-
--query- Assign tickets matching query - Default:
-
Examples: ..py$, ^test_., (bug|fix):
-
--from-context- Assign tickets from current context -
Type: boolean
-
-f, --force- Legacy option (confirmation removed for AI-friendliness) -
Type: boolean
-
--dry-run- Preview changes without applying them -
Type: boolean
-
-q, --quiet- Suppress output -
Type: boolean
-
-o, --output- Output format (table, json) - Choices: text, json, table, csv
- Default: table
- Examples: json, table
Examples:
gira sprint unassign¶
Remove tickets from sprint assignments.
Arguments:
ticket_ids- Ticket ID(s) to unassign (supports patterns like 'GCM-1*', ranges like 'GCM-1..10', or '-' for stdin) (optional)- Type: array
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
--all- Unassign all tickets from specified sprint-
Type: boolean
-
--from- Unassign only from this specific sprint -
Default:
-
-f, --force- Legacy option (confirmation removed for AI-friendliness) -
Type: boolean
-
--dry-run- Preview changes without applying them -
Type: boolean
-
-q, --quiet- Suppress output -
Type: boolean
-
-o, --output- Output format (table, json) - Choices: text, json, table, csv
- Default: table
- Examples: json, table
Examples:
gira sprint assign-by-dates¶
Assign tickets to sprint based on completion dates.
Arguments:
sprint_id- Sprint ID to assign tickets to (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ - Examples: SPRINT-001, SPRINT-002
Options:
--start- Start date for ticket search (YYYY-MM-DD)- Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--end- End date for ticket search (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--include-assigned- Include tickets already assigned to other sprints -
Type: boolean
-
--dry-run- Preview changes without applying them - Type: boolean
Examples:
gira sprint assign-by-epic¶
Assign all tickets from an epic to a sprint.
Arguments:
sprint_id- Sprint ID to assign tickets to (required)- Type: string
- Pattern:
^SPRINT-\d{3}$ -
Examples: SPRINT-001, SPRINT-002
-
epic_id- Epic ID to assign tickets from (required) - Type: string
- Pattern:
^EPIC-\d{3}$ - Examples: EPIC-001, EPIC-002
Options:
--status- Only assign tickets with this status (e.g., 'done')- Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
--dry-run- Preview changes without applying them - Type: boolean
Examples:
gira sprint assign-wizard¶
Interactive wizard for assigning unassigned tickets to sprints.
Examples:
gira sprint generate-historical¶
Generate historical sprints from completed epics and tickets.
Options:
--epic- Generate sprint only for specific epic-
Default:
-
--start- Start date filter (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--end- End date filter (YYYY-MM-DD) - Default:
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--duration- Sprint duration in days - Type: integer
- Default: 14
-
Examples: 7, 14, 30
-
--include-orphaned/--no-orphaned- Include tickets without epic assignments - Type: boolean
-
Default: True
-
--dry-run- Preview sprints without creating them - Type: boolean
Examples:
gira comment add¶
Add a comment to a ticket or epic.
Arguments:
entity_id- Ticket or Epic ID to add comment to (e.g., GCM-123 or EPIC-001) (required)- Type: string
Options:
-c, --content- Comment content-
Default:
-
--content-file- Read comment content from a file - Default:
-
Examples: comment.md, update-notes.txt, ./feedback/review-comments.md
-
-e, --editor- Open editor for comment -
Type: boolean
-
-a, --attach- Attach file(s) to the comment (can be used multiple times) - Type: array
- Default:
Examples:
gira comment list¶
List all comments on a ticket or epic.
Arguments:
entity_id- Ticket or Epic ID to show comments for (e.g., GCM-123 or EPIC-001) (required)- Type: string
Options:
-l, --limit- Limit number of comments shown- Type: integer
-
Default:
-
-r, --reverse- Show oldest comments first -
Type: boolean
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: text
-
Examples: json, table
-
--json- Output in JSON format (shorthand for --format json) -
Type: boolean
-
--fields- Comma-separated list of fields to include in JSON output (e.g., 'id,author,content' or use aliases like 'comment_basics') -
Default:
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.author=="john@example.com")].content') -
Default:
-
-v, --verbose- Show detailed information including attachment details -
Type: boolean
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira comment delete¶
Delete a comment from a ticket or epic.
Arguments:
entity_id- Ticket or Epic ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
comment_id- Comment ID to delete (required) - Type: string
Options:
-f, --force- Skip confirmation prompt- Type: boolean
Examples:
gira comment attach¶
Attach files to an existing comment.
Arguments:
entity_id- Ticket or Epic ID (e.g., GCM-123, 123, or EPIC-001) (optional)-
Type: string
-
comment_id- Comment ID to attach files to (optional) -
Type: string
-
file_paths- Path(s) to file(s) to attach (optional) - Type: array
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-i, --interactive- Run in interactive mode-
Type: boolean
-
-n, --note- Optional note for the attachments -
Default:
-
-u, --user- User adding the attachment (defaults to git user) - Default:
Examples:
gira comment detach¶
Arguments:
entity_id- Ticket or Epic ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
comment_id- Comment ID to remove attachments from (required) -
Type: string
-
filenames- Filename(s) to remove (if not specified, use --all) (optional) - Type: array
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-a, --all- Remove all attachments from the comment-
Type: boolean
-
-f, --force- Skip confirmation prompt - Type: boolean
Examples:
gira comment download¶
Arguments:
entity_id- Ticket or Epic ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
comment_id- Comment ID to download attachments from (required) -
Type: string
-
filenames- Specific filename(s) to download (downloads all if not specified) (optional) - Type: array
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-o, --output- Output directory (defaults to current directory)- Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
-a, --all- Download all attachments (default if no filenames specified) -
Type: boolean
-
-f, --overwrite- Overwrite existing files - Type: boolean
Examples:
gira config set¶
Set a configuration value.
Arguments:
key- Configuration key (e.g., user.name) (required)-
Type: string
-
value- Configuration value (required) - Type: string
Options:
-g, --global- Set in global config (not implemented)- Type: boolean
- Examples: .py, **/.json, src/**/*.ts
Examples:
gira config get¶
Arguments:
key- Configuration key to get (show all if not specified) (optional)- Type: string
Options:
-l, --list- List all configuration keys-
Type: boolean
-
-f, --format- Output format: table, json - Choices: text, json, table, csv
- Default: table
-
Examples: json, table
-
--json- Output as JSON (shorthand for --format json) -
Type: boolean
-
--fields- Comma-separated list of fields to include in JSON output (for filtering config keys) - Default:
Examples:
gira config reset¶
Reset configuration to default values.
Arguments:
key- Configuration key to reset (reset all if not specified) (optional)- Type: string
Options:
-f, --force- Skip confirmation prompt- Type: boolean
Examples:
gira config rename-prefix¶
Rename the ticket ID prefix for the entire project.
Arguments:
new_prefix- New ticket ID prefix (2-5 uppercase letters) (required)- Type: string
Options:
-f, --force- Skip confirmation prompts- Type: boolean
Examples:
gira metrics overview¶
Display comprehensive metrics overview for the project.
Options:
-f, --format- Output format: human, json- Choices: text, json, table, csv
- Default: human
-
Examples: json, table
-
-d, --days- Number of days to analyze for trends - Type: integer
- Default: 30
-
Examples: 7, 14, 30
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira metrics velocity¶
Display team velocity trends across sprints.
Options:
-n, --limit- Number of sprints to display- Type: integer
-
Default: 5
-
-f, --format- Output format: human, json, csv - Choices: text, json, table, csv
- Default: human
-
Examples: json, table
-
--all- Show all sprints including active ones -
Type: boolean
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira metrics trends¶
Display ticket creation, completion, and backlog trends over time.
Options:
-d, --days- Number of days to analyze- Type: integer
- Default: 30
-
Examples: 7, 14, 30
-
-f, --format- Output format: human, json, csv - Choices: text, json, table, csv
- Default: human
-
Examples: json, table
-
--type- Filter by ticket type -
Default:
-
--priority- Filter by priority - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
--assignee- Filter by assignee - Default:
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ -
Examples: user@example.com, john.doe@company.org
-
--epic- Filter by epic ID -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira metrics duration¶
Analyze time tickets spend in each status to identify bottlenecks.
Options:
-d, --days- Analyze tickets from last N days- Type: integer
- Default:
-
Examples: 7, 14, 30
-
-f, --format- Output format: human, json, csv - Choices: text, json, table, csv
- Default: human
-
Examples: json, table
-
--type- Filter by ticket type -
Default:
-
--priority- Filter by priority - Choices: low, medium, high, critical
- Default:
-
Examples: medium, high
-
--no-cache- Bypass cache and force fresh analysis -
Type: boolean
-
--no-progress- Disable progress indicator -
Type: boolean
-
--force-batch- Force batch git operations (for testing) -
Type: boolean
-
--working-hours- Calculate durations using business hours only - Type: boolean
-
Examples: 7, 14, 30
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira completion install¶
Install shell completion for Gira.
Arguments:
shell- Shell type: bash, zsh, fish (required)- Type: string
Options:
--path- Custom installation path- Default:
-
Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
-
-v, --verbose- Show detailed path selection process - Type: boolean
Examples:
gira completion show¶
Show completion script for manual installation.
Arguments:
shell- Shell type: bash, zsh, fish (required)- Type: string
Examples:
gira archive ticket¶
Archive a single ticket.
Arguments:
ticket_id- ID of the ticket to archive (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-f, --force- Skip confirmation prompt-
Type: boolean
-
--dry-run- Preview the archive operation without performing it -
Type: boolean
-
--git/--no-git- Use git operations for archiving (auto-detected if not specified) - Type: boolean
- Default:
Examples:
gira archive done¶
Archive all done tickets with optional filtering.
Options:
--dry-run- Preview what would be archived-
Type: boolean
-
--before- Archive tickets completed before this date (YYYY-MM-DD) -
Default:
-
--older-than- Archive tickets older than N days - Type: integer
-
Default:
-
--sprint- Archive tickets from specific sprint -
Default:
-
-f, --force- Skip confirmation prompt - Type: boolean
Examples:
gira archive old¶
Archive tickets older than specified number of days.
Options:
-d, --days- Archive tickets older than N days- Type: integer
- Default: 30
-
Examples: 7, 14, 30
-
-s, --status- Only archive tickets with this status - Choices: backlog, todo, in_progress, review, done
- Default: done
-
Examples: backlog, todo, in_progress
-
--dry-run- Preview what would be archived -
Type: boolean
-
-f, --force- Skip confirmation prompt - Type: boolean
Examples:
gira archive list¶
List archived tickets with optional filtering.
Options:
-m, --month- Show tickets from specific month (YYYY-MM)-
Default:
-
-s, --search- Search in ticket title and description -
Default:
-
-l, --limit- Maximum number of tickets to show - Type: integer
-
Default:
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--stats- Show archive statistics -
Type: boolean
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.priority=="high")].id') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira archive restore¶
Restore an archived ticket back to the board.
Arguments:
ticket_id- ID of the ticket to restore (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-s, --status- Status to restore ticket to- Choices: backlog, todo, in_progress, review, done
- Default: done
-
Examples: backlog, todo, in_progress
-
-f, --force- Skip confirmation prompt -
Type: boolean
-
--git/--no-git- Use git operations for restoration (auto-detected if not specified) - Type: boolean
- Default:
Examples:
gira archive suggest¶
Suggest tickets to archive based on various criteria.
Options:
-e, --execute- Execute the suggestions (archive the tickets)-
Type: boolean
-
-c, --category- Filter by category: old_done, completed_epics, completed_sprints, stale_backlog -
Default:
-
-l, --limit- Maximum number of suggestions per category - Type: integer
- Default: 50
Examples:
gira migrate hybrid¶
Migrate the project to use hybrid directory structure for backlog tickets.
Options:
--dry-run- Preview migration without making changes-
Type: boolean
-
--verify- Verify current migration status without changes -
Type: boolean
-
-f, --force- Skip confirmation prompts - Type: boolean
Examples:
gira team list¶
List all team members.
Options:
-r, --role- Filter by role-
Default:
-
--active-only- Show only active members -
Type: boolean
-
-f, --format- Output format - Type: enum
- Choices: TABLE, JSON, YAML, CSV, TSV, TEXT, IDS
- Default: table
-
Examples: json, table
-
--json- Output as JSON (shorthand for --format json) -
Type: boolean
-
--filter-json- JSONPath expression to filter JSON output (e.g., '$[?(@.active==true)].email') -
Default:
-
--color- Enable syntax highlighting for JSON output (default: no color for AI compatibility) -
Type: boolean
-
--no-color- Explicitly disable syntax highlighting (default is already no color) - Type: boolean
Examples:
gira team add¶
Add a new team member.
Arguments:
email- Email address of the team member (required)- Type: string
- Pattern:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ - Examples: user@example.com, john.doe@company.org
Options:
-n, --name- Display name-
Default:
-
-u, --username- Username for @mentions -
Default:
-
-r, --role- Role in the project -
Default: developer
-
-a, --alias- Alias for quick assignment (can be used multiple times) - Type: array
-
Default:
-
-i, --interactive- Interactive mode - Type: boolean
Examples:
gira team remove¶
Remove a team member.
Arguments:
identifier- Email, username, or alias of the team member to remove (required)- Type: string
Options:
-f, --force- Skip confirmation prompt- Type: boolean
Examples:
gira team discover¶
Discover team members from Git commit history.
Options:
-l, --limit- Maximum number of commits to analyze- Type: integer
-
Default: 50
-
--add-all- Add all discovered members without prompting -
Type: boolean
-
--dry-run- Show what would be added without making changes - Type: boolean
Examples:
gira docs generate¶
Generate documentation for Gira including CLI reference, AI agent guides, and workflow documentation.
Examples:
gira export json¶
Export tickets to JSON format
Options:
-o, --output- Output file path. If not specified, outputs to stdout- Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--include-archived- Include archived tickets in the export -
Type: boolean
-
--pretty- Pretty-print JSON output with indentation -
Type: boolean
-
--fields- Comma-separated list of fields to include (default: all fields) - Default:
Examples:
gira export csv¶
Export tickets to CSV format
Options:
-o, --output- Output file path. If not specified, outputs to stdout- Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--include-archived- Include archived tickets in the export -
Type: boolean
-
--fields- Comma-separated list of fields to include (default: common fields) -
Default:
-
--delimiter- Field delimiter character (default: comma) -
Default: ,
-
--quote-all- Quote all fields, not just those containing special characters - Type: boolean
Examples:
gira export md¶
Export tickets to Markdown format
Options:
-o, --output- Output file path. If not specified, outputs to stdout- Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--include-archived- Include archived tickets in the export -
Type: boolean
-
--fields- Comma-separated list of fields to include (default: common fields) - Default:
Examples:
gira hooks install¶
Install Git hooks for Gira integration.
Options:
-h, --hook- Specific hooks to install (can be used multiple times). If not specified, installs all available hooks.- Type: array
-
Default:
-
-f, --force- Overwrite existing hooks without prompting -
Type: boolean
-
--dry-run- Show what would be installed without actually installing - Type: boolean
Examples:
gira hooks uninstall¶
Uninstall Git hooks for Gira integration.
Options:
-h, --hook- Specific hooks to uninstall (can be used multiple times). If not specified, uninstalls all Gira hooks.- Type: array
-
Default:
-
-f, --force- Remove hooks without prompting - Type: boolean
Examples:
gira hooks status¶
Show the status of Git hooks for Gira integration.
Examples:
gira ext list¶
List all available hooks and their status.
Options:
-v, --verbose- Show detailed information about each hook- Type: boolean
Examples:
gira ext init¶
Initialize the hooks directory with example templates.
Options:
-f, --force- Overwrite existing hooks directory- Type: boolean
Examples:
gira ext install¶
Install a specific hook template.
Arguments:
hook_name- Name of the hook template to install (required)- Type: string
Options:
-f, --force- Overwrite existing hook- Type: boolean
Examples:
gira ext test¶
Test a hook with sample data.
Arguments:
hook_name- Name of the hook to test (required)- Type: string
Options:
--data- JSON string with test event data- Default:
Examples:
gira ext enable¶
Enable hook execution.
Examples:
gira ext disable¶
Disable hook execution.
Examples:
gira ext show¶
Display the contents of a hook file.
Arguments:
hook_name- Name of the hook to display (required)- Type: string
Examples:
gira webhook add¶
Add a new webhook endpoint.
Arguments:
name- Name for the webhook endpoint (required)-
Type: string
-
url- Webhook URL to send events to (required) - Type: string
Options:
-e, --events- Comma-separated list of events to send (or '*' for all)-
Default: ticket_created,ticket_updated,ticket_moved
-
-t, --template- Template to apply for formatting (slack, discord, etc.) -
Default:
-
-f, --filter- Filter events using Gira query language - Default:
-
Examples: ..py$, ^test_., (bug|fix):
-
--auth-type- Authentication type (bearer, api_key, basic) -
Default:
-
--auth-token- Authentication token (use ${ENV_VAR} for environment variables) -
Default:
-
--auth-key- Authentication header key (for api_key auth) -
Default:
-
--auth-username- Username for basic auth (use ${ENV_VAR} for environment variables) -
Default:
-
--auth-password- Password for basic auth (use ${ENV_VAR} for environment variables) -
Default:
-
--timeout- Request timeout in seconds (default: global setting) - Type: integer
-
Default:
-
--retry-attempts- Number of retry attempts (default: global setting) - Type: integer
-
Default:
-
--headers- Additional headers as JSON string -
Default:
-
--enabled/--disabled- Whether the webhook is enabled - Type: boolean
- Default: True
Examples:
gira webhook remove¶
Remove a webhook endpoint.
Arguments:
name- Name of the webhook endpoint to remove (required)- Type: string
Options:
-f, --force- Skip confirmation prompt- Type: boolean
Examples:
gira webhook list¶
List configured webhook endpoints.
Options:
-v, --verbose- Show detailed information about each webhook- Type: boolean
Examples:
gira webhook test¶
Test a webhook endpoint with a sample payload.
Arguments:
name- Name of the webhook endpoint to test (required)- Type: string
Options:
-e, --event- Event type for the test payload (default: test)- Default: test
Examples:
gira webhook enable¶
Enable webhooks globally or a specific webhook endpoint.
Arguments:
name- Name of specific webhook to enable (omit to enable globally) (optional)- Type: string
Examples:
gira webhook disable¶
Disable webhooks globally or a specific webhook endpoint.
Arguments:
name- Name of specific webhook to disable (omit to disable globally) (optional)- Type: string
Options:
-f, --force- Skip confirmation prompt for global disable- Type: boolean
Examples:
gira webhook health¶
Check webhook endpoint health and connectivity.
Arguments:
name- Name of webhook to check (omit to check all) (optional)- Type: string
Options:
-v, --verbose- Show detailed health information- Type: boolean
Examples:
gira webhook stats¶
Show webhook delivery statistics.
Arguments:
name- Name of webhook to show stats for (omit to show all) (optional)- Type: string
Examples:
gira webhook webhook filter help¶
Show help for webhook filter expressions.
Examples:
gira webhook webhook filter validate¶
Validate a webhook filter expression.
Arguments:
expression- Filter expression to validate (required)- Type: string
Examples:
gira cache clear¶
Clear cached data.
Options:
--all- Clear all caches including git and blame caches-
Type: boolean
-
--git- Clear only git-related cache -
Type: boolean
-
--blame- Clear only blame-related cache -
Type: boolean
-
--tickets- Clear only ticket-related cache -
Type: boolean
-
--metrics- Clear only metrics cache -
Type: boolean
-
--ticket-id- Clear cache for a specific ticket - Default:
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Examples:
gira cache status¶
Show cache statistics.
Examples:
gira storage configure¶
Configure storage backend for attachments.
Options:
-p, --provider- Storage provider (s3, r2, b2, gcs, azure)-
Default:
-
-b, --bucket- Storage bucket name -
Default:
-
--test/--no-test- Test connection after configuration - Type: boolean
-
Default: True
-
--update-project/--no-update-project- Update project configuration - Type: boolean
- Default: True
- Pattern:
^\d{4}-\d{2}-\d{2}$ -
Examples: 2025-01-20, 2025-12-31
-
--encrypt/--no-encrypt- Encrypt stored credentials - Type: boolean
Examples:
gira storage status¶
Check storage configuration and credential status.
Examples:
gira storage validate¶
Validate storage credentials and show detailed information.
Options:
-p, --provider- Storage provider to validate (s3, r2, b2, gcs, azure)-
Default:
-
--help-credentials- Show credential help for providers - Type: boolean
Examples:
gira attachment add¶
Add attachment(s) to a ticket or epic.
Arguments:
entity_id- Ticket or epic ID to attach file to (e.g., PROJ-123, 123, or EPIC-001) (required)-
Type: string
-
file_paths- Path(s) to file(s) or directory to attach (required) - Type: array
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-n, --note- Optional description or note for the attachments-
Default:
-
-t, --type- Entity type: ticket or epic (auto-detected if not specified) -
Default:
-
--commit/--no-commit- Automatically commit the attachment pointers - Type: boolean
-
Default: True
-
-u, --user- User adding the attachment (defaults to git user) -
Default:
-
-i, --include- Include only files matching pattern (e.g., '*.pdf') -
Default:
-
-e, --exclude- Exclude files matching pattern (e.g., '*.tmp') - Default:
Examples:
gira attachment cat¶
Arguments:
entity_id- Entity ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
filename- Attachment filename to stream (required) - Type: string
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Options:
-t, --type- Entity type (ticket or epic)- Default:
Examples:
gira attachment download¶
Download attachment(s) to specified location without opening.
Arguments:
entity_id- Entity ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
patterns- Attachment filename(s) or pattern(s) to download (required) - Type: array
Options:
-t, --type- Entity type (ticket or epic)-
Default:
-
-o, --output- Output directory (defaults to current directory) - Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
-q, --quiet- Suppress progress output -
Type: boolean
-
-f, --force- Overwrite existing files without prompting -
Type: boolean
-
-a, --all- Download all attachments for the entity - Type: boolean
- Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
Examples:
gira attachment list¶
List all attachments for a ticket or epic.
Arguments:
entity_id- Ticket or epic ID to list attachments for (e.g., PROJ-123 or EPIC-001) (required)- Type: string
Options:
-t, --type- Entity type: ticket or epic (auto-detected if not specified)-
Default:
-
-f, --format- Output format: table, json, or simple - Choices: text, json, table, csv
- Default: table
-
Examples: json, table
-
--file-type- Filter by file type/extension (e.g., pdf, png, xlsx) - Default:
-
Examples: .gira/config.json, /path/to/file.txt, ./relative/path.md
-
--after- Show attachments uploaded after date (YYYY-MM-DD) -
Default:
-
--before- Show attachments uploaded before date (YYYY-MM-DD) -
Default:
-
-p, --show-provider- Show storage provider details - Type: boolean
Examples:
gira attachment open¶
Arguments:
entity_id- Entity ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
attachment_ids- Attachment ID(s) to open (required) - Type: array
Options:
-t, --type- Entity type (ticket or epic)-
Default:
-
-d, --download-only- Download without opening -
Type: boolean
-
-o, --output- Output directory for downloads - Choices: text, json, table, csv
- Default:
-
Examples: json, table
-
--no-cache- Skip cache and download fresh copy -
Type: boolean
-
-f, --force- Overwrite existing files - Type: boolean
Examples:
gira attachment remove¶
Arguments:
entity_id- Entity ID (e.g., GCM-123 or EPIC-001) (required)-
Type: string
-
attachment_ids- Attachment filename(s) or ID(s) to remove (required) - Type: array
Options:
-t, --type- Entity type (ticket or epic)-
Default:
-
-r, --delete-remote- Also delete files from remote storage -
Type: boolean
-
-n, --dry-run- Preview changes without executing -
Type: boolean
-
-f, --force- Skip confirmation prompts -
Type: boolean
-
--no-commit- Don't auto-commit changes to Git - Type: boolean
Examples:
gira operation status¶
Check the status of an async operation.
Arguments:
operation_id- Operation ID to check (required)- Type: string
Options:
-o, --output- Output format: text, json- Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira operation list¶
List async operations.
Options:
--active- Show only active operations-
Type: boolean
-
-n, --limit- Maximum operations to show - Type: integer
-
Default: 10
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira operation cancel¶
Cancel a running operation.
Arguments:
operation_id- Operation ID to cancel (required)- Type: string
Options:
-f, --force- Skip confirmation- Type: boolean
Examples:
gira operation wait¶
Wait for an operation to complete.
Arguments:
operation_id- Operation ID to wait for (required)- Type: string
Options:
-t, --timeout- Timeout in seconds- Type: integer
-
Default: 300
-
-q, --quiet- Suppress progress output - Type: boolean
Examples:
gira operation resume¶
Resume operations from persistence.
Arguments:
operation_id- Specific operation to resume (optional)- Type: string
Options:
--all- Resume all incomplete operations- Type: boolean
Examples:
gira operation cleanup¶
Clean up old operation snapshots.
Options:
-d, --days- Delete operations older than N days- Type: integer
- Default: 7
-
Examples: 7, 14, 30
-
--dry-run- Show what would be deleted - Type: boolean
Examples:
gira ai status¶
Show AI documentation files and integration status.
Examples:
gira ai setup¶
Set up AI documentation for the project.
Options:
-f, --force- Force setup even if files exist-
Type: boolean
-
--non-interactive- Run without prompts - Type: boolean
Examples:
gira ai ai-help¶
Show AI-optimized command examples and patterns.
Arguments:
agent- Specific AI agent (claude, gemini, etc.) (optional)- Type: string
Examples:
gira ai examples¶
Alias for ai-help command.
Arguments:
agent- Specific AI agent (claude, gemini, etc.) (optional)- Type: string
Examples:
gira context show¶
Display comprehensive context for a ticket (explicit show subcommand).
Arguments:
ticket_id- Ticket ID to show context for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-o, --output- Output format: text, json- Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-f, --fields- Comma-separated list of fields to include -
Default:
-
--include-archived- Include archived tickets in related items - Type: boolean
Examples:
gira context tree¶
Show visual dependency tree for a ticket.
Arguments:
ticket_id- Ticket ID to show dependency tree for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-d, --max-depth- Maximum tree depth- Type: integer
-
Default: 3
-
--include-archived- Include archived tickets - Type: boolean
Examples:
gira context epic¶
Show ticket in the context of its epic.
Arguments:
ticket_id- Ticket ID to show in epic context (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-a, --all- Show all epic tickets, not just related- Type: boolean
Examples:
gira context timeline¶
Show activity timeline for a ticket.
Arguments:
ticket_id- Ticket ID to show timeline for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-d, --days- Number of days to show- Type: integer
- Default: 30
- Examples: 7, 14, 30
Examples:
gira context related¶
Find tickets related by various criteria.
Arguments:
ticket_id- Ticket ID to find related tickets for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-m, --max- Maximum results per category- Type: integer
- Default: 10
Examples:
gira context references¶
Show where this ticket is referenced (comments, commits).
Arguments:
ticket_id- Ticket ID to find references for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Examples:
gira workflow show¶
Display available workflow transitions for a ticket.
Arguments:
ticket_id- Ticket ID to show workflow for (required)- Type: string
- Pattern:
^[A-Z]{2,4}-\d+$ - Examples: GIRA-123, GCM-456, PROJ-1
Options:
-c, --check- Check if a specific transition is valid-
Default:
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-v, --visual- Show visual workflow position - Type: boolean
Examples:
gira workflow validate¶
Validate all tickets against workflow rules.
Options:
-s, --status- Only validate tickets in this status- Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-t, --type- Only validate tickets of this type - Choices: story, task, bug, epic, feature, subtask
- Default:
-
Examples: task, bug, feature
-
-e, --epic- Only validate tickets in this epic -
Default:
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
-
Examples: json, table
-
-f, --fix- Attempt to auto-fix violations where possible - Type: boolean
Examples:
gira workflow apply¶
Apply a predefined workflow template.
Arguments:
template- Template name (scrum, kanban, support-desk, bug-tracking) (required)- Type: string
Options:
-f, --force- Force apply even if board config exists- Type: boolean
Examples:
gira workflow templates¶
List available workflow templates.
Examples:
gira workflow rule¶
Manage custom workflow rules.
Arguments:
action- Action: add, remove, list (required)-
Type: string
-
name- Rule name (for add/remove) (optional) - Type: string
Options:
-s, --status- Status condition- Choices: backlog, todo, in_progress, review, done
- Default:
-
Examples: backlog, todo, in_progress
-
-r, --requires- Requirements (field:value) -
Default:
-
-m, --message- Violation message - Default:
Examples:
gira workflow transitions¶
Manage allowed status transitions.
Arguments:
action- Action: add, remove, or leave empty to show (optional)-
Type: string
-
from_status- From status (optional) - Type: string
-
Examples: backlog, todo, in_progress
-
to_status- To status (comma-separated for multiple) (optional) - Type: string
- Examples: backlog, todo, in_progress
Examples:
gira workflow strict¶
Enable or disable strict workflow enforcement.
Arguments:
action- Action: enable, disable, or status (required)- Type: string
Examples:
gira workflow enforce¶
Set workflow enforcement level.
Arguments:
level- Enforcement level: strict, warn, or off (required)- Type: string
Examples:
gira workflow diagram¶
Display visual workflow diagram.
Options:
-c, --counts- Show ticket counts for each status-
Type: boolean
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira workflow stats¶
Show workflow statistics and metrics.
Options:
-d, --days- Number of days to analyze- Type: integer
- Default: 30
-
Examples: 7, 14, 30
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira workflow config¶
Display current workflow configuration.
Examples:
gira workflow analyze¶
Analyze workflow patterns and suggest improvements.
Options:
-d, --days- Number of days to analyze- Type: integer
- Default: 30
-
Examples: 7, 14, 30
-
-o, --output- Output format: text, json - Choices: text, json, table, csv
- Default: text
- Examples: json, table
Examples:
gira workflow migrate¶
Migrate tickets from one workflow to another.
Arguments:
from_workflow- Source workflow (current state) (required)-
Type: string
-
to_workflow- Target workflow to migrate to (required) - Type: string
Options:
--dry-run/--apply- Preview changes without applying- Type: boolean
-
Default: True
-
--backup/--no-backup- Create backup before migration - Type: boolean
-
Default: True
-
-f, --force- Force migration even with conflicts - Type: boolean
Examples: