You're Invited:Meet the Socket Team at RSAC and BSidesSF 2026, March 23–26.RSVP
Socket
Book a DemoSign in
Socket

claude-prune

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

claude-prune

Prune early messages from Claude Code session transcripts

latest
Source
npmnpm
Version
1.1.0
Version published
Maintainers
1
Created
Source

claude-prune

A fast CLI tool for pruning Claude Code sessions.

Features

  • 🎯 Smart Pruning: Keep messages since the last N assistant responses
  • 🛡️ Safe by Default: Always preserves session summaries and metadata
  • 💾 Auto Backup: Creates timestamped backups before modifying files

Installation

# Using npx (Node.js)
npx claude-prune <sessionId> --keep 50

# Using bunx (Bun)
bunx claude-prune <sessionId> --keep 50

Install globally

# Using npm
npm install -g claude-prune

# Using bun
bun install -g claude-prune

Usage

claude-prune <sessionId> --keep <number> [--dry-run]

Arguments

  • sessionId: UUID of the Claude Code session (without .jsonl extension)

Options

  • -k, --keep <number>: Number of assistant messages to keep (required)
  • --dry-run: Preview changes without modifying files
  • -h, --help: Show help information
  • -V, --version: Show version number

Examples

# Keep the last 10 assistant messages and everything since then
claude-prune abc123-def456-789 --keep 10

# Preview what would be pruned (safe mode)
claude-prune abc123-def456-789 --keep 5 --dry-run

# Minimal pruning - keep only the last assistant message
claude-prune abc123-def456-789 --keep 1

How It Works

  • Locates Session File: Finds ~/.claude/projects/{project-path}/{sessionId}.jsonl
  • Preserves Critical Data: Always keeps the first line (session summary/metadata)
  • Smart Pruning: Finds the Nth-to-last assistant message and keeps everything from that point forward
  • Preserves Context: Keeps all non-message lines (tool results, system messages)
  • Safe Backup: Creates {sessionId}.bak.{timestamp} before modifying
  • Interactive Confirmation: Asks for confirmation unless using --dry-run

File Structure

Claude Code stores sessions in:

~/.claude/projects/{project-path-with-hyphens}/{sessionId}.jsonl

For example, a project at /Users/alice/my-app becomes:

~/.claude/projects/-Users-alice-my-app/{sessionId}.jsonl

Development

# Clone and install
git clone https://github.com/dannyaziz/cc-prune.git
cd cc-prune
bun install

# Run tests
bun test

# Build
bun run build

# Test locally
./dist/index.js --help

License

MIT © Danny Aziz

Keywords

claude

FAQs

Package last updated on 17 Jul 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts