youtrack

SKILL.md

YouTrack

Interact with a YouTrack instance using the yt CLI. All commands output JSON by default for reliable parsing.

Setup

Configure once (credentials saved to ~/.config/yt-cli/config.json):

yt setup --url https://your-instance.youtrack.cloud --token <permanent-api-token>

Or use environment variables (these take priority over the config file):

export YOUTRACK_BASE_URL=https://your-instance.youtrack.cloud
export YOUTRACK_TOKEN=<permanent-api-token>

Issues

Search

yt issue search "<query>" --format json --pretty
yt issue search "project: MyProject #Unresolved assignee: me" --top 20 --format json
yt issue search "tag: bug" --top 10 --skip 0 --format json

YouTrack query syntax: project: PROJ, #Unresolved, assignee: me, priority: Critical, tag: bug, free text, etc.

Get a single issue

yt issue get PROJ-123 --format json --pretty

Create an issue

yt issue create --project PROJ --summary "Summary here" --description "Details" --format json

Update an issue

yt issue update PROJ-123 --summary "New summary" --format json
yt issue update PROJ-123 --description "Updated description" --format json
yt issue update PROJ-123 --field "Priority=Critical" --field "State=In Progress" --format json

Custom fields use --field "Name=Value" and can be repeated for multiple fields.

Comments

List comments:

yt issue comments PROJ-123 --format json --pretty

Add a comment:

yt issue comment PROJ-123 --text "Comment text here" --format json

Projects

yt project list --format json --pretty

Users

Get the authenticated user:

yt user me --format json --pretty

Output format

All commands support --format json (compact) or --format text (human-readable). Add --pretty for indented JSON.

Exit codes: 0 = success, 1 = error. Errors are written to stderr as JSON.

Pagination

Use --top <n> (default 50) and --skip <n> (default 0) on issue search for pagination.

Common workflows

Find and update an issue:

yt issue search "summary: login bug #Unresolved" --format json --top 5
yt issue update PROJ-42 --field "State=In Progress"
yt issue comment PROJ-42 --text "Started investigating — reproducible in staging."

Create and confirm:

yt issue create --project PROJ --summary "Fix null pointer in auth flow" --description "Stack trace: ..." --format json --pretty
Weekly Installs
12
First Seen
Feb 17, 2026
Installed on
gemini-cli11
github-copilot11
codex11
amp11
kimi-cli11
opencode11