Azure DevOps Pull Requests
Browse, review, and manage Azure DevOps Pull Requests — without leaving VS Code.
Features •
Installation •
Getting Started •
Usage •
Architecture •
Contributing •
License
✨ Overview
ADO Pull Requests is a Visual Studio Code extension that brings your Azure DevOps pull request workflow directly into your editor. Select a project and repository, browse active PRs in a dedicated sidebar, inspect file-level diffs with a single click, and even send entire PRs to GitHub Copilot Chat for an AI-powered code review — all without opening a browser.
🚀 Features
| Feature |
Description |
| 🔐 Microsoft SSO |
Sign in with your Microsoft / Azure AD account using VS Code's built-in authentication — no PAT tokens required. |
| 📂 Repository Picker |
Browse your organization's projects and repositories via interactive quick-pick menus. |
| 🌳 PR Tree View |
A dedicated Activity Bar panel lists all active pull requests, expandable to reveal every changed file. |
| 🔀 Inline Diff Viewer |
Click any changed file to open a side-by-side diff powered by VS Code's native diff editor. |
| 🤖 Copilot Code Review |
One-click sends the full PR diff to GitHub Copilot Chat with a pre-built review prompt — get instant AI feedback on bugs, security issues, and code quality. |
| 🌐 Open PR in Browser |
Quickly jump to the PR on Azure DevOps from the tree view. |
| 🔄 Refresh on Demand |
Instantly refresh the PR list from the sidebar toolbar. |
| 🏷️ Branch Info at a Glance |
Each PR displays source → target branch, author, and description in the tooltip. |
📦 Installation
From source (development)
# Clone the repository
git clone https://github.com/your-username/ado-pull-requests.git
cd ado-pull-requests
# Install dependencies
npm install
# Compile the extension
npm run compile
Running in VS Code
- Open the project folder in VS Code.
- Press F5 (or Run → Start Debugging) to launch the Extension Development Host.
- The extension will be active in the new VS Code window.
🏁 Getting Started
1. Sign In
Run the command ADO: Sign In from the Command Palette (Ctrl+Shift+P / Cmd+Shift+P).
You'll be prompted to authenticate with your Microsoft account via VS Code's built-in auth flow.
2. Select a Repository
Run ADO: Select Repository:
- Organization URL — Enter your Azure DevOps org URL (e.g.
https://dev.azure.com/myorg). This is saved and reused automatically.
- Project — Pick a project from the list.
- Repository — Pick a repository to browse its pull requests.
3. Browse Pull Requests
Open the ADO Pull Requests panel from the Activity Bar (look for the git-pull-request icon).
All active PRs for the selected repository are shown in a tree view.
📖 Usage
Viewing Changed Files
Expand any pull request node to see the list of changed files. Each file displays:
- Change type icon — Added (
+), Modified (M), Deleted (−), or Renamed (R)
- File name and full path
Click a file to open the side-by-side diff viewer.
AI Code Review with Copilot
Click the 💬 icon next to any PR to send its changes to GitHub Copilot Chat.
The extension builds a comprehensive review prompt including:
- PR title, author, and description
- All changed files with their content (up to 200 lines per file)
- A request for a thorough review covering bugs, security, and performance
Fallback: If Copilot Chat is unavailable, the prompt opens in a new editor tab so you can paste it into any AI assistant.
Open PR in Browser
Click the 🔗 icon next to a PR to open it directly in your default browser on Azure DevOps.
🏗️ Architecture
src/
├── extension.ts # Extension entry point — registers all commands & providers
├── auth.ts # Microsoft SSO authentication via VS Code Authentication API
├── adoClient.ts # Azure DevOps REST API client (projects, repos, PRs, file content)
├── prTreeDataProvider.ts # TreeDataProvider for the PR explorer sidebar
├── diffViewer.ts # Virtual document content provider & diff command
└── copilotReview.ts # Builds review prompt & sends to Copilot Chat
Key Technologies
- VS Code Extension API — Tree views, commands, authentication, diff editor
- azure-devops-node-api — Official Node.js client for Azure DevOps REST APIs
- Webpack — Bundles the extension for fast activation
- TypeScript — Full type safety across the codebase
⚙️ Available Commands
| Command |
ID |
Description |
| ADO: Sign In |
adoPr.signIn |
Authenticate with Microsoft / Azure AD |
| ADO: Select Repository |
adoPr.selectRepo |
Pick org → project → repo |
| Refresh Pull Requests |
adoPr.refresh |
Reload the PR list |
| View Diff |
adoPr.viewFileDiff |
Open side-by-side diff for a changed file |
| Open PR in Browser |
adoPr.openPr |
Open the PR page on Azure DevOps |
| Send PR to Copilot Review |
adoPr.copilotReview |
Send PR changes to GitHub Copilot for review |
🛠️ Development
Prerequisites
- Node.js 18+ and npm
- VS Code 1.80+
Scripts
npm run compile # Build with webpack (development)
npm run watch # Watch mode — rebuilds on file changes
npm run package # Production build with source maps
npm run lint # Run ESLint on src/
npm run test # Run tests
Debugging
The project includes a .vscode/launch.json configuration. Press F5 to:
- Compile the extension
- Launch a new VS Code window (Extension Development Host)
- Attach the debugger for breakpoints and step-through debugging
🤝 Contributing
Contributions are welcome! Here's how to get started:
- Fork the repository
- Create a branch for your feature or fix:
git checkout -b feature/awesome-thing
- Commit your changes with clear messages
- Push to your fork and open a Pull Request
Guidelines
- Follow the existing code style (TypeScript strict mode, ESLint rules)
- Add relevant tests for new features
- Keep PRs focused — one feature or fix per PR
📝 License
This project is licensed under the MIT License — see the LICENSE file for details.
Made with ❤️ for developers who live in VS Code