Web Search
youtrack
Manage YouTrack issues, projects.
---
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`:
```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
```bash
# 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:
```bash
ytctl issues SP --json
ytctl issue SP-123 # always JSON for single issue
```
## Bulk Operations
```bash
# 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
```bash
# 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
web search
By
Comments
Sign in to leave a comment