I Just Vibe-Coded a PowerShell Script to Find Azure VM Images

TLDR

I was so sick of looking for images, I vibe-coded this PowerShell script to find them. The script makes it a breeze with interactive browsing, smart filtering, and detailed markdown reports. Save time, reduce frustration, and Command the Cloud. 🚀

Check out the repo here

The Azure Image Hunt Struggle is Real

Okay, so I was totally annoyed the other day trying to find the name of the latest Windows 11 image in Azure. You know how it is - scrolling through endless lists, trying to figure out which one is actually the latest version. Total productivity killer! 💀

So I decided to vibe-code up a PowerShell script to solve my problem once and for all. ✨

The Power of AI Pair Programming

I teamed up with GitHub Copilot using the Claude Sonnet 3.7 model, and let me tell you, it was a game changer! 🤖💻

Azure Browse AI

This was such a fun little project! I fired up VSCode, cranked some lo-fi beats, and paired up with GitHub Copilot running the Claude Sonnet 3.7 model. The coding flow was 🔥 - I’d describe what I wanted, Claude would suggest the code patterns, and I’d refine and customize. We bounced ideas back and forth, with Claude helping me navigate the Azure PowerShell module complexities while I focused on making the UX super intuitive.

The AI helped me spot edge cases I wouldn’t have thought of, like handling pagination more elegantly and suggesting clever filtering approaches. What would have taken me days of Stack Overflow diving took just a couple of hours of vibing with my AI coding buddy!

The Azure Image Discovery Problem

If you’ve ever used az vm image list, you know the pain. Azure has this MASSIVE library of VM images, and finding what you need can be straight-up overwhelming:

  1. Data overload: CLI commands dump so much JSON your eyes start bleeding 👀
  2. Zero interactivity: Good luck filtering that mess in real-time
  3. Manual tedium: Life’s too short to be copying publisher names by hand!

This stuff legit slows down deployments and makes me want to throw my keyboard sometimes.

Enter Browse-VmImages.ps1: The Rescue Script

Azure Browse Script

OUR little PowerShell creation makes Azure VM image discovery actually enjoyable (or at least not painful). Here’s the magic sauce:

  1. Interactive Browsing: Scroll through paginated lists of publishers, offers, SKUs, and versions - no more endless wall of text!
  2. Smart Publisher Filtering: Just want Microsoft stuff? Done. Need Canonical? Easy. The script adapts to how you think.
  3. Full Image Details: Once you find your image, get ALL the juicy details without extra commands.
  4. Markdown Magic: Automatically generates a slick report with ready-to-paste Bicep and CLI examples. Future you will be SO grateful!

The Cool Features I’m Low-Key Proud Of

Azure Browse Script

  1. Region-Specific Search: Because nobody has time to filter through images not available in their target region
  2. Flexible Publisher Options:
    • Just Microsoft publishers (super fast mode ⚡)
    • The usual third-party suspects
    • ALL THE PUBLISHERS (coffee break time ☕)
    • Specific publisher search for the “I know what I want” moments
  3. Smooth Navigation: Next/previous/jump-to-item controls that won’t make you curse
  4. Detail Overload: Get all those hidden gems like security types and architecture without digging

How To Use This Bad Boy

Here’s how to get started with Browse-VmImages.ps1:

clone the repo and run the script with your desired parameters:


# Clone the repo
git clone https://github.com/kelomai/azure-image-browser.git

# Microsoft publishers in eastus? Easy peasy!
.\Browse-VmImages.ps1 -location "eastus" -microsoftOnly $true

# Need that specific Ubuntu flavor from Canonical?
.\Browse-VmImages.ps1 -location "westus" -searchPublisher "Canonical" 

# Prefer smaller bite-sized lists?
.\Browse-VmImages.ps1 -location "centralus" -pageSize 10

The Output is Actually Gorgeous

The script spits out a markdown report that’s actually readable by humans:

# Azure VM Image Selection
Here's your image 📀 thanks to 🧙 [Kelomai](https://kelomai.io) 🚀
<br>
Report Date: 04/10/2025 14:39:23
<br>
Region: EASTUS

## Image Reference
| Property | Value |
|----------|-------|
| Publisher | MicrosoftWindowsServer |
| Offer | WindowsServer |
| SKU | 2022-Datacenter |
| Latest Version | 20348.1970.240326 |
| OS Type | Windows |
| Hyper-V Generation | V2 |
| Architecture | x64 |
| Security Type | TrustedLaunch |

Why This Script Is My New Best Friend

  • Time-Saving: Find images in seconds not hours (life is too short!)
  • Decision Helper: All the image details to make smart choices
  • Copy-Paste Heaven: Deployment examples ready to go
  • UX That Doesn’t Suck: Because command-line tools can actually be pleasant to use

The Extra Awesome Sauce

This isn’t just a basic finder - it goes deep with:

  1. Security Details: TrustedLaunch and Confidential VM support info right there
  2. Compatibility Check: Architecture and generation info to avoid those “why won’t this deploy?!” moments
  3. Best Practices: Azure deployment tips baked in
  4. Version History: Because sometimes you need an older version (we’ve all been there)

So there you have it! My little AI-assisted coding project turned into something I’m actually using almost daily now. If you’re an Azure dev constantly hunting down image references, give it a try! The code is available in my repo, and I’m totally open to suggestions and improvements. Happy Azure-ing! 🚀

I Just Vibe-Coded a PowerShell Script to Find Azure VM Images