Claude Skills Guide

Claude Code Data Retention Policy Workflow

Managing conversation history and temporary data is essential when working extensively with Claude Code. Whether you’re handling sensitive client information, managing disk space on development machines, or maintaining compliance requirements, implementing a data retention policy prevents accumulation of unnecessary files while preserving what matters.

This guide covers practical approaches to automate data retention in your Claude Code workflows, including conversation archiving, temporary file cleanup, and session management strategies.

Understanding Claude Code Data Storage

Claude Code stores several types of data that factor into retention planning:

The default behavior keeps conversation history indefinitely unless you configure otherwise. For developers running multiple projects daily, this accumulates several gigabytes within months.

Basic Cleanup Script

Create a simple retention script to manage conversation history:

#!/bin/bash
# retention-cleanup.sh - Keep last 30 days of conversations

RETENTION_DAYS=30
CLAUDE_DATA_DIR="$HOME/.claude/projects"

find "$CLAUDE_DATA_DIR" -type d -mtime +$RETENTION_DAYS -exec rm -rf {} \; 2>/dev/null

echo "Cleaned conversations older than $RETENTION_DAYS days"

Run this weekly via cron:

0 2 * * 0 /path/to/retention-cleanup.sh

This approach works for developers who want hands-off cleanup without additional dependencies.

Using the Supermemory Skill for Selective Archiving

The supermemory skill provides intelligent conversation indexing and retrieval. Combine it with your retention policy to archive important discussions before cleanup:

/supermemory archive --project my-project --label important

This extracts key decisions and code snippets into a searchable database. Run your cleanup script afterward:

# Archive first, then clean
claude --print "/supermemory archive --project client-api --label compliance"
./retention-cleanup.sh

The workflow ensures valuable information survives the automated cleanup cycle.

Implementing Policy by Project

Different projects demand different retention periods. A personal experiment might need zero retention, while client work requires 90-day minimum storage.

Create project-specific configurations:

# ~/.claude/retention-policies.yaml
projects:
  client-work:
    retention_days: 90
    archive_before_delete: true
    skill: supermemory
  
  internal-tools:
    retention_days: 30
    archive_before_delete: false
    
  experiments:
    retention_days: 7
    archive_before_delete: false

Reference this configuration in your cleanup script to apply appropriate policies per project.

PDF Skill Integration for Report Generation

Generate compliance reports using the pdf skill after each retention cycle:

/pdf create-report --title "Data Retention Report" --content "Cleaned $(date)"

This creates auditable documentation of your retention practices—useful for organizations with regulatory requirements.

Automating with Scheduled Skills

Claude Code supports skill invocation through CLI. Chain skills for complete automation:

# Full retention workflow
#!/bin/bash

CLAUDE_PROJECTS="$HOME/.claude/projects"

# Step 1: Archive important conversations using supermemory
claude -p "/supermemory export --format json --output /tmp/claude-archive-$(date +%Y%m%d).json"

# Step 2: Apply retention policy
find "$CLAUDE_PROJECTS" -type d -mtime +30 -exec rm -rf {} \; 2>/dev/null

# Step 3: Generate compliance report using pdf
claude -p "/pdf create-report --title 'Retention Report $(date)' --output /tmp/retention-report.pdf"

echo "Retention workflow completed"

Schedule this script weekly and forget about manual cleanup.

Handling Sensitive Data

For projects involving sensitive information, add encryption before retention cleanup:

#!/bin/bash
# Encrypt sensitive projects before standard cleanup

ENCRYPTION_KEY_FILE="$HOME/.claude/encryption.key"
SENSITIVE_PROJECTS=("client-a" "client-b" "healthcare-app")

for project in "${SENSITIVE_PROJECTS[@]}"; do
    project_dir="$HOME/.claude/projects/$project"
    if [ -d "$project_dir" ]; then
        tar -czf "$project_dir.tar.gz" -C "$HOME/.claude/projects" "$project"
        gpg --symmetric --passphrase-file "$ENCRYPTION_KEY_FILE" \
            --batch "$project_dir.tar.gz"
        rm -rf "$project_dir"
    fi
done

Encrypted archives maintain compliance while freeing disk space.

Session-Level Retention Control

Control retention at the session level using Claude Code flags:

# Start session with no persistence
claude

# Start session with ephemeral only (no disk writes)
claude

Use --no-persist for sensitive one-off tasks where you don’t need conversation history afterward.

Monitoring Disk Usage

Track storage trends to refine your retention policy:

# Check current Claude data usage
du -sh ~/.claude
du -sh ~/.claude/projects
du -sh ~/.claude/skills

Run this monthly and adjust retention days if storage grows unexpectedly.

Best Practices Summary

Conclusion

A data retention policy for Claude Code prevents unbounded storage growth while preserving important conversation context. Start with a simple 30-day cleanup script, then layer in project-specific policies, archiving with supermemory, and compliance reporting with pdf as your needs evolve.

The key is automation—set up scheduled runs and let the system manage itself. Your future self will appreciate clean storage and searchable archives when you need to reference decisions from last month.

Built by theluckystrike — More at zovo.one