cchistory

by eckardt

Pending

Like the shell history command but for your Claude Code sessions.

100stars
5forks
TypeScript
Added 1/17/2026
CLI Toolsbashclaudeclaude-codeclishellshell-historyterminal
Installation
# Add to your Claude Code skills
git clone https://github.com/eckardt/cchistory
README.md

cchistory

npm version

Like the shell history command but for your Claude Code sessions.

<div> <img src="https://github.com/eckardt/cchistory/blob/main/docs/demo.gif?raw=true"> </div>

Why cchistory?

When Claude Code runs shell commands, they don't appear in your shell history. This makes it hard to:

  • Re-run useful commands from past sessions
  • Build on previous work
  • Learn from command patterns Claude uses
  • Copy command sequences for documentation
$ cchistory | tail -5
  46  git status
  47  git pull origin main
  48  git log --oneline -5
  49  docker-compose up -d
  50  curl -I localhost:8080/health

📦 Installation

npm (recommended)

npm install -g cchistory

npx (try without installing)

npx cchistory --help

From source

git clone https://github.com/eckardt/cchistory
cd cchistory
npm install
npm run build
npm link

Usage

cchistory                    # Current project history
cchistory --global           # All projects
cchistory --list-projects    # See all available projects
cchistory | grep docker      # Find Docker commands  
cchistory | tail -5          # Last 5 commands
cchistory my-app | tail -10  # Last 10 from specific project
cchistory ~/code/my-app      # Project by full path

✨ Features

  • 🔍 Extract all Bash commands Claude executed across projects
  • 🗂️ Filter by specific project or search globally
  • 📊 Standard Unix tool compatibility (grep, awk, sort)
  • ⚡ Fast streaming parser for large conversation logs
  • 🚀 Zero-config - works with existing Claude Code setup

How It Works

Claude Code stores conversation history in ~/.claude/projects/. This tool:

  1. Finds your Claude projects
  2. Streams through conversation logs
  3. Extracts shell commands Claude executed
  4. Formats them like traditional shell history

📋 Example Output

$ cchistory --global | head -10
   1  [web-scraper    ] npm install puppeteer
   2  [web-scraper    ] mkdir src tests
   3  [api-project    ] docker-compose up -d
   4  [api-project    ] curl -X POST localhost:3000/api/test
   5  [frontend       ] npm run dev
   6  [frontend       ] git add .
   7  [backend        ] npm test
   8  [backend        ] git commit -m "fix: validation"
   9  [deployment     ] kubectl apply -f deployment.yaml
  10  [deployment     ] kubectl get pods

Advanced Usage

# Find all npm commands across projects
cchistory --global | grep npm

# Get last 20 Docker commands
cchistory --global | grep docker | tail -20

# Count commands by type
cchistory --global | sed 's/.*] //' | awk '{print $1}' | sort | uniq -c | sort -nr | head -10

Command Sources

Extracts commands from:

  • Bash tool usage: Commands Claude executes via the Bash tool
  • User "!" commands: Commands you run with ! command in Claude

Requirements

  • Node.js 20+
  • Claude Code with conversatio...