Loading...
Loading...
Commit, push, and open a pull request in Azure DevOps. Use whenever the user wants to open, update, or draft a PR and the project is hosted on Azure DevOps (`dev.azure.com`, `visualstudio.com`, or explicit mentions of ADO, Azure Repos, or work item IDs like `AB#1234`). Links work items to the PR, sets reviewers, and supports draft-by-default.
npx skill4agent add flora131/atomic ado-create-prgit status --porcelaingit branch --show-currentgit rev-parse --abbrev-ref origin/HEAD 2>/dev/null | sed 's|origin/||' || echo maingit diff --cached --statgit diff --statgit log --oneline -10git log --oneline origin/$(git rev-parse --abbrev-ref origin/HEAD 2>/dev/null | sed 's|origin/||' || echo main)..HEAD 2>/dev/null | head -20git remote get-url origin 2>/dev/null || echo "no-remote"azaz devopsrepo_create_pull_requestwit_link_work_item_to_pull_requestazAB#<id>mainmasteruser/<short-topic>feature/<topic>feature/1234-<topic>git push -u origin "$(git branch --show-current)"-ugit diff origin/<default-branch>...HEADoriginhttps://dev.azure.com/<org>/<project>/_git/<repo>https://<org>.visualstudio.com/<project>/_git/<repo>repo_get_repo_by_name_or_id{ project, repositoryNameOrId: <repo-name> }idgit log origin/<default>..HEADAB#<id>#<id>feature/1234-...core_list_projectsrepo_list_repos_by_projectrepo_list_pull_requests_by_repo_or_project {
repositoryId: <id>,
status: "active",
sourceRefName: "refs/heads/<current-branch>"
}feat(auth): add JWT token refresh endpoint
fix(ui): resolve layout shift on mobile nav
refactor(db): migrate from raw SQL to query builder
feat(api)!: change pagination response shape## Summary
[1–2 sentences on what this PR does and why]
## Changes
- [Key change 1]
- [Key change 2]
## Breaking Changes
[What breaks and the migration step — delete this section if none]
## Test Plan
- [How this was verified — commands, manual checks, screenshots]
## Work Items
AB#1234AB#<id>repo_create_pull_request {
repositoryId: <id>,
sourceRefName: "refs/heads/<current-branch>",
targetRefName: "refs/heads/<default-branch>",
title: "<conventional-commit title>",
description: "<markdown from template>",
isDraft: true
}sourceRefNametargetRefNamerefs/heads/repo_update_pull_request {
repositoryId: <id>,
pullRequestId: <id-from-step-5>,
title: "<updated title>",
description: "<updated description>"
}AB#<id>wit_link_work_item_to_pull_request {
projectId: <project-id>,
repositoryId: <repo-id>,
pullRequestId: <pr-id>,
workItemId: <work-item-id>
}core_get_identity_ids { searchFilter: "<name or email>" }
repo_update_pull_request_reviewers {
repositoryId: <id>,
pullRequestId: <id>,
reviewerIds: [<ids>],
action: "add"
}url_links.web.hrefisDraft: trueAssistant-model| Sub-task | Tool | When to reach for it |
|---|---|---|
| Locate the repo | | Project name isn't obvious from the remote URL |
| Multiple repos in the project and you need to pick | |
| Inspect branches | | Confirm the default / target branch exists before creating the PR |
| Pull the latest commit or branch policies on the source branch | |
| Branch off server-side when the user isn't working locally | |
| Pick a work item | | User didn't name one — surface their active items so they can confirm |
| Keyword search when the work item ID is uncertain | |
| Fetch title/state to enrich the PR description (e.g. "Closes AB#1234 — add JWT refresh") | |
| Inspect the change | | Programmatic diff on an existing PR when local |
| Verify specific commits landed on the source branch | |
| Re-read a file at a specific commit to describe it accurately | |
| Fetch the PR | | Reload the PR after create/update (web URL, status, policy state) |
| Extra linking | | Link a commit or build to a work item (non-PR relationship) |
| Post "PR #N opened" on the work item so watchers see it async | |
| Comments & votes | | Read existing review threads before editing the PR |
| Seed a context comment on the new PR (e.g. testing notes) | |
| Respond to a reviewer inline | |
| Approve / wait-for-author / reject on the user's behalf — only when explicitly asked | |
| CI signal | | Check whether the branch's CI is green before un-drafting |
| Pull logs when CI is red and you're helping diagnose |