Audits shell scripts for exit code handling, POSIX portability, safety patterns, and common pitfalls. Use when reviewing CI/CD pipelines, git hooks, wrappers, and build scripts.
From pensivenpx claudepluginhub athola/claude-night-market --plugin pensiveThis skill uses the workspace's default tool permissions.
modules/exit-codes.mdmodules/portability.mdmodules/safety-patterns.mdDesigns and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Enables AI agents to execute x402 payments with per-task budgets, spending controls, and non-custodial wallets via MCP tools. Use when agents pay for APIs, services, or other agents.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Audit shell scripts for correctness, safety, and portability.
After review, run shellcheck <script> to verify fixes address identified issues.
Run pytest plugins/pensive/tests/skills/test_shell_review.py -v to validate review patterns.
/shell-review path/to/script.sh
shell-review:context-mappedshell-review:exit-codes-checkedshell-review:portability-checkedshell-review:safety-patterns-verifiedshell-review:evidence-loggedshell-review:context-mapped)Identify shell scripts:
# Find shell scripts
find . -not -path "*/.venv/*" -not -path "*/__pycache__/*" \
-not -path "*/node_modules/*" -not -path "*/.git/*" \
-name "*.sh" -type f | head -20
# Check shebangs
grep -l "^#!/" scripts/ hooks/ 2>/dev/null | head -10
Document:
shell-review:exit-codes-checked)@include modules/exit-codes.md
shell-review:portability-checked)@include modules/portability.md
shell-review:safety-patterns-verified)@include modules/safety-patterns.md
shell-review:evidence-logged)Use imbue:proof-of-work to record findings with file:line references.
Summarize:
## Summary
Shell script review findings
## Scripts Reviewed
- [list with line counts]
## Exit Code Issues
### [E1] Pipeline masks failure
- Location: script.sh:42
- Pattern: `cmd | grep` loses exit code
- Fix: Use pipefail or capture separately
## Portability Issues
[cross-platform concerns]
## Safety Issues
[unquoted variables, missing set flags]
## Recommendation
Approve / Approve with actions / Block