
Guidelines for creating temporary files in system temp directory. Use when agents need to create reports, logs, or progress files without cluttering the repository.
temp-files follows the SKILL.md standard. Use the install command to add it to your agent stack.
---
name: temp-files
description: Guidelines for creating temporary files in system temp directory. Use when agents need to create reports, logs, or progress files without cluttering the repository.
allowed-tools: Bash, Write, Read
---
# Temporary Files Skill
When you need to create files to track progress, generate reports, or store temporary data, use the system's temporary directory instead of the repository root.
## Directory Structure
Use this base path for all temporary files (aligns with Claude Code's existing task output convention):
```
/tmp/claude/{sanitized-cwd}/
```
Where `{sanitized-cwd}` is the current working directory path with `/` replaced by `-` (leading slash stripped first to avoid a leading dash).
Example: Working in `/Users/bobby/workspace/pivot/llamafarm` → `/tmp/claude/Users-bobby-workspace-pivot-llamafarm/`
## Creating a Temp File
### Step 1: Create the directory
```bash
SANITIZED_PATH=$(echo "$PWD" | sed 's|^/||' | tr '/' '-')
REPORT_DIR="/tmp/claude/${SANITIZED_PATH}/reviews"
mkdir -p "$REPORT_DIR"
```
### Step 2: Generate a unique filename
Use this pattern: `{descriptor}-{YYYYMMDD-HHMMSS}.{ext}`
```bash
TIMESTAMP=$(date +%Y%m%d-%H%M%S)
FILENAME="code-review-${TIMESTAMP}.md"
FILEPATH="${REPORT_DIR}/${FILENAME}"
```
### Step 3: Write the file
Use the Write tool with the full temp path.
### Step 4: Inform the user
Always tell the user where the file was created:
> Report saved to: `/tmp/claude/Users-bobby-workspace-pivot-llamafarm/reviews/code-review-20260108-143052.md`
## When to Use This Pattern
- Code review reports
- Analysis outputs
- Progress tracking files
- Test result summaries
- Any generated documentation not explicitly requested in a specific location
## When NOT to Use This Pattern
- User explicitly specifies a file path
- Creating files that should be committed (e.g., README, config files)
- Editing existing files
## Cleanup Note
Files in `/tmp/` are cleared on system restart. If the user needs to preserve a file, suggest they copy it to a permanent location.