Back to Skills

safe-rm

verified

Safely remove files and directories without breaking the shell session

View on GitHub

Marketplace

claude-code-cat

cowwoc/cat

Plugin

cat

Repository

cowwoc/cat
11stars

plugin/skills/safe-rm/SKILL.md

Last Verified

January 25, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/cowwoc/cat/blob/main/plugin/skills/safe-rm/SKILL.md -a claude-code --skill safe-rm

Installation paths:

Claude
.claude/skills/safe-rm/
Powered by add-skill CLI

Instructions

# Safe Remove Skill

**Purpose**: Prevent shell session breakage by verifying working directory before `rm -rf` operations.

## Critical Issue

If you delete the directory you're currently in, **all subsequent Bash commands will fail** with "Exit code 1" and Claude Code must be restarted. This is unrecoverable without restart.

## Mandatory Pre-Delete Checklist

**BEFORE any `rm -rf` command:**

```bash
# 1. Check current working directory
pwd

# 2. Verify target is NOT current directory or ancestor
# If deleting /path/to/workspace/test and pwd shows /path/to/workspace/test -> DANGER!

# 3. If in danger, change directory first
cd /path/to/workspace  # or another safe location

# 4. Then delete
rm -rf /path/to/workspace/test
```

## Safe Patterns

```bash
# SAFE - Explicit cd before delete
cd /path/to/workspace && rm -rf /path/to/workspace/test-dir

# SAFE - Delete from parent directory
cd /path/to/workspace && rm -rf test-dir

# SAFE - Use absolute paths after confirming pwd
pwd  # Shows /path/to/workspace (not /path/to/workspace/test-dir)
rm -rf /path/to/workspace/test-dir

# DANGEROUS - Deleting without checking pwd
rm -rf /path/to/workspace/test-dir  # If pwd is /path/to/workspace/test-dir, shell breaks!

# DANGEROUS - Deleting current directory
rm -rf .  # Always breaks shell

# DANGEROUS - Deleting parent of current directory
# pwd: /path/to/workspace/test-dir/subdir
rm -rf /path/to/workspace/test-dir  # Breaks shell
```

## Recovery

If shell breaks (all commands return "Exit code 1"):
1. **Restart Claude Code** - this is the only fix
2. The shell session cannot recover from a deleted working directory

## Quick Reference

| Situation | Action |
|-----------|--------|
| Deleting temp directory | `pwd` first, `cd` if needed |
| Cleaning up test files | Verify not inside target directory |
| Removing build artifacts | Use parent directory as working dir |
| Any `rm -rf` operation | **Always check `pwd` first** |

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
1924 chars