From openhands-skills
Interacts with Azure DevOps repositories, pull requests, and APIs using AZURE_DEVOPS_TOKEN. Manages git pushes, PR creation/updates for code hosted on Azure DevOps.
npx claudepluginhub openhands/extensionsThis skill uses the workspace's default tool permissions.
You have access to an environment variable, `AZURE_DEVOPS_TOKEN`, which allows you to interact with
Manage Azure DevOps projects, repos, pipelines, builds, pull requests, work items, artifacts, and service endpoints using Azure CLI extension.
Interacts with GitLab repositories, merge requests, and APIs using GITLAB_TOKEN. Manages pushes, branching, authentication, and MR creation for GitLab-hosted code.
Manages Azure DevOps projects, work items, repos, PRs, pipelines, wikis, test plans, security alerts, variable groups, environments, branch policies via Python CLI and REST API.
Share bugs, ideas, or general feedback.
You have access to an environment variable, AZURE_DEVOPS_TOKEN, which allows you to interact with
the Azure DevOps API.
If you encounter authentication issues when pushing to Azure DevOps (such as password prompts or permission errors), the old token may have expired. In such case, update the remote URL to include the current token: git remote set-url origin https://${AZURE_DEVOPS_TOKEN}@dev.azure.com/organization/project/_git/repository
Here are some instructions for pushing, but ONLY do this if the user asks you to:
main or master branchopenhands-workspace. Create a new branch with a better name before pushing.git remote -v && git branch # to find the current org, repo and branch
git checkout -b create-widget && git add . && git commit -m "Create widget" && git push -u origin create-widget
When working with Azure DevOps API, you need to use Basic authentication with your Personal Access Token (PAT). The username is ignored (empty string), and the password is the PAT.
Here's how to authenticate with curl:
# Convert PAT to base64
AUTH=$(echo -n ":$AZURE_DEVOPS_TOKEN" | base64)
# Make API call
curl -H "Authorization: Basic $AUTH" -H "Content-Type: application/json" https://dev.azure.com/{organization}/{project}/_apis/git/repositories?api-version=7.1
Common API endpoints:
https://dev.azure.com/{organization}/{project}/_apis/git/repositories?api-version=7.1https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}?api-version=7.1https://dev.azure.com/{organization}/{project}/_apis/git/pullrequests?api-version=7.1https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullrequests?api-version=7.1 (POST)