LS Command

The yt ls command provides a quick shortcut for listing YouTrack issues. This is a global shortcut for the most common list operation, equivalent to yt issues list but with a more convenient and familiar interface for users accustomed to Unix-style commands.

Overview

The ls command allows you to:

  • Quickly list YouTrack issues with common filtering options

  • Use familiar Unix-style command patterns for issue discovery

  • Apply multiple filters to find specific sets of issues

  • Export issue lists in various formats for further processing

  • Perform the most common YouTrack CLI operation with minimal typing

The yt ls command provides the same functionality as yt issues list but with a more concise syntax that’s faster to type and easier to remember.

Base Command

yt ls [OPTIONS]

Command Options

Options:
  • -a, --assignee TEXT - Filter by assignee (use ‘me’ for current user)

  • -p, --project TEXT - Filter by project

  • -s, --state TEXT - Filter by state

  • -t, --type TEXT - Filter by issue type

  • --priority TEXT - Filter by priority

  • --tag TEXT - Filter by tag

  • -l, --limit INTEGER - Maximum number of issues to display

  • -f, --format [table|json|csv] - Output format (default: table)

Examples:

# List all issues
yt ls

# List your assigned issues
yt ls --assignee me

# List issues in a specific project
yt ls --project DEMO

# List open bugs
yt ls --type Bug --state Open

# List high priority issues with limit
yt ls --priority High --limit 20

Common Usage Patterns

Personal Issue Management

Quickly check your assigned work:

# Your assigned issues (most common use case)
yt ls -a me

# Your open issues
yt ls --assignee me --state Open

# Your issues in a specific project
yt ls -a me -p WEB-PROJECT

# Your bugs and tasks
yt ls --assignee me --type Bug
yt ls --assignee me --type Task

Project Overview

Get a quick project status overview:

# All issues in a project
yt ls --project DEMO

# Open issues in project
yt ls -p DEMO -s Open

# Bugs in project
yt ls --project DEMO --type Bug

# High priority items in project
yt ls -p DEMO --priority High

Team and Workflow Monitoring

Monitor team progress and workflow status:

# All open issues for team review
yt ls --state Open

# Issues by type for sprint planning
yt ls --type Feature --state "To Do"
yt ls --type Bug --state "In Progress"

# Issues with specific tags
yt ls --tag urgent
yt ls --tag "needs-review"

Data Export and Integration

Export issue data for reports and analysis:

# Export issues in JSON format
yt ls --format json --limit 100

# Export project issues to CSV
yt ls --project DEMO --format csv > demo-issues.csv

# Export filtered issues for reporting
yt ls --assignee teamlead --priority High --format json > priority-issues.json

Integration with Issues Command

The yt ls command is functionally identical to yt issues list. Both commands provide the same issue listing capabilities:

# These commands are equivalent:
yt ls --assignee me --state Open
yt issues list --assignee me --state Open

# These commands are equivalent:
yt ls --project DEMO --format json
yt issues list --project DEMO --format json

Choose the command style that fits your workflow:

  • Use yt ls for quick, frequent issue listing operations

  • Use yt issues list when working with other issue management commands

  • Use yt ls when you want familiar Unix-style command patterns

Advanced Filtering and Combinations

Multi-Criteria Filtering

Combine multiple filters for precise issue discovery:

# Multiple criteria for targeted searches
yt ls --project WEB --assignee john.doe --state "In Progress"
yt ls --type Bug --priority Critical --assignee me
yt ls --project API --type Feature --state Open --limit 10

# Tag-based filtering with other criteria
yt ls --tag "sprint-1" --state Open
yt ls --project MOBILE --tag "ui" --type Bug

Complex Workflow Scenarios

Address specific workflow and process needs:

# Sprint planning scenarios
yt ls --state "Ready for Development" --limit 20
yt ls --assignee me --state "In Review"

# Quality assurance workflows
yt ls --type Bug --state "Ready for Testing"
yt ls --assignee qa-team --state "In Testing"

# Release management
yt ls --priority High --state Open
yt ls --tag "release-blocker" --format json

Output Formatting and Processing

Table Format (Default)

The default table format provides human-readable output:

# Standard table output
yt ls --assignee me

Displays issues in a formatted table with columns for key information like ID, summary, assignee, state, and priority.

JSON Format

JSON format enables programmatic processing and integration:

# JSON output for automation
yt ls --project DEMO --format json

# Process JSON with jq for custom analysis
yt ls --format json | jq '.[] | select(.priority.name == "High")'

# Extract specific fields
yt ls --format json | jq '.[] | {id, summary, assignee: .assignee.name}'

CSV Format

CSV format is ideal for spreadsheet analysis and reporting:

# CSV export for spreadsheet analysis
yt ls --format csv > issues-export.csv

# Project-specific CSV reports
yt ls --project WEB --format csv > web-project-issues.csv

# Filtered CSV for specific analysis
yt ls --state Open --priority High --format csv > priority-open-issues.csv

Automation and Scripting

Daily Workflow Automation

Create scripts for regular issue monitoring:

#!/bin/bash
# Daily issue check script

echo "=== Your Daily Issue Summary ==="
echo "Your assigned open issues:"
yt ls -a me -s Open

echo -e "\nHigh priority issues requiring attention:"
yt ls --priority High --state Open --limit 10

echo -e "\nIssues ready for review:"
yt ls --state "Ready for Review" --limit 5

Team Status Reports

Generate team-level status reports:

#!/bin/bash
# Team status report generator

PROJECTS=("WEB" "API" "MOBILE")

echo "=== Team Status Report - $(date) ==="

for project in "${PROJECTS[@]}"; do
    echo "--- $project Project ---"
    echo "Open issues: $(yt ls -p $project -s Open --format json | jq length)"
    echo "In Progress: $(yt ls -p $project -s "In Progress" --format json | jq length)"
    echo "Ready for Review: $(yt ls -p $project -s "Ready for Review" --format json | jq length)"
    echo
done

CI/CD Integration

Integrate issue checking into development workflows:

# Check for blocking issues before deployment
BLOCKERS=$(yt ls --tag "release-blocker" --state Open --format json | jq length)

if [ "$BLOCKERS" -gt 0 ]; then
    echo "Warning: $BLOCKERS release blocking issues found"
    yt ls --tag "release-blocker" --state Open
    exit 1
fi

Performance and Efficiency Tips

Optimizing List Operations

Make listing operations faster and more efficient:

Use Limits:
  • Apply reasonable limits to avoid loading excessive data

  • Use --limit for quick status checks and overviews

  • Increase limits only when comprehensive data is needed

Specific Filtering:
  • Use the most specific filters available to reduce result sets

  • Combine filters to narrow results precisely

  • Avoid broad queries when specific information is needed

Format Selection:
  • Use table format for human consumption and quick scanning

  • Use JSON format for automated processing and integration

  • Use CSV format for data analysis and reporting

Alias and Shortcut Strategies

Create even shorter shortcuts for frequent operations:

# Create shell aliases for super quick access
alias my="yt ls -a me"
alias myopen="yt ls -a me -s Open"
alias bugs="yt ls --type Bug --state Open"
alias priority="yt ls --priority High --state Open"
Common Alias Patterns:
  • Personal issue shortcuts (my, mybugs, mytasks)

  • Project shortcuts (webissues, apibugs)

  • Workflow shortcuts (review, testing, blocked)

Best Practices

Efficient Filtering:
  • Start with broader filters and narrow down as needed

  • Use project filters to focus on relevant work areas

  • Combine assignee filters with status for personal productivity

Regular Monitoring:
  • Check your assigned issues regularly with yt ls -a me

  • Monitor project status with yt ls -p PROJECT-NAME

  • Keep track of high priority items with yt ls --priority High

Data Export:
  • Export filtered results for analysis and reporting

  • Use JSON format for integration with other tools

  • Create regular CSV exports for trend analysis

Troubleshooting

Common Issues

No Results Returned:
  • Verify filter criteria are correct and realistic

  • Check that you have access to the specified project

  • Ensure issue states and types exist in your YouTrack configuration

Performance Issues:
  • Add --limit parameter to restrict result set size

  • Use more specific filters to reduce query complexity

  • Check network connectivity to YouTrack instance

Permission Errors:
  • Verify you have read access to the specified projects

  • Check that your authentication token is valid

  • Ensure you have appropriate permissions for the requested data

Authentication

The ls command requires authentication and appropriate permissions. Make sure you’re logged in:

yt auth login

See Also