trap-handler-generator
Generate trap handlers for cleanup, signal handling, and graceful shutdown in shell scripts.
npx skills add a5c-ai/babysitter --skill trap-handler-generator --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Trap Handler Generator Generate trap handlers for shell scripts. ## Capabilities - Generate cleanup trap handlers - Implement signal handling - Create graceful shutdown logic - Set up resource cleanup - Handle nested traps - Generate error handlers ## Generated Patterns ```bash #!/usr/bin/env bash # Temporary resources to clean up declare -a CLEANUP_ITEMS=() CLEANUP_DONE=false # Register cleanup item register_cleanup() { CLEANUP_ITEMS+=("$1") } # Cleanup function cleanup() { if [[ "$CLEANUP_DONE" == true ]]; then return fi CLEANUP_DONE=true local exit_code=$? echo "Cleaning up..." for item in "${CLEANUP_ITEMS[@]}"; do if [[ -d "$item" ]]; then rm -rf "$item" 2>/dev/null elif [[ -f "$item" ]]; then rm -f "$item" 2>/dev/null elif [[ -n "$item" ]]; then # Command to run eval "$item" 2>/dev/null fi done return $exit_code } # Error handler on_error() { local exit_code=$? local line_no=$1 echo "Error on line ${line_no}: command exited with ${exit_code}" >&2 cleanup exit $exit_code } # Signal handlers on_sigint() { echo -e "\nInterrupted by user" cleanup exit 130 } on_sigterm() { echo "Terminated" cleanup exit 143 } # Set up traps trap cleanup EXIT trap 'on_error ${LINENO}' ERR trap on_
- Capabilities
- Generated Patterns
- Target Processes
Temporary resources to clean up
declare -a CLEANUP_ITEMS=()
Register cleanup item
Cleanup function
if [[ "$CLEANUP_DONE" == true ]]; then
return
fi
local exit_code=$?
echo "Cleaning up..."
for item in "${CLEANUP_ITEMS[@]}"; doWhat does the trap-handler-generator skill do?
Generate trap handlers for cleanup, signal handling, and graceful shutdown in shell scripts.
How do I install it?
Run `npx skills add a5c-ai/babysitter --skill trap-handler-generator --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From a5c-ai/babysitter, a repository with 1,642 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
