Skip to content

Azure DevOps

Verified

List Azure DevOps projects, repositories, and branches; create pull requests; manage work items; check build status. Use when working with Azure DevOps resources, checking PR status, querying project structure, or automating DevOps workflows.

540

Install

Claude Code

Add to .claude/skills/

About This Skill

# Azure DevOps Skill

List projects, repositories, branches. Create pull requests. Manage work items. Check build status.

Check before running for valid Configuration, if values missing ask the user!

  • Required:
  • `AZURE_DEVOPS_PAT`: Personal Access Token
  • `AZURE_DEVOPS_ORG`: Organization name
  1. If values are missing from `~/.openclaw/openclaw.json`, the agent should:
  2. ASK the user for the missing PAT and/or organization name
  3. Store them in `~/.openclaw/openclaw.json` under `skills.entries["azure-devops"]`

Example Config

```json5 { skills: { entries: { "azure-devops": { apiKey: "YOUR_PERSONAL_ACCESS_TOKEN", // AZURE_DEVOPS_PAT env: { AZURE_DEVOPS_ORG: "YourOrganizationName" } } } } } ```

Commands

List Projects

```bash curl -s -u ":${AZURE_DEVOPS_PAT}" \ "https://dev.azure.com/${AZURE_DEVOPS_ORG}/_apis/projects?api-version=7.1" \ | jq -r '.value[] | "\(.name) - \(.description // "No description")"' ```

List Repositories in a Project

```bash PROJECT="YourProject" curl -s -u ":${AZURE_DEVOPS_PAT}" \ "https://dev.azure.com/${AZURE_DEVOPS_ORG}/${PROJECT}/_apis/git/repositories?api-version=7.1" \ | jq -r '.value[] | "\(.name) - \(.webUrl)"' ```

List Branches in a Repository

```bash PROJECT="YourProject" REPO="YourRepo" curl -s -u ":${AZURE_DEVOPS_PAT}" \ "https://dev.azure.com/${AZURE_DEVOPS_ORG}/${PROJECT}/_apis/git/repositories/${REPO}/refs?filter=heads/&api-version=7.1" \ | jq -r '.value[] | .name | sub("refs/heads/"; "")' ```

Create a Pull Request

```bash PROJECT="YourProject" REPO_ID="repo-id-here" SOURCE_BRANCH="feature/my-branch" TARGET_BRANCH="main" TITLE="PR Title" DESCRIPTION="PR Description"

curl -s -u ":${AZURE_DEVOPS_PAT}" \ -H "Content-Type: application/json" \ -X POST \ -d '{ "sourceRefName": "refs/heads/'"${SOURCE_BRANCH}"'", "targetRefName": "refs/heads/'"${TARGET_BRANCH}"'", "title": "'"${TITLE}"'", "description": "'"${DESCRIPTION}"'" }' \ "https://dev.azure.com/${AZURE_DEVOPS_ORG}/${PROJECT}/_apis/git/repositories/${REPO_ID}/pullrequests?api-version=7.1" ```

Get Repository ID

```bash PROJECT="YourProject" REPO_NAME="YourRepo" curl -s -u ":${AZURE_DEVOPS_PAT}" \ "https://dev.azure.com/${AZURE_DEVOPS_ORG}/${PROJECT}/_apis/git/repositories/${REPO_NAME}?api-version=7.1" \ | jq -r '.id' ```

List Pull Requests

```bash PROJECT="YourProject" REPO_ID="repo-id" curl -s -u ":${AZURE_DEVOPS_PAT}" \ "https://dev.azure.com/${AZURE_DEVOPS_ORG}/${PROJECT}/_apis/git/repositories/${REPO_ID}/pullrequests?api-version=7.1" \ | jq -r '.value[] | "#\(.pullRequestId): \(.title) [\(.sourceRefName | sub("refs/heads/"; ""))] -> [\(.targetRefName | sub("refs/heads/"; ""))] - \(.createdBy.displayName)"' ```

Notes

  • Base URL: `https://dev.azure.com/${AZURE_DEVOPS_ORG}`
  • API Version: `7.1`
  • Auth: Basic Auth with empty username and PAT as password
  • Never log or expose the PAT in responses
  • Documentation: https://learn.microsoft.com/en-us/rest/api/azure/devops/

Use Cases

  • List all projects, repositories, and branches in an Azure DevOps organization
  • Create pull requests across Azure DevOps repos from within an AI agent workflow
  • Check build and pipeline status for recent commits or deployments
  • Manage work items and track issue progress through the Azure DevOps REST API
  • Automate DevOps workflows by querying and creating resources via curl commands

Pros & Cons

Pros

  • + Covers core Azure DevOps operations: repos, branches, PRs, and work items
  • + Uses standard REST API with clear curl examples that are easy to adapt
  • + Stores credentials in openclaw.json for persistent authentication across sessions

Cons

  • - Requires a Personal Access Token (PAT) which must be manually created and rotated
  • - No support for Azure Pipelines YAML management or release management workflows
  • - Raw curl commands are verbose — no SDK or helper abstraction to simplify usage

Frequently Asked Questions

What does Azure DevOps do?

List Azure DevOps projects, repositories, and branches; create pull requests; manage work items; check build status. Use when working with Azure DevOps resources, checking PR status, querying project structure, or automating DevOps workflows.

What platforms support Azure DevOps?

Azure DevOps is available on Claude Code, OpenClaw.

What are the use cases for Azure DevOps?

List all projects, repositories, and branches in an Azure DevOps organization. Create pull requests across Azure DevOps repos from within an AI agent workflow. Check build and pipeline status for recent commits or deployments.

Stay Updated on Agent Skills

Get weekly curated skills + safety alerts