Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

working-in-scratch-areas

verified

Use when creating one-off scripts, debug tools, analysis reports, or temporary documentation - ensures work is saved to persistent .scratch areas with proper documentation, organization, and executable patterns

View on GitHub

Marketplace

pickled-claude-plugins

technicalpickles/pickled-claude-plugins

Plugin

dev-tools

Repository

technicalpickles/pickled-claude-plugins
1stars

plugins/dev-tools/skills/working-in-scratch-areas/SKILL.md

Last Verified

February 3, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/technicalpickles/pickled-claude-plugins/blob/main/plugins/dev-tools/skills/working-in-scratch-areas/SKILL.md -a claude-code --skill working-in-scratch-areas

Installation paths:

Claude
.claude/skills/working-in-scratch-areas/
Powered by add-skill CLI

Instructions

# Working in Scratch Areas

## Overview

Helps Claude save one-off scripts and documents to persistent scratch areas instead of littering repositories with temporary files or using `/tmp`.

**Core principles:**

- Temporary work deserves permanent storage
- Scripts and documents should be documented, organized, and preserved
- Never use `/tmp` or project `tmp/` directories for these files
- Files belong in `.scratch/` subdirectories with context

**Announce at start:** "I'm using the working-in-scratch-areas skill."

## When to Use

Use this skill when creating:

- One-off debug scripts
- Analysis or investigation tools
- Temporary documentation or reports
- Quick test scripts
- Data extraction utilities
- Monitoring or diagnostic tools

Don't use for:

- Production code that belongs in the main codebase
- Configuration files that should be committed
- Tests that belong in the test suite
- Documentation that should be in docs/

**NEVER use `/tmp` or project `tmp/` directories.** Always use `.scratch/` for temporary work.

## Setup Workflow

### Check for Existing Scratch Area

First, check if a scratch area already exists:

```bash
test -L .scratch && echo "Scratch area exists" || echo "No scratch area"
```

If the symlink exists, verify gitignore is configured (see below), then you're ready to use it.

### Setting Up New Scratch Area

When no scratch area exists:

1. **Detect:** "I notice this repository doesn't have a scratch area set up."
2. **Check CLAUDE.md:** Check if scratch areas location is configured in `~/.claude/CLAUDE.md`
3. **If not configured:** Ask user where they want scratch areas with AskUserQuestion tool
4. **Run setup script** with the chosen location
5. **Optionally save** the location to CLAUDE.md for future use

**Setup Steps:**

```bash
# 1. Get repo root
git rev-parse --show-toplevel
# Output: /Users/josh/workspace/some-repo

# 2. Check if configured in CLAUDE.md
grep -i "scratch areas:" ~/.claude/CLAUDE.md

# 3a. If configured, run setup (

Validation Details

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