A console that changed Sitecore development
Every Sitecore developer knows the feeling. You need to rename a field across 200 templates, or re-publish a subtree of 3,000 items, or audit every layout definition in the content tree. You could write a standalone console app, wire up configuration, build and deploy it, run it once, and throw it away. Or you could open the PowerShell ISE and type five lines.
Sitecore PowerShell Extensions exists because repetitive, tedious content operations should not require custom .NET projects. What started as a weekend experiment has grown into something the community now treats as essential infrastructure - a module that ships with Sitecore Experience Accelerator, gets referenced in official Sitecore documentation, and has been downloaded over 174,000 times from the PowerShell Gallery alone.
This is the story of how it got there.
It started with a different CMS
Before there was a PowerShell console for Sitecore, there was one for EPiServer. In late 2010, Adam Najmanowicz built a proof-of-concept plugin that mapped CMS content trees as PowerShell drives - virtual filesystems you could navigate with cd, query with Get-ChildItem, and manipulate with standard PowerShell commands. It was rough, it was alpha, and it came with a warning not to run it on production. But the core idea worked: drop a DLL into a CMS web application, get a PowerShell session with full access to the content API.
When Adam moved to Sitecore development at Cognifide, the concept came with him.
The Sitecore PowerShell Console
The first Sitecore version appeared on the Sitecore Marketplace in November 2011. It created database drives for master, core, and web, letting developers navigate the content tree the way they would navigate a filesystem. Within weeks, it gained context menu scripts, ribbon integration, and scheduled task support. By December, you could build and export Sitecore packages entirely from PowerShell.
The pace was relentless. Every few weeks brought a new integration point - a new place where PowerShell scripts could hook into Sitecore’s UI and workflows. The console was no longer just a console; it was becoming a platform.
By mid-2012, a small community was forming around the project. Jakob Christensen, the creator of Sitecore Rocks, contributed the boilerplate for Visual Studio integration. Colleagues at Cognifide - Szymon Kuzniak and Marek Musielak - contributed commandlets and terminal improvements. Alex Shyba at Sitecore US used it for deployment automation and started including it as a default install on all his sandboxes.
The breakthrough: GUI support
The turning point came in 2013, when Adam discovered Sitecore’s JobMonitor control buried in the Sitecore.Jobs.AsyncUI namespace - an undocumented mechanism for asynchronous communication between background jobs and the Sheer UI. By wiring PowerShell script execution into this system, the console gained the ability to show interactive dialogs: alerts, confirmations, input prompts, modal windows. PowerShell scripts could now have a user interface.
This was the moment the “Console” became the “Extensions.” Version 2.0 shipped in July 2013 with GUI support, scripted data sources, and event handlers. A few months later, version 2.4 introduced Show-ListView - interactive tabular reports with sorting, filtering, and export to CSV, Excel, XML, and JSON. Suddenly, anyone could build custom Sitecore reports without writing a single line of C#.
Michael West joins the project
Two months after the project moved to GitHub in May 2013, Michael West submitted his first commit - a fix for code completion. It was the beginning of a partnership that would define SPE’s future.
Michael brought a different set of strengths. Where Adam built the core engine and integration points, Michael focused on developer experience. He redesigned the ISE code editor. He created a nine-episode video tutorial series that became the standard learning path for new SPE users. He built SPE Remoting - a module that lets you execute PowerShell scripts on Sitecore instances from external machines, enabling CI/CD pipelines and automated deployments. The Remoting module eventually reached over 174,000 downloads on the PowerShell Gallery.
But Michael’s most lasting contribution may be the documentation. Starting in late 2016, he built a comprehensive GitBook at doc.sitecorepowershell.com from the ground up - installation guides, training materials, security documentation, command references, code snippets, and troubleshooting guides. Over 2,900 commits later, it remains the primary reference for SPE users. For many developers, this documentation is their first and most frequent point of contact with SPE.
In 2016, Adam and Michael co-authored Chapter 10 of Professional Sitecore 8 Development (Apress) and delivered a five-hour SPE workshop at Sitecore Symposium that drew an overwhelming response from attendees.
Five years of stewardship
When Adam joined Sitecore and stepped back from active SPE development, Michael took over. For five years, he was effectively the sole maintainer of the module - shipping every release from version 5.0 through 7.0, keeping SPE compatible with each new Sitecore release, handling issues, reviewing pull requests, and answering community questions.
This was not maintenance in the “keep the lights on” sense. During those five years, Michael shipped SPE 6.0 - a major release that renamed the entire namespace from “Cognifide” to “Spe,” establishing the project’s identity independent of any single company. He added support for Sitecore 10’s Items as Resources (IAR) packages. He introduced delegated access, security hardening, and Docker support. He kept SPE relevant through some of the most turbulent years in Sitecore’s platform history.
Michael has been recognized as a Sitecore Technology MVP for over ten consecutive years - a distinction shared by very few in the ecosystem.
Growing into an ecosystem
As SPE matured, it stopped being “Adam’s module” or even “Adam and Michael’s module” and became something bigger. The contributor list grew steadily: Anton Tishchenko, Søren Kruse, John Lundebro, Alan Plocieniak, Corey Smith, simoncroak, Stanislav, Mike Reynolds, Alex Washtell and dozens more. By version 8.0, twenty-seven developers had contributed code.
Sitecore itself began treating SPE as infrastructure. The Sitecore Experience Accelerator (SXA) listed it as a required prerequisite. It appeared in XM Cloud starter kits. The Sitecore Hackathon created a dedicated competition category for “Best Sitecore PowerShell Extensions Module” - a recognition usually reserved for the platform’s own products, not community modules.
The module grew its own sub-ecosystem. Alan Plocieniak built QA automation. Community members created migration scripts, audit tools, and reporting packages. User groups from Milwaukee to Pune ran SPE workshops. Blog posts multiplied - over ninety articles and videos were documented by early 2015, and the number has grown steadily since.
What the community says
The strongest validation for any open-source project is not download counts or GitHub stars - it is developers choosing to depend on it for real work.
Richard Seal, a Sitecore MVP at Perficient, put it simply: “I literally couldn’t work without SPE - I can’t remember the last implementation I did that didn’t have it installed.”
Jon Upchurch, also at Perficient, estimated it saved him “hundreds of hours of headaches.” Gabe Streza, a nine-time Sitecore MVP, called PowerShell Extensions “practically a prerequisite.” Seann Hicks at Tangent Technologies named it “by far most essential of the Sitecore Modules.”
At Sitecore Symposium 2012, Alistair Deneys from Sitecore declared: “There is nothing you can not do with PowerShell Console, because you’re inside the Sitecore application.” John West, Sitecore’s former CTO, endorsed it as one of the accelerators Sitecore developers should consider.
Christopher Campbell perhaps captured the community sentiment best: “The Sitecore powershell tools are absurdly good and helpful… Everybody should learn to sling some shell in Sitecore, you’ll never look back.”
SPE today
SPE 8.0 “Wayward Son” shipped in November 2025, bringing multi-tab ISE, rule conditions, script library tree views, and dozens of improvements and fixes. The project lives on GitHub under the MIT license. Documentation lives at doc.sitecorepowershell.com. The Remoting module is on the PowerShell Gallery.
From a single DLL dropped into a web app’s bin folder to a module that Sitecore ships as a platform dependency - SPE’s journey has been shaped by every developer who filed an issue, submitted a pull request, wrote a blog post, or simply told a colleague “you should install this.” It is, and has always been, a community project.
The people behind SPE
Adam Najmanowicz - Creator, Architect, and Lead Developer. Built the original console, the core engine, and most of the Sitecore integration points. Sitecore Technology MVP. Currently at VML.
Michael West - Developer, Documentation Lead, and the person who kept SPE alive and evolving for five years. Built Remoting, the GitBook documentation, the video tutorial series, and shepherded the project through six major releases. Ten-time Sitecore Technology MVP.
And every contributor who made SPE what it is - from the Cognifide engineers who helped build the first version, to the twenty-seven developers who have committed code, to the hundreds who filed issues, wrote scripts, and shared their work with the community.