Skip to main content

ADO CLI

A GitHub CLI (gh) style interface for Azure DevOps Server (ADO). This tool provides a command-line interface to interact with Azure DevOps Server repositories, pull requests, work items, and pipelines.

Features

  • Authentication: Secure login/logout with Personal Access Tokens
  • Repository Management: List and view repository information
  • Pull Request Operations: Create, view, list, checkout, diff, and close pull requests
  • Work Item Management: Create, view, and list work items (bugs, tasks, user stories)
  • Pipeline Management: View pipeline runs and build status
  • Git Integration: Automatically detects current repository from git config
  • Rich Output: Beautiful tables and formatted output using Rich library

Installation

uv tool install ado-cli

Quick Start

  1. Login to Azure DevOps Server:

    ado auth login
    
  2. List pull requests:

    ado pr list
    
  3. View pull request details:

    ado pr view 123
    

Commands

Authentication

# Login to Azure DevOps Server
ado auth login

# Check authentication status
ado auth status

# Logout
ado auth logout

Repositories

# List repositories in a project
ado repo list --project MyProject

# View repository details (auto-detects current repo)
ado repo view

# View specific repository
ado repo view MyRepo --project MyProject

# Open repository in web browser
ado repo view --web

Pull Requests

# List active pull requests
ado pr list

# List all pull requests including completed
ado pr list --state all

# Limit number of results
ado pr list -L 10

# View pull request details
ado pr view 123

# Open pull request in web browser
ado pr view 123 --web

# Create a pull request
ado pr create

# Create with options
ado pr create --title "Fix bug" --base main --head feature-branch

# Checkout pull request branch
ado pr checkout 123

# Show pull request diff
ado pr diff 123

# Close pull request
ado pr close 123

# Show build checks for pull request
ado pr checks 123

# Add comment to pull request
ado pr comment 123

# Add comment with inline message
ado pr comment 123 -m "LGTM! Ready to merge"

# Add comment to PR in specific project/repo
ado pr comment 123 -m "Please fix the typo" --project MyProject --repo MyRepo

Work Items

# List active work items
ado issue list

# List all work items
ado issue list --state all

# Filter by assignee
ado issue list --assignee "John Doe"

# View work item details
ado issue view 456

# Open work item in web browser
ado issue view 456 --web

# Create a work item
ado issue create

# Create with specific type
ado issue create --type "User Story" --title "New feature"

Pipeline Runs

# List recent pipeline runs
ado run list

# Limit number of results
ado run list -L 20

# View pipeline run details
ado run view 789

# Open pipeline run in web browser
ado run view 789 --web

Configuration

# Set default project
ado config set default_project MyProject

# Get configuration value
ado config get default_project

Configuration

The tool stores configuration in ~/.ado/config.json. Key settings include:

  • server_url: Azure DevOps Server URL
  • pat: Personal Access Token
  • collection: Collection name (default: DefaultCollection)
  • default_project: Default project for commands

Git Integration

ADO CLI automatically detects the current repository and project from your git configuration. This means you can run most commands from within a git repository without specifying --project and --repo options.

The tool parses Azure DevOps remote URLs in the format:

https://server/collection/project/_git/repo

Metadata

Release files for ado-cli 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ado-cli 0.0.5
File Size Uploaded Provenance
ado_cli-0.0.5.tar.gz 39.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ado-cli 0.0.5
File Interpreter ABI Platform
ado_cli-0.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 53.8 kB

Release files / ado_cli-0.0.5.tar.gz

Download URL ado_cli-0.0.5.tar.gz
Size 39.0 kB
Tags Source
SHA-256 checksum
How to use checksums
51f145d1c2b7f01bbba4accc0f5bfe48c04d613a02adecbfdfb51977552d0ee6
BLAKE2b-256 checksum
How to use checksums
9c03a849159c9ff4f2b8809423d85ee2d13e8a8491fa2a970e158d69c71ceef9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ado_cli-0.0.5-py3-none-any.whl

Download URL ado_cli-0.0.5-py3-none-any.whl
Size 14.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2c15a66001dcbdf8158770403cf58edbdd6ce0aaf783448ce2ffae060aac00e4
BLAKE2b-256 checksum
How to use checksums
7ad660c3f2edae2d9d058450dcc6c7d46d33eb5a45002bbc331d348242f364b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for ado-cli 0.0.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page