powershell
PowerShell Development Skill
Conventions and safety patterns for PowerShell scripts in scripts/ and CI.
Style and Linting
- Use
pwsh/PowerShell Core syntax where possible andSet-StrictMode -Version Latest. - Use
Write-Hostsparingly; preferWrite-OutputandWrite-Errorfor correct streams. - Use
-ErrorAction Stopin helper functions when errors should abort execution. - No Unicode icons or emojis in output messages (e.g.,
✓,✗,⚠,🔧). Use plain ASCII text like[OK],[FAIL],[WARN],ERROR:instead. Unicode causes encoding issues in CI logs.
Security
- Avoid embedding secrets in scripts; read from env vars and prefer platform secret stores.
- Do not commit credential tokens in any scripts or docs.
Testing and Execution
- Use
pwsh -NoProfile -ExecutionPolicy Bypass -Filein CI wrappers. - Add small smoke test steps to validate paths and required tools are present.
Auto-Approval Patterns
CRITICAL: Agent terminal security blocks complex commands. The following require manual approval:
- Pipes (
|) - Semicolons (
;) or&& - Redirection (
2>&1)
ALWAYS use scripts/Agent/ wrapper scripts for these operations. Do not attempt raw commands.
See terminal.instructions.md for the complete transformation table.
Examples
# Good: simple commands auto-approve
.\build.ps1
git status
# Good: use wrapper scripts (ALWAYS for git with pipes)
.\scripts\Agent\Git-Search.ps1 -Action show -Ref "release/9.3" -Path "file.h" -HeadLines 20
.\scripts\Agent\Git-Search.ps1 -Action log -HeadLines 20
.\scripts\Agent\Read-FileContent.ps1 -Path "file.cs" -HeadLines 50 -LineNumbers
# BAD: these require manual approval - NEVER USE
# git log --oneline | head -20
# Get-Content file.cs | Select-Object -First 50
More from sillsdev/fieldworks
atlassian-skills
Python utilities for Jira, Confluence, and Bitbucket integration. Provides issue management, search, workflows, page management, pull requests, commit history, and more. Use when users need to interact with Atlassian products like "create a Jira issue", "search Confluence pages", "create a pull request", "get commit history", or "update sprint status".
27atlassian-readonly-skills
Read-only Python utilities for Jira, Confluence, and Bitbucket integration. Provides read access to issues, search, workflows, pages, pull requests, commit history, and more. Use when users need to query Atlassian products like "get a Jira issue", "search Confluence pages", "view pull request details", or "get commit history". This variant excludes all write operations for token efficiency and safety.
19review
Review changes for correctness, style, and risk; propose fixes or follow-ups.
17openspec-bulk-archive-change
Archive multiple completed changes at once. Use when archiving several parallel changes.
17openspec-verify-change
Verify implementation matches change artifacts. Use when the user wants to validate that implementation is complete, correct, and coherent before archiving.
16openspec-ff-change
Fast-forward through OpenSpec artifact creation. Use when the user wants to quickly create all artifacts needed for implementation without stepping through each one individually.
16