powershell-windows

sickn33/antigravity-awesome-skills · updated Apr 8, 2026

$npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill powershell-windows
0 commentsdiscussion
summary

Essential syntax rules and pitfalls for Windows PowerShell scripting.

  • Parentheses required around all cmdlet calls when using logical operators ( -or , -and ); missing them causes parsing errors
  • Unicode and emoji characters prohibited in scripts; use ASCII-only alternatives like [OK] , [!] , [WARN] for status indicators
  • Null checks mandatory before property access; always validate objects exist before calling methods or accessing properties
  • JSON operations require explicit -Depth
skill.md

PowerShell Windows Patterns

Critical patterns and pitfalls for Windows PowerShell.


1. Operator Syntax Rules

CRITICAL: Parentheses Required

❌ Wrong ✅ Correct
if (Test-Path "a" -or Test-Path "b") if ((Test-Path "a") -or (Test-Path "b"))
if (Get-Item $x -and $y -eq 5) if ((Get-Item $x) -and ($y -eq 5))

Rule: Each cmdlet call MUST be in parentheses when using logical operators.


2. Unicode/Emoji Restriction

CRITICAL: No Unicode in Scripts

Purpose ❌ Don't Use ✅ Use
Success ✅ ✓ [OK] [+]
Error ❌ ✗ 🔴 [!] [X]
Warning ⚠️ 🟡 [*] [WARN]
Info ℹ️ 🔵 [i] [INFO]
Progress [...]

Rule: Use ASCII characters only in PowerShell scripts.


3. Null Check Patterns

Always Check Before Access

❌ Wrong ✅ Correct
$array.Count -gt 0 $array -and $array.Count -gt 0
$text.Length if ($text) { $text.Length }

4. String Interpolation

Complex Expressions

❌ Wrong ✅ Correct
"Value: $($obj.prop.sub)" Store in variable first

Pattern:

$value = $obj.prop.sub
Write-Output "Value: $value"

5. Error Handling

ErrorActionPreference

Value Use
Stop Development (fail fast)
Continue Production scripts
SilentlyContinue When errors expected

Try/Catch Pattern

  • Don't return inside try block
  • Use finally for cleanup
  • Return after try/catch

6. File Paths

Windows Path Rules

Pattern Use
Literal path C:\Users\User\file.txt
Variable path Join-Path $env:USERPROFILE "file.txt"
Relative Join-Path $ScriptDir "data"

Rule: Use Join-Path for cross-platform safety.


7. Array Operations

Correct Patterns

Operation Syntax
Empty array $array = @()
Add item $array += $item
ArrayList add `$list.Add($item)

8. JSON Operations

CRITICAL: Depth Parameter

❌ Wrong ✅ Correct
ConvertTo-Json ConvertTo-Json -Depth 10

Rule: Always specify -Depth for nested objects.

File Operations

Operation Pattern
Read `Get-Content "file.json" -Raw
Write `$data

9. Common Errors

Error Message Cause Fix
"parameter 'or'" Missing parentheses Wrap cmdlets in ()
"Unexpected token" Unicode character Use ASCII only
"Cannot find property" Null object Check null first
"Cannot convert" Type mismatch Use .ToString()

10. Script Template

# Strict mode
Set-StrictMode -Version Latest
$ErrorActionPreference = "Continue"

# Paths
$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path

# Main
try {
    # Logic here
    Write-Output "[OK] Done"
    exit 0
}
catch {
    Write-Warning "Error: $_"
    exit 1
}

Remember: PowerShell has unique syntax rules. Parentheses, ASCII-only, and null checks are non-negotiable.

When to Use

This skill is applicable to execute the workflow or actions described in the overview.

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.772 reviews
  • Zaid Singh· Dec 28, 2024

    Registry listing for powershell-windows matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Nikhil Gonzalez· Dec 28, 2024

    Useful defaults in powershell-windows — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Zaid Srinivasan· Dec 24, 2024

    powershell-windows fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Mia Jackson· Dec 20, 2024

    We added powershell-windows from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.

  • Chaitanya Patil· Dec 12, 2024

    Useful defaults in powershell-windows — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Dev Brown· Dec 12, 2024

    powershell-windows reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Mateo Khan· Dec 4, 2024

    powershell-windows has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Rahul Santra· Nov 27, 2024

    Registry listing for powershell-windows matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Henry Sharma· Nov 23, 2024

    Useful defaults in powershell-windows — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Dev Verma· Nov 23, 2024

    Registry listing for powershell-windows matched our evaluation — installs cleanly and behaves as described in the markdown.

showing 1-10 of 72

1 / 8