Skip to main content

Cross-machine semantic search for Claude Code sessions

Project description

claude-jacked

Never lose your Claude Code work again. Search past conversations, share solutions with your team, and get AI-powered code reviews—all from within Claude Code.


What You Get

  • Find past solutions instantly — "How did I fix that login bug last month?" Just ask, and get the answer.
  • Work from any computer — Start on your desktop, continue on your laptop. Your history follows you.
  • Share knowledge with your team — Your teammate already solved this problem. Find their solution in seconds.
  • Catch mistakes before they ship — Built-in reviewers check for security issues, complexity, and common bugs.
  • Sound notifications — Get audio alerts when Claude needs your attention or finishes a task.

Table of Contents


Quick Start

Option 1: Let Claude Install It For You

Copy this into Claude Code and it will handle everything:

Install claude-jacked for me. Walk me through each step and help me set up Qdrant Cloud.

Option 2: One-Line Install

Mac/Linux:

curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/install.sh | bash

Windows (in Git Bash):

curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/install.sh | bash

After installing, you'll need to set up a free cloud database (Qdrant) to store your session history. The installer will guide you through this, or ask Claude to help: "Help me set up Qdrant Cloud for jacked"

Option 3: Manual Install

pipx install claude-jacked
jacked install

Then follow the cloud database setup instructions below.


What's Included

When you run jacked install, you get:

Feature What It Does
Session Search Find any past Claude conversation by describing what you were working on
10 Smart Reviewers AI assistants that check your code for bugs, security issues, and complexity
Quick Commands /dc for code review, /pr for pull request help
Team Sharing Search your teammates' sessions (with their permission)

Using the Session Search

Once installed, you can search your past Claude sessions right from within Claude Code.

Example: Finding Past Work

You're working on user authentication and remember solving something similar before:

/jacked user authentication login

Claude will show you matching sessions:

Search Results:
#  Score  User  Age      Repo           Preview
1  92%    YOU   3d ago   my-app         Implementing JWT auth with refresh tokens...
2  85%    YOU   2w ago   api-server     Adding password reset flow...
3  78%    @sam  1w ago   shared-lib     OAuth2 integration with Google...

Pick one to load that context into your current session.

Example: Resuming Work from Another Computer

You started building a feature on your desktop. Now you're on your laptop:

/jacked that shopping cart feature I was building

Claude finds it and you can continue right where you left off.

Example: Learning from Teammates

Your teammate Sam already built something similar:

/jacked how did Sam implement the payment system

You can see Sam's approach without bothering them.


Working with Your Team

Share knowledge across your team by using the same cloud database.

Setting Up Team Sharing

  1. One person creates a Qdrant Cloud account and shares the credentials
  2. Everyone adds the same credentials to their computer
  3. Each person sets their name so sessions are attributed correctly
# Everyone uses the same database
export QDRANT_CLAUDE_SESSIONS_ENDPOINT="https://team-cluster.qdrant.io"
export QDRANT_CLAUDE_SESSIONS_API_KEY="team-api-key"

# Each person sets their own name
export JACKED_USER_NAME="sarah"

Searching Team Sessions

/jacked payment processing           # Shows your work first, then teammates
/jacked payment processing --mine    # Only your sessions
/jacked payment processing --user sam   # Only Sam's sessions

Built-in Reviewers and Commands

Quick Commands

Type these directly in Claude Code:

Command What It Does
/dc Double-check — Reviews your recent work for bugs, security issues, and problems
/pr Pull Request — Helps organize your changes and create a clean PR

Smart Reviewers

These work automatically when Claude thinks they'd help, or you can ask for them:

Reviewer What It Catches
Double-check Security holes, authentication gaps, data leaks
Code Simplicity Over-complicated code, unnecessary abstractions
Error Handler Missing error handling, potential crashes
Test Coverage Untested code, missing edge cases

Example: After building a new feature:

Use the double-check reviewer to review what we just built

Sound Notifications

Get audio alerts so you don't have to watch the terminal:

jacked install --sounds
  • Notification sound — Plays when Claude needs your input
  • Completion sound — Plays when Claude finishes a task

Works on Windows, Mac, and Linux. To remove sounds later:

jacked uninstall --sounds

Uninstall

Remove everything:

jacked uninstall && pipx uninstall claude-jacked

Or one-liner:

curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/uninstall.sh | bash

Your cloud database stays intact, so you won't lose your history if you reinstall later.


Common Issues

"I installed it but search isn't working"

You need to set up the cloud database first. Ask Claude:

Help me set up Qdrant Cloud for jacked

"It says 'jacked: command not found'"

The install didn't add jacked to your PATH. Try:

pipx ensurepath

Then restart your terminal.

"My sessions aren't showing up in search"

Run this to index your existing sessions:

jacked backfill

"I'm on Windows and getting weird errors"

Claude Code on Windows uses Git Bash, which can have path issues. Ask Claude:

Help me fix jacked path issues on Windows

Cloud Database Setup (Qdrant)

The session search feature stores your conversations in a cloud database so you can access them from any computer.

Why Qdrant?

  • Smart search — Find sessions by meaning, not just keywords
  • Works everywhere — Access from any computer
  • Team sharing — Everyone can search the same database
  • You control it — Your data stays in your own database

Setting Up Qdrant Cloud

  1. Go to cloud.qdrant.io and create an account
  2. Create a new cluster (the paid tier ~$30/month is required for the search features)
  3. Copy your cluster URL and API key
  4. Add them to your shell profile:

Mac/Linux — Add to ~/.bashrc or ~/.zshrc:

export QDRANT_CLAUDE_SESSIONS_ENDPOINT="https://your-cluster.qdrant.io"
export QDRANT_CLAUDE_SESSIONS_API_KEY="your-api-key"

Windows — Add to your environment variables, or add to ~/.bashrc in Git Bash.

  1. Restart your terminal and run:
jacked backfill    # Index your existing sessions
jacked status      # Verify it's working

Security Note

Your conversations are sent to Qdrant Cloud. This includes:

  • Everything you and Claude discuss
  • Code snippets you share
  • File paths on your computer

Recommendations:

  • Don't paste passwords or API keys in Claude sessions
  • Keep your Qdrant API key private
  • For sensitive work, consider self-hosting Qdrant

Advanced / Technical Reference

CLI Command Reference
# Search
jacked search "query"              # Search all sessions
jacked search "query" --mine       # Only your sessions
jacked search "query" --user name  # Specific teammate
jacked search "query" --repo path  # Boost specific repo

# Session Management
jacked sessions                    # List indexed sessions
jacked retrieve <session_id>       # Get session content
jacked retrieve <id> --mode full   # Get full transcript
jacked delete <session_id>         # Remove from index
jacked cleardb                     # Delete all your data

# Setup
jacked install                     # Install hooks, agents, commands
jacked install --sounds            # Also add sound notifications
jacked uninstall                   # Remove from Claude Code
jacked uninstall --sounds          # Remove only sounds
jacked backfill                    # Index all existing sessions
jacked backfill --force            # Re-index everything
jacked status                      # Check connectivity
jacked configure --show            # Show current config
Environment Variables

Required:

Variable Description
QDRANT_CLAUDE_SESSIONS_ENDPOINT Your Qdrant Cloud URL
QDRANT_CLAUDE_SESSIONS_API_KEY Your Qdrant API key

Optional:

Variable Default Description
JACKED_USER_NAME git username Your name for team attribution
JACKED_TEAMMATE_WEIGHT 0.8 How much to weight teammate results
JACKED_OTHER_REPO_WEIGHT 0.7 How much to weight other repos
JACKED_TIME_DECAY_HALFLIFE_WEEKS 35 How fast old sessions lose relevance
How It Works (Technical)
┌─────────────────────────────────────────────────────────────┐
│  YOUR MACHINE                                               │
│                                                             │
│  Claude Code                                                │
│  ├── Stop hook → jacked index (after every response)        │
│  └── /jacked skill → search + load context                  │
│                                                             │
│  ~/.claude/projects/                                        │
│  └── {repo}/                                                │
│      └── {session}.jsonl  ←── parsed and indexed            │
└─────────────────────────────────────────────────────────────┘
                            │
                            │ HTTPS
                            ▼
┌─────────────────────────────────────────────────────────────┐
│  QDRANT CLOUD                                               │
│                                                             │
│  • Server-side embedding (no local ML needed)               │
│  • Vectors + transcripts stored                             │
│  • Accessible from any machine                              │
└─────────────────────────────────────────────────────────────┘

Indexing: After each Claude response, a hook automatically indexes the session to Qdrant. The indexer extracts:

  • Plan files (implementation strategies)
  • Agent summaries (exploration results)
  • Summary labels (chapter titles from auto-compaction)
  • User messages (for intent matching)

Retrieval modes:

  • smart (default): Plan + summaries + labels (~5-10K tokens)
  • full: Complete transcript (50-200K tokens)
  • plan: Just the plan file
  • agents: Just agent summaries
  • labels: Just summary labels (tiny)
All Agents
Agent Description
double-check-reviewer CTO/CSO-level review for security, auth gaps, data leaks
code-simplicity-reviewer Reviews for over-engineering and unnecessary complexity
defensive-error-handler Audits error handling and adds defensive patterns
git-pr-workflow-manager Manages branches, commits, and PR organization
pr-workflow-checker Checks PR status and handles PR lifecycle
issue-pr-coordinator Scans issues, groups related ones, manages PR workflows
test-coverage-engineer Analyzes and improves test coverage
test-coverage-improver Adds doctests and test files systematically
readme-maintainer Keeps README in sync with code changes
wiki-documentation-architect Creates/maintains GitHub Wiki documentation
Hook Configuration

The jacked install command adds this to ~/.claude/settings.json:

{
  "hooks": {
    "Stop": [{
      "matcher": "",
      "hooks": [{
        "type": "command",
        "command": "jacked index --repo \"$CLAUDE_PROJECT_DIR\""
      }]
    }]
  }
}
Guided Install Prompt (for Claude)

Copy this into Claude Code for a guided installation:

Install claude-jacked for me. First check what's already set up, then help me with anything missing:

DIAGNOSTIC PHASE (run these first to see current state):
- Detect my operating system
- Check if pipx is installed: pipx --version
- Check if jacked CLI is installed: jacked --version
- Check if Qdrant credentials are set: echo $QDRANT_CLAUDE_SESSIONS_ENDPOINT
- Check if hook is installed: look in ~/.claude/settings.json for "jacked index"

WINDOWS EXTRA CHECK (Git Bash doesn't inherit Windows System Environment):
- If env vars NOT visible in bash, check Windows:
  powershell.exe -Command "[System.Environment]::GetEnvironmentVariable('QDRANT_CLAUDE_SESSIONS_ENDPOINT', 'User')"

SETUP PHASE (only do steps that are missing):
1. If no pipx: pip install pipx && pipx ensurepath
2. If jacked not installed: pipx install claude-jacked && jacked install
3. If no Qdrant credentials: walk me through cloud.qdrant.io setup
4. If no indexed sessions: jacked backfill

VERIFY: jacked status && jacked configure --show
Windows Troubleshooting

Claude Code uses Git Bash on Windows, which can cause path issues.

Where jacked is installed:

C:\Users\<username>\pipx\venvs\claude-jacked\Scripts\jacked.exe

If "jacked" isn't found:

# Find it
where jacked

# Or add to PATH
pipx ensurepath

If paths are getting mangled: Use forward slashes in Git Bash:

/c/Users/jack/pipx/venvs/claude-jacked/Scripts/jacked.exe status

License

MIT

Credits

Built for Claude Code by Anthropic. Uses Qdrant for search.

Project details


Release history Release notifications | RSS feed

This version

0.2.9

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

claude_jacked-0.2.9.tar.gz (111.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

claude_jacked-0.2.9-py3-none-any.whl (101.6 kB view details)

Uploaded Python 3

File details

Details for the file claude_jacked-0.2.9.tar.gz.

File metadata

  • Download URL: claude_jacked-0.2.9.tar.gz
  • Upload date:
  • Size: 111.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for claude_jacked-0.2.9.tar.gz
Algorithm Hash digest
SHA256 10f6d8e25b4325fc63828c3ef1e0c48012ed528a1565055a777f17955d956cbd
MD5 1ae7f3de113f122ad51d09081c617ba2
BLAKE2b-256 31bb479c8e5ca1132f6bb3f82c3d09ba565bf756555ae5d77b23af327c267ad4

See more details on using hashes here.

Provenance

The following attestation bundles were made for claude_jacked-0.2.9.tar.gz:

Publisher: publish.yml on jackneil/claude-jacked

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file claude_jacked-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: claude_jacked-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 101.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for claude_jacked-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 4120874b0d5132bf869d0ed5c965a99889151cbe3d5f7e87488f98602b76a908
MD5 a6f9eaae98676e4f7cf13714abf9d3c6
BLAKE2b-256 9926df6ab2fe69831de706dac0f9cfd95355c5dafb60effd3e99b824aa0b7ea1

See more details on using hashes here.

Provenance

The following attestation bundles were made for claude_jacked-0.2.9-py3-none-any.whl:

Publisher: publish.yml on jackneil/claude-jacked

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page