Pester is PowerShell’s testing framework: you write tests as Describe blocks that group related checks, It blocks that state one expected behavior each, and Should assertions that check the actual result against the expected one. Run the file with Invoke-Pester and you get a pass/fail report instead of eyeballing output.
The value shows up over time: a function that passed its tests once and got refactored later either still passes, or tells you exactly which assertion broke, instead of you re-checking it by hand every time.
Writing the first test for an existing function is the slow part: figuring out what to group under which Describe, what the meaningful It cases are, and typing out the scaffold before you even get to the assertions that matter. That’s the part DetentShell automates.
Right-click a function, pick Generate Pester Tests. A real Describe/It scaffold opens in a new tab.
A band across the top shows the function’s testability rating and exactly how many placeholders are left. It never claims a generated test is done.
Next placeholder walks the caret through every stub in order. Same IntelliSense and analysis as any script tab.
Unfilled stubs run as skipped, not failed and not passed. Fill one, run again, and that one goes green while the rest stay pending.
Generation is fully deterministic. When you click Generate, the request carries aiEnrich = false and no provider key at all. There’s no setting anywhere in DetentShell that changes that; it’s pinned by an automated test in the app’s own suite that fails the build if an AI provider ever reaches the wire implicitly.
The Pester panel’s coverage board lists every function in your project as covered or missing, and covered functions show their test file. A stub-only file counts as generated, not covered — the app says so on its own status line, rather than reporting a green number that isn’t true yet.
PS> Start-Process "https://detentpoint.com/detentshell/download"
# Coming soon — ships once the installer is code-signed
Coming soon. DetentShell launches at $29.99 in the Microsoft Store for its first two weeks. The regular price that follows is not final yet and will be published here first; volume licensing for teams is handled separately.