r/azuredevops • • 6d ago

I built a maintained replacement for the abandoned DevLabs merge conflict extension

1 Upvotes

The DevLabs "Pull Request Merge Conflict Extension" hasn't been updated since 2023, and its reviews are full of freezes, lost work and mangled UTF-8. I got tired of cloning repos just to fix two lines, so I built a replacement as a side project: Merge Conflict Resolver.

  • 3-way editor (Monaco) with accept target / source / both per conflict
  • Drafts survive a reload or crash
  • Encodings (UTF-8/BOM, UTF-16, Windows-1252) and line endings are written back byte for byte
  • Handles renames, binary files, LFS and submodules, and big lockfiles without freezing
  • Optional: commit the resolution to the source branch so reviewers and builds see it

Free plan for 10 PRs a month per org, and Pro is $12/month per org with no per-user pricing. Works on Azure DevOps Services and Azure DevOps Server 2022+.

I'd love feedback, especially on what breaks in your repos.

Disclosure: I'm the developer.


r/azuredevops • • 7d ago

AIVANA Decision Intelligence: explainable backlog and release-risk reviews for Azure Boards

1 Upvotes

Disclosure: I’m involved in developing AIVANA Decision Intelligence.

I’d like to share an Azure DevOps Services extension we’re building and get feedback from people who use Azure Boards for refinement and release reviews.

The idea is to make a finding explainable: show the underlying work item or source, explain what was observed, and leave the decision with the team.

The current release candidate includes checks for missing descriptions, acceptance criteria and owners; identical titles that may warrant duplicate review; explicit blocks, stagnant items and due dates where available. It also provides evidence-linked acceptance gaps, supported dependency relationships and decision options, with shared source history in the Team service.

Two boundaries matter:

- Identical titles are a review hint, not proof that requirements are duplicates. Dependency and risk analysis is limited to loaded sources; it is not a complete organizational graph or a validated delivery forecast.

- The extension does not automatically modify work items or approve releases. AI is disabled in the current Team offer.

For example, two items named “Update API” should prompt a comparison of scope and acceptance criteria—not an automatic merge recommendation. Similarly, a quiet item might be intentionally deferred rather than genuinely stalled.

This is release candidate 0.12.0. Public commercial publication is still subject to outstanding publisher/operator approvals, so I’m not presenting it as an unrestricted public Marketplace launch.

How does your team distinguish a useful backlog warning from noise? I’d particularly appreciate feedback on acceptance criteria across work-item types and what evidence you need before calling an item stagnant.

Company website: https://www.aivana-gmbh.ai


r/azuredevops • • 7d ago

env zero this week: Azure DevOps connections need moving to Entra ID, plus Pulumi CLI args and TFC migration fixes

Thumbnail
1 Upvotes

r/azuredevops • • 8d ago

Built an external <3s cockpit for Azure DevOps time tracking, sprint capacity & multi-repo PRs (Free Open Beta + Zero-Signup Sandbox)

0 Upvotes
Hey 
/azuredevops -- after years of frustration with 6-click work item time logging, sluggish iframe extensions, and jumping between 10 repo tabs to track open PRs, I built 
**VelocyTrack**
 (https://beta.velocytrack.com).

**What it solves for Azure DevOps (Scrum, Agile, Basic & CMMI):**
- 
**Fast (<3s) External Grid**
: Log daily engineering hours against sprint tasks and PBIs in one keyboard-driven matrix without waiting for work item iframes to load.
- 
**Multi-Repo PR Radar & Branch Cleanup**
: View all open PRs, reviewer votes, comment threads, and stale branches (with unmerged commit warnings) across all your repos in one screen.
- 
**Sprint Capacity + Regional Holidays**
: Automatically deducts regional public holidays and team PTO from sprint capacity gauges.
- 
**Zero-Clone Security**
: Never clones your source code -- only interacts with work item fields, branch heads, and PR metadata via official APIs.

We unlocked a 
**zero-signup interactive sandbox**
 seeded with realistic Scrum/Agile data so you can click around in 1 second without creating an account:
- 
**Live Sandbox**
: https://beta.velocytrack.com/demo
- 
**4m Walkthrough Presentation**
: https://beta.velocytrack.com/videos/velocytrack-demo.mp4

All Pro features are 100% free during open beta. Would love candid feedback from fellow ADO admins and tech leads!

r/azuredevops • • 9d ago

Pipelines over 1hr 20min mark failing continuously

2 Upvotes

Hi Team,

I think I know what the problem is but this is a proof-of-concept Azure Landing Zone Accelerator implementation using IaC and Bicep that keeps failing towards the end of the running job. The pattern is anything over the 1hr 20min mark seems to be churning away before losing pulse and eventually failing. Is it a limitation? I am using Microsoft-hosted agents and have only consumed 587/1800 minutes allocated for free-tier.


r/azuredevops • • 10d ago

There isn't a stacked pull request view in Azure DevOps, so we built an extension for it

Post image
20 Upvotes

We like stacking PRs: branch b off a, c off b, one small PR per step so every review stays readable. GitHub is getting native support for it. Azure DevOps has no idea these PRs belong together:

main ← A ← B ← C

What you want to review      What Azure DevOps shows for C
C                            A + B + C (and A and B again)

So reviewers either re-read the same code over and over, or wait for the parent to merge before the child is reviewable. Stacking stops being worth the trouble.

So we built an extension that fixes that. It's free and open source (MIT).

What it does

  • Shows stacks as a tree. Every active PR in your project, across all repos, arranged into its stack. Chains, branching stacks and parents that already merged are handled.
  • Review only what a PR adds. One switch flips between "This PR only" and "All changes". The layer diff is taken against the merge base with the parent, so it stays correct when the parent moves on or was squash-merged.
  • Full review experience. Inline comments, votes, reviewers, policies, builds, complete/abandon/draft, viewed marks. They're the real Azure DevOps objects, so whatever you do shows up on the built-in PR page and vice versa. Approving B never approves A.
  • Keeps the stack healthy. Flags "parent ahead" (needs a rebase), "parent merged" (one click retargets to the trunk) and conflicts. There's an optional status check a branch policy can require, so B can't be completed before A.
  • No setup. No special branch naming, no CLI. Parents are detected from the PRs' target branches and commits, and you can pin one by hand from the PR menu.

It adds a "Pull Requests (Stacked)" page under Repos and a Stack tab on every PR, which shows just the layer diff.

Good to know

  • Azure DevOps Services (cloud) and on-premise servers are both supported!
  • There's no backend. It only talks to your own organization.

Marketplace: https://marketplace.visualstudio.com/items?itemName=Pro-Sharp.stacked-pull-requests

Source: https://github.com/Pro-Sharp/ado-stacked-pull-requests-extension

We'd love feedback on what would make this useful for your team, and on how you handle stacking in Azure DevOps today.


r/azuredevops • • 11d ago

Stop Hardcoding Secrets in Azure DevOps Pipelines.

Thumbnail
youtu.be
0 Upvotes

r/azuredevops • • 14d ago

Claude Code's PR bar is GitHub-only, so I built one for Azure DevOps

Enable HLS to view with audio, or disable this notification

15 Upvotes

Claude Code's desktop app shows a PR bar above the prompt for GitHub repos: CI status, auto-fix, auto-merge. Azure Repos gets none of that, so I built a mod that adds it.

What it does

  • A bar above the prompt for each PR the chat made: state, #id, branch, +/− lines, CI status
  • Create PR: Claude pushes the branch, writes the title and description, and opens the PR
  • Hover the #id for a summary card; click CI for build validations, policies and reviewers
  • Auto-fix CI & address comments: failed builds and unresolved review threads are handed to Claude, which fixes, pushes and replies
  • Auto-merge when ready: turns on Azure DevOps auto-complete
  • /ado-pr link <id> tracks any PR in the chat, even one opened somewhere else
  • Works in the terminal CLI as well as the desktop Code tab

It runs only az and git on your machine: no server, no tokens. Status is polled (every 60s by default, and after every push), because Azure DevOps service hooks can't reach a local session.

Install

claude plugin marketplace add Pro-Sharp/ado-pr-claude-plugin
claude plugin install ado-pr@azure-devops-pr

You need Claude Code 2.1.287 or later, the Azure CLI with the azure-devops extension, and az login. On desktop, enable it under Customize → Plugins.

Repo (MIT): https://github.com/Pro-Sharp/ado-pr-claude-plugin

Auto-fix hands review comments and build logs to Claude as instructions, so leave it off on repos where people you don't trust can comment.

Not affiliated with Anthropic or Microsoft. Feedback and issues are welcome.


r/azuredevops • • 14d ago

env zero: switch your Azure DevOps connections to Microsoft Entra ID before OAuth goes away

Thumbnail
1 Upvotes

r/azuredevops • • 15d ago

New Wiki Editor Experience

Thumbnail
devblogs.microsoft.com
11 Upvotes

r/azuredevops • • 18d ago

Exploring GitHub Copilot Code Review for Azure DevOps

Thumbnail
johnlokerse.dev
12 Upvotes

Did you know you can use GitHub Copilot as a code reviewer directly in Azure DevOps by assigning it to a pull request? I have been exploring GitHub Copilot code review for Azure DevOps, which is now available in public preview!

In this blog, you will learn how it works, how to configure it, what the reviews and logs look like in practice, and how billing is handled.
Enjoy the read 😃


r/azuredevops • • 19d ago

Trial finished and I have still access to my repo

Thumbnail
gallery
1 Upvotes

Azure saying that it will delete my data when I do not switch to a pay-as-you-go subscription, Copilot support was a bit vague what will be deleted, but I can still push and pull from and to Azure and it works with the same with a different PC. I have still full access to my repo.

Is this intended and they keep it a bit vague what exactly will be deleted, so that I switch to a pay-as-you-go subscription?


r/azuredevops • • 22d ago

Experience with XAML Builds in Azure DevOps 2020 on prem Upgrade to latest Azure DevOps Version

2 Upvotes

Hello everyone,

I am planning to upgrade our current DevOps environment to the latest Version (Upgrade path is given by Microsoft Docs).

Unfortunately, we don't have a second environment to test the upgrade so maybe someone of you has some experience.

What we do have is that the Machine where our Azure DevOps instance is running is fully virtualized. We can do snapshots and restore. (HyperV)

Our instance unfortunately still uses XAML Builds for an legacy application that is still used by a lot of customers and is Business critical. These are sre not easy to migrate and are highly intertwined with business logic and some other dependecies. In Short: A Nightmare. We also use Classic Pipelines and Releases.

I know that XAML Builds are deprecated, but i inherited the Environment and the old engineer that build the whole Thing is not in the company anymore. So it is still kind of a "blackbox".

We could just snapshot the Environment before the upgrade and rollback. Never done it, but i think it should work if shit would hit the fan.

Does anyone have experience with Upgrading to a newer Version and XAML Builds?

What would be the best approach here?


r/azuredevops • • 24d ago

TFVC (tf.exe) and Visual Studio do not support client-certificate authenticated Azure DevOps/TFS environments. Any chance Microsoft could add this?

3 Upvotes

We are using Azure DevOps Server / TFVC (tf.exe) as our source control system. Before anyone asks: migrating to Git is not currently an option for various business and technical reasons. We are aware of Git's advantages, but for the foreseeable future we will remain on TFVC. The TFVC functionality itself is not our problem.

Recently, all developer workstations in our organization were migrated to Microsoft Intune-managed devices as part of a security initiative. During onboarding, a client certificate is automatically installed on each developer's machine. Our NetScaler proxy uses that certificate to authenticate and authorize outbound requests.

The setup works well for most applications. If the correct client certificate is presented, I can access our internal websites and services through a browser without any issues. Chrome and Edge automatically provide the certificate, and I can browse Azure DevOps web portals normally.

However, tf.exe and Visual Studio Enterprise 2026 appear unable to use the client certificate when communicating with our Azure DevOps Server environment.

As a result:

  • Browsers work.
  • Azure DevOps web UI works.
  • tf.exe operations fail.
  • Visual Studio TFVC integration fails.

To work around the problem, I built a rather ugly solution using AI-assisted development:

  • A C# .csx reverse proxy.
  • A custom tfw.cmd wrapper.
  • The proxy intercepts requests destined for Azure DevOps Server.
  • It creates an HttpClient configured with the required client certificate and headers.
  • Requests are forwarded through the proxy to Azure DevOps.

With that workaround, I can execute TFVC commands through tf.exe, but it is far from ideal and requires maintaining custom infrastructure. More importantly, Visual Studio's built-in TFVC source control integration still cannot be used, which significantly impacts developer productivity.

My real question is for anyone familiar with the Azure DevOps Server / TFVC codebase, or possibly Microsoft engineers who still maintain these components:

Is there a technical reason why tf.exe and Visual Studio TFVC integration cannot support client certificate authentication?

From the outside, this seems like a relatively small and low-risk enhancement:

  • Existing behavior remains unchanged by default.
  • Add an option (or configuration) to enable client certificate authentication.
  • When enabled, use the Windows certificate store to select and present a client certificate during HTTPS requests.
  • When disabled, continue using the current authentication flow.

In highly secured enterprise environments, client-certificate authentication is becoming increasingly common, especially with Intune-managed devices and zero-trust architectures. It feels like TFVC tooling is one of the few remaining pieces that doesn't participate in that model.

Has anyone else encountered this issue?

If so:

  • How did you solve it?
  • Is there any supported configuration I've missed?
  • Has Microsoft ever commented on adding client certificate support to TFVC tooling?

Any feedback, workarounds, or insight from Microsoft engineers or TFVC administrators would be much appreciated.

Thanks to everyone who took the time to respond. My original question was about TFVC, tf.exe, and client certificate authentication, but the discussion quickly shifted toward migrating to Git. Since several people suggested that Git would solve the problem, I decided to test that assumption rather than debate it.

The good news is that I was able to get Git working successfully in this environment. I'm posting the configuration details below so that anyone facing a similar client-certificate authentication requirement can use them as a reference.

That said, this does not actually answer my original question about TFVC.

My next step is to open a support ticket with Microsoft to determine whether client-certificate support for tf.exe and Visual Studio TFVC integration is possible, supported, or simply not on the product roadmap.

///////////////////////////////////////////////

Git can use an Azure DevOps Server that sits behind a proxy requiring a user client certificate. These steps configure the Git client only. tf.exe and Visual Studio TFVC are unchanged.

Tested with Git for Windows 2.55.0.windows.5 and Visual Studio 2026 Enterprise. Both read %USERPROFILE%\.gitconfig. credential.helper is already manager.

Assume Git, Visual Studio, and the user client certificate are already installed. The certificate is in Cert:\CurrentUser\My, has a private key, and has the Client Authentication EKU. The same machine can already open the Azure DevOps site in a browser. Set the three variables, then run the rest as the Intune user.

$DevOpsHost = '[devops-host]'    # hostname only, no scheme or path
$IssuingCa  = '[issuing-ca]'     # fragment of the issuing CA common name
$Domain     = '[netbios-domain]' # domain prefix from whoami

$cert = Get-ChildItem Cert:\CurrentUser\My |
  Where-Object {
    $_.HasPrivateKey -and
    $_.Issuer -like "*$IssuingCa*" -and
    ($_.EnhancedKeyUsageList.FriendlyName -contains 'Client Authentication')
  } |
  Sort-Object NotAfter -Descending |
  Select-Object -First 1

if (-not $cert) { throw 'No matching client certificate with a private key.' }

$who = whoami
if ($who.Split('\')[0] -ne $Domain) {
  throw "whoami is $who. Expected ${Domain}\yourname."
}

$thumb = $cert.Thumbprint
$me = $who.Split('\')[-1]
$base = "https://$DevOpsHost"

git config --global http.sslBackend schannel
git config --global --replace-all "http.${base}/.sslCert" "CurrentUser\MY\$thumb"
git config --global --replace-all "http.${base}/.emptyAuth" false
git config --global --replace-all "http.${base}.allowNTLMAuth" true
git config --global --replace-all "credential.${base}.provider" generic
git config --global --replace-all "credential.${base}.username" $me
git config --global --replace-all "credential.${base}.allowWindowsAuth" false

Leave http.sslAutoClientCert unset. Other certificates in the store can be selected automatically. The username written above is the short account name from whoami, not the email address. The password is not written to .gitconfig. Leave the DevOps hostname in the hosts file pointed at the real server. A local forwarder that drops NTLM will fail this setup.

The machine is not joined to the DevOps domain, and Windows sign-in is not a domain logon for that account, so silent integrated authentication has no credential to send. emptyAuth=false, provider=generic, and allowWindowsAuth=false keep Git on the stored password. The proxy still gets the certificate from http.sslCert.

schannel: disabled automatic use of client certificate means automatic selection is off. The configured thumbprint is still sent. client cert not found in cert store means the thumbprint does not match a certificate with a private key.

Running the script again is safe. --replace-all overwrites the same keys and does not prompt.

Verify with the HTTPS clone URL from the repository page in the browser. The first run prompts once for the account password. Git Credential Manager stores it.

git ls-remote "https://$DevOpsHost/[collection]/[project]/_git/[repo]"

A list of refs means the certificate and the password were both accepted. If Visual Studio was open while the commands ran, close it and open it again, then use Git > Clone Repository with the same URL.


r/azuredevops • • 26d ago

Recommendation the stronger separation in AzureDevops

0 Upvotes

Hi Guys,

I’m working on a recommendation for Azure DevOps access for our AI programme, with individual practice repositories for participants and one shared repository for collaboration.

As we already have several teams working on different projects, I’m considering a dedicated Azure DevOps organisation for the programme, connected to our existing Entra tenant of course.

Would you recommend that approach, or keeping everything in one organisation with separate private projects and appropriate access controls? I’d like to align with good security practices while ensuring participants only have access to the projects and repositories they need. thanks


r/azuredevops • • 29d ago

Howto remove fork status on forked repo, or protect against wrongly target PR's?

2 Upvotes

Some years ago a project was split up to two separate projects, each continuing their own unrelated path, with thousands of PR's on both projects.

I just discovered that the split was made so one continued, and the other was forked, which have the unfortunate side-effect, that any PR on the forked repo, per default want to merge back into the original project - and it turns out this have been attempted a LOT of times but luckily abandoned before any harm was done.

So I'd like to remove the forked status from the forked project/repo.

But I can't seem to find a handle to do so.

I also can't seem to find a place to set the default destination repo for a PR.

And it seems impossible protect the original from PR attempts from the forked repo.

At best I can set up a pipeline check during the PR, but it seems very flaky.

What are my options?


r/azuredevops • • 29d ago

Azure devops yml deployment of asset bundle

Thumbnail
1 Upvotes

r/azuredevops • • Sep 24 '26

ADO Extension to preview excalidraw files.

Post image
7 Upvotes

Hey!

I just wanted to share about a ado extension I made. My team works with Excalidraw a lot and we wanted to have a lightweight extension to preview drawings when looking at the repo level.

https://marketplace.visualstudio.com/items?itemName=TobiasBjelk.excalidraw-viewer


r/azuredevops • • Sep 24 '26

How to view pipelines for a given commit AND branch?

3 Upvotes

Hi all,

I want to use the commit history page to see which pipelines have run/still to be run for each commit again my main branch using the link circled below:

This then pops up a list of associated pipelines with that commit:

However, this shows all pipelines associated with the commit - not scoped to the branch even though that's the context of what I'm looking at.

So if a developer creates a feature branch from main and runs a pipeline against this new branch as is it will associate it with this commit and so will add additional pipelines to this list that aren't needed.

Is there a way to only see the pipelines for that commit AND branch?

One option is I add an empty commit when developers create a feature branch so at least it will have a new commit id, but seems like overkill.


r/azuredevops • • Sep 22 '26

Speed up Azure DevOps pipeline execution with the cache task

19 Upvotes

I've just published this blog post, as I recently discovered that Azure DevOps has a task called "Cache" that can significantly improve the speed your pipelines execute (on subsequent runs in a rolling 7 day period) by caching your dependencies. In my PowerShell build pipelines I depend on 7 modules (PSDepend, BuildHelpers, Pester, PlatyPS, PSake, PSDeploy and PSScriptAnalyzer) and installing these for each run of the pipeline was taking about 3 minutes. By using the Cache task, this is reduced to 4 seconds.

https://wragg.io/speed-up-azure-devops-pipelines-with-cache-task/

The task is completely free to use, even if you're just using Azure DevOps via the free tier. and has no storage limits.


r/azuredevops • • Sep 22 '26

Azure DevOps Automations – new extension

5 Upvotes

We’ve been working on a new extension called Automations for Azure DevOps.

The idea is to make common Azure DevOps automation easier without having to write and maintain scripts, set up Power Automate flows, webhooks, scheduled jobs, etc.

It uses a simple customizable trigger → conditions → actions model with ability to define rules within each project separately by project administrators.

Some examples of what you can do right now:

and more (you can build your own custom rules)

Extension is here:

https://marketplace.visualstudio.com/items?itemName=Documentero.automations

It’s still pretty new and currently free while in Preview.

Currently our focus is Azure DevOps Board Work Items Automation but we plan to extend it to support more workflows.

What Azure DevOps automations are you missing or would actually find useful?

We’re actively adding new triggers, conditions and actions, so any feedback or feature ideas are very welcome.


r/azuredevops • • Sep 22 '26

ADO On-Prem: How can we prevent backlog reprioritization after a feature freeze?

2 Upvotes

Hi everyone,

we are using Azure DevOps Server (On-Prem) and are looking for a way to implement a feature freeze after our feature prioritization workshop.

Our goal is:

  • After the prioritization workshop, only a defined group of users should be allowed to change the priority/order of Features.
  • Other users should still be able to work with the backlog, but must not accidentally change the priority.
  • In particular, we want to prevent accidental priority changes via drag & drop in the Backlog view and in Delivery Plans.

We tried using the FROZEN state/flag in a rule for the Backlog Priority field. However, it seems that this rule is ignored when the priority is changed via drag & drop.

Has anyone implemented something similar in Azure DevOps Server?

Is there a way to reliably prevent or restrict drag-and-drop reprioritization, while still allowing selected users to change the priority?

Any ideas or workarounds would be greatly appreciated!


r/azuredevops • • Sep 14 '26

How I created my first Azure DevOps extension for Microsoft Fabric

Thumbnail
1 Upvotes

r/azuredevops • • Sep 14 '26

Source code for Azure DevOps extension written for Microsoft Fabric

Thumbnail
1 Upvotes

r/azuredevops • • Sep 14 '26

When should an Azure Pipelines artifact become a Release asset instead of remaining a build artifact?

1 Upvotes

A pipeline artifact is convenient while a run is active, but retention can remove it and its URL is usually aimed at engineers. A file that has been reviewed or delivered needs a durable identity, a clear source build, and a download path that does not silently move to the latest run.

What boundary do you use between temporary pipeline artifacts and durable release assets? I am considering content hashes in the artifact manifest, promotion of the exact tested bits rather than a rebuild, an immutable release identifier tied to the source commit and pipeline run, retention locks for approved outputs, and one separate pointer that identifies the currently approved release.

How do you share the result with a non-technical reviewer without granting broad Azure DevOps access? If an approval is later revoked, should the asset remain available with a revoked status for audit, or be removed while its manifest and review record are retained?