Back to skills
SKILL.md
Powershell Windows
ASecurityPowerShell scripting rules for Windows environment. Use when running shell commands, Docker operations, or HTTP requests on Windows PowerShell.
- 73 stars
- 0 votes
- 0 copies
- 4 views
- Added September 2, 2026
Works with
Security analysis
92/100- Uses curl or wget to download content
Pro scans all 2 files and shows the line behind each finding
npx -y skills add Desko77/claude-code-skills-1c --skill powershell-windows --agent claude-codeAre you the author of Powershell Windows?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/desko77-powershell-windows)---
name: powershell-windows
description: "PowerShell scripting rules for Windows environment. Use when running shell commands, Docker operations, or HTTP requests on Windows PowerShell."
---
# PowerShell Windows - Scripting Rules
Essential rules for correct PowerShell usage on Windows. Follow these rules to avoid common errors when executing shell commands.
## Core Principles
### 1. Command Separation
- **Wrong**: `cd "path" && command` (bash syntax)
- **Correct**: `cd "path"; command` (PowerShell syntax)
### 2. Path Quoting
- **Always use double quotes** for paths with spaces:
```powershell
cd "D:\My Projects\MyApp"
```
### 3. Script Execution
- For .bat/.cmd files:
```powershell
./gradlew clean build
.\gradlew.bat clean build
```
### 4. Docker Commands
- Specify full path to docker-compose files:
```powershell
docker-compose -f "D:\My Projects\app\docker-compose.yml" up -d
```
### 5. HTTP Requests
- **Wrong**: `curl -s http://localhost:9090/status`
- **Correct**:
```powershell
Invoke-WebRequest -Uri "http://localhost:9090/status" -UseBasicParsing
```
### 6. Waiting/Delays
- **Wrong**: `timeout 10`
- **Correct**:
```powershell
Start-Sleep -Seconds 10
```
### 7. JSON Handling
- JSON parsing:
```powershell
$response = Invoke-WebRequest -Uri "http://localhost:9090/status" -UseBasicParsing
$json = $response.Content | ConvertFrom-Json
$json | ConvertTo-Json -Depth 3
```
### 8. Process Checking
- Process search:
```powershell
Get-Process -Name "java" -ErrorAction SilentlyContinue
```
### 9. Docker Operations
- Stop containers:
```powershell
docker-compose -f "path\to\file.yml" down
```
- Build images:
```powershell
docker-compose -f "path\to\file.yml" build --no-cache
```
### 10. Error Handling
- Ignore errors:
```powershell
Get-Process -Name "java" -ErrorAction SilentlyContinue
```
## Common Errors and Fixes
| Error | Cause | Fix |
|-------|-------|-----|
| `&& is not recognized` | Using bash syntax | Replace `&&` with `;` |
| `curl not found` | curl not installed on Windows | Use `Invoke-WebRequest` |
| `timeout not found` | timeout not supported | Use `Start-Sleep` |
| `Path not found` | Missing quotes on spaced path | Wrap path in double quotes |
## Correct Command Examples
```powershell
# Change directory and execute command
cd "D:\My Projects\MyApp"; ./gradlew clean build -x test
# Wait and make HTTP request
Start-Sleep -Seconds 10; Invoke-WebRequest -Uri "http://localhost:9090/status" -UseBasicParsing
# Docker operations
docker-compose -f "D:\My Projects\MyApp\docker-compose.yml" down
docker-compose -f "D:\My Projects\MyApp\docker-compose.yml" build --no-cache
docker-compose -f "D:\My Projects\MyApp\docker-compose.yml" up -d
# Check server status
$response = Invoke-WebRequest -Uri "http://localhost:9090/status" -UseBasicParsing
$json = $response.Content | ConvertFrom-Json
Write-Host "Transport: $($json.mcp.transport)"
```
These rules are critically important for proper operation in Windows PowerShell environment.
Files in this skill
- SKILL.md
- evals/evals.json
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.