17 October 2026 · article
Snowplow: a PowerShell module for ServiceNow, built with a lot of help from Copilot
I’ve been using a version of this tool at work for a while. It started as a handful of scripts and grew into something I reach for daily. I never published it, mostly because I wasn’t sure it would hold up outside my own environment. Eventually I decided the only way to find out was to clean it up and put it out there. So here’s Snowplow, on GitHub and the PowerShell Gallery.
What it is
Snowplow is a PowerShell module for ServiceNow admins who’d rather stay in a terminal than click through a browser. It wraps the Table API (and now-sdk where that makes sense) so the everyday jobs become commands: saved profiles for your instances, query building, attachments, a background script runner, update set previews, and so on. My current favourite is Open-SnowRecord which opens a record from the pipeline in your default browser directly from the terminal.

Authentication supports both OAuth flows. Authorization code opens a browser window and suits admins working interactively. Client credentials is for unattended use, and ideally that means a proper service account rather than someone’s personal login.
Yes, I built it with Copilot
Most of Snowplow was written with GitHub Copilot, and I’m not going to be coy about it. I know “vibe coded” makes some people wince, and I understand why. Code that nobody understands is a real risk, and an admin tool that can change a production instance is exactly where you don’t want that.
But in my experience the label hides the real question, which is whether anyone is being careful. What worked for me:
Know what you want first. I wrote the ideas down as GitHub issues before generating anything: history, live log tail, undo for changes, config drift checks, offline schema cache. The AI fills in the code, but I still decide what the thing should be. Review everything. I read the output, ran it, and pushed back often. Copilot is quick but confidently wrong a fair amount of the time, especially around ServiceNow’s quirks. Make the machine check it. GitHub Actions runs the tests on Windows, Linux and macOS, and a tagged release publishes to the Gallery. That safety net matters more when much of the code is generated. Test against a real instance. I use my own developer instance, not just mocks.
The tools help with the typing. They don’t replace the engineering judgement about what to build, what to trust, and what to ship.
Where it’s going
Next up is more cross-platform polish (starting with Linux), the issues above, and better docs. I’m also experimenting with now-tui, a terminal UI for ServiceNow I’ve been tinkering with for some time. It’s not ready for show-and-tell yet, but it’s a different angle on the same itch: making ServiceNow feel at home in a terminal.
Have a go
Install-Module Snowplow
It’s early, and I’d love to hear where it breaks. Issues and pull requests are welcome. If you’re sceptical about AI-assisted code, read the source and tell me what you find. That’s a fair test.