🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

YouTrack Issue Tracker

by @iahmadzain

Manage YouTrack issues, projects, and workflows via CLI. Use when creating, updating, searching, or commenting on YouTrack issues, listing projects, checking issue states, or automating issue workflows.

Versionv1.0.1
Downloads2,310
Installs1
Stars⭐ 1
TERMINAL
clawhub install youtrack

πŸ“– About This Skill


name: youtrack description: Manage YouTrack issues, projects, and workflows via CLI. Use when creating, updating, searching, or commenting on YouTrack issues, listing projects, checking issue states, or automating issue workflows. metadata: {"clawdbot":{"emoji":"🎫","requires":{"bins":["jq","curl"]}}}

YouTrack CLI

Use ytctl (in scripts/) for YouTrack issue tracking.

Setup

Credentials stored in ~/.config/youtrack/config.json:

{
  "url": "https://your-instance.youtrack.cloud",
  "token": "perm:xxx"
}

Or set env vars: YOUTRACK_URL, YOUTRACK_TOKEN

Generate token: YouTrack β†’ Profile β†’ Account Security β†’ New Token

Commands

# List projects
ytctl projects

List issues (with optional filters)

ytctl issues # all issues ytctl issues SP # issues in project SP ytctl issues SP --query "state: Open" # filtered ytctl issues --max 50 # limit results

Get issue details

ytctl issue SP-123

Create issue

ytctl create SP "Bug: Login fails" ytctl create SP "Feature request" "Detailed description here"

Update issue

ytctl update SP-123 state "In Progress" ytctl update SP-123 assignee john.doe ytctl update SP-123 priority Critical

Add comment

ytctl comment SP-123 "Investigating this now"

Search with YouTrack query syntax

ytctl search "project: SP state: Open assignee: me" ytctl search "created: today" ytctl search "#unresolved sort by: priority"

List workflow states for project

ytctl states SP

List users

ytctl users ytctl users --query "john"

Query Syntax

YouTrack query examples:

  • state: Open β€” by state
  • assignee: me β€” assigned to current user
  • created: today β€” created today
  • updated: {last week} β€” updated in last week
  • #unresolved β€” all unresolved
  • has: attachments β€” with attachments
  • sort by: priority desc β€” sorted
  • Combine: project: SP state: Open assignee: me sort by: updated

    Output

    Default: table format. Add --json for raw JSON output:

    ytctl issues SP --json
    ytctl issue SP-123  # always JSON for single issue
    

    Bulk Operations

    # Update all matching issues (with dry-run preview)
    ytctl bulk-update "project: SP state: Open" state "In Progress" --dry-run
    ytctl bulk-update "project: SP state: Open" state "In Progress"

    Comment on all matching issues

    ytctl bulk-comment "project: SP state: Open" "Batch update notice"

    Assign all matching issues

    ytctl bulk-assign "project: SP #unresolved" john.doe --dry-run

    Reports

    # Project summary (default 7 days)
    ytctl report SP
    ytctl report SP --days 14

    User activity report

    ytctl report-user zain ytctl report-user zain --days 30

    State distribution with bar chart

    ytctl report-states SP

    Notes

  • Project can be shortName (SP) or full name
  • Fields: state, summary, description, assignee, priority
  • Use ytctl states PROJECT to see valid state names
  • Bulk operations support --dry-run to preview before executing
  • βš™οΈ Configuration

    Credentials stored in ~/.config/youtrack/config.json:

    {
      "url": "https://your-instance.youtrack.cloud",
      "token": "perm:xxx"
    }
    

    Or set env vars: YOUTRACK_URL, YOUTRACK_TOKEN

    Generate token: YouTrack β†’ Profile β†’ Account Security β†’ New Token

    πŸ“‹ Tips & Best Practices

  • Project can be shortName (SP) or full name
  • Fields: state, summary, description, assignee, priority
  • Use ytctl states PROJECT to see valid state names
  • Bulk operations support --dry-run to preview before executing