claude-jacked 0.2.2__tar.gz → 0.2.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/PKG-INFO +139 -32
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/README.md +138 -31
- claude_jacked-0.2.7/design/session_indexing_improvements.md +1286 -0
- claude_jacked-0.2.7/install.sh +39 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/cli.py +364 -28
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/client.py +118 -1
- claude_jacked-0.2.7/jacked/data/skills/jacked/SKILL.md +162 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/indexer.py +166 -66
- claude_jacked-0.2.7/jacked/retriever.py +524 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/searcher.py +61 -13
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/transcript.py +339 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/pyproject.toml +1 -1
- claude_jacked-0.2.7/uninstall.sh +26 -0
- claude_jacked-0.2.2/jacked/retriever.py +0 -272
- claude_jacked-0.2.2/skills/jacked/SKILL.md +0 -132
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/.claude/settings.local.json +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/.github/workflows/publish.yml +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/.gitignore +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/LICENSE +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/docs/DESIGN.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/__init__.py +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/jacked/config.py +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/code-simplicity-reviewer.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/defensive-error-handler.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/double-check-reviewer.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/git-pr-workflow-manager.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/issue-pr-coordinator.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/pr-workflow-checker.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/readme-maintainer.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/test-coverage-engineer.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/test-coverage-improver.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/agents/wiki-documentation-architect.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/commands/dc.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7/jacked/data}/commands/pr.md +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/tests/__init__.py +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/tests/test_config.py +0 -0
- {claude_jacked-0.2.2 → claude_jacked-0.2.7}/tests/test_transcript.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: claude-jacked
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.7
|
|
4
4
|
Summary: Cross-machine semantic search for Claude Code sessions
|
|
5
5
|
Project-URL: Homepage, https://github.com/jackneil/claude-jacked
|
|
6
6
|
Project-URL: Repository, https://github.com/jackneil/claude-jacked
|
|
@@ -30,29 +30,52 @@ Description-Content-Type: text/markdown
|
|
|
30
30
|
|
|
31
31
|
Supercharge your Claude Code workflow with cross-machine session search, review agents, and workflow commands.
|
|
32
32
|
|
|
33
|
-
## Install
|
|
33
|
+
## Quick Install
|
|
34
|
+
|
|
35
|
+
**One-liner (Linux/macOS/Git Bash):**
|
|
36
|
+
```bash
|
|
37
|
+
curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/install.sh | bash
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Or manual two-step:**
|
|
41
|
+
```bash
|
|
42
|
+
pipx install claude-jacked && jacked install
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Then set up Qdrant credentials (see [Qdrant Setup](#set-up-qdrant-cloud)) and run `jacked backfill`.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Guided Install (Copy Into Claude Code)
|
|
50
|
+
|
|
51
|
+
> 📋 [View on GitHub](https://github.com/jackneil/claude-jacked#guided-install-copy-into-claude-code) for copy button
|
|
34
52
|
|
|
35
53
|
```
|
|
36
54
|
Install claude-jacked for me. First check what's already set up, then help me with anything missing:
|
|
37
55
|
|
|
38
56
|
DIAGNOSTIC PHASE (run these first to see current state):
|
|
39
57
|
- Detect my operating system
|
|
40
|
-
- Check if pipx is installed: pipx --version
|
|
58
|
+
- Check if pipx is installed: pipx --version (or: python -m pipx --version)
|
|
41
59
|
- Check if jacked CLI is installed: jacked --version (or on Windows: where jacked)
|
|
42
|
-
- Check if Qdrant credentials are set
|
|
43
|
-
- Check current config: jacked configure --show (if jacked exists)
|
|
60
|
+
- Check if Qdrant credentials are set in current shell: echo $QDRANT_CLAUDE_SESSIONS_ENDPOINT
|
|
44
61
|
- Check if hook is installed: look in ~/.claude/settings.json for "jacked index"
|
|
45
|
-
-
|
|
62
|
+
- If jacked exists and env vars visible: jacked status && jacked configure --show
|
|
63
|
+
|
|
64
|
+
WINDOWS EXTRA CHECK (Git Bash doesn't inherit Windows System Environment):
|
|
65
|
+
- If env vars NOT visible in bash, check Windows System Environment:
|
|
66
|
+
powershell.exe -Command "[System.Environment]::GetEnvironmentVariable('QDRANT_CLAUDE_SESSIONS_ENDPOINT', 'Machine')"
|
|
67
|
+
powershell.exe -Command "[System.Environment]::GetEnvironmentVariable('QDRANT_CLAUDE_SESSIONS_ENDPOINT', 'User')"
|
|
68
|
+
- If vars exist in Windows but not bash: they need to be added to ~/.bashrc
|
|
46
69
|
|
|
47
70
|
REPORT what's already configured vs what's missing before proceeding.
|
|
48
71
|
|
|
49
72
|
SETUP PHASE (only do steps that are missing):
|
|
50
73
|
1. If no Python 3.11+: help install miniconda
|
|
51
74
|
2. If no pipx: pip install pipx && pipx ensurepath
|
|
52
|
-
3. If jacked not installed: pipx install claude-jacked
|
|
53
|
-
4. If no Qdrant credentials: walk me through cloud.qdrant.io setup
|
|
54
|
-
5. If env vars
|
|
55
|
-
6. If
|
|
75
|
+
3. If jacked not installed: pipx install claude-jacked && jacked install
|
|
76
|
+
4. If no Qdrant credentials anywhere: walk me through cloud.qdrant.io setup
|
|
77
|
+
5. If env vars in Windows but not bash: add export lines to ~/.bashrc, then source it
|
|
78
|
+
6. If env vars missing entirely: help add to shell profile
|
|
56
79
|
7. If no indexed sessions: jacked backfill
|
|
57
80
|
|
|
58
81
|
VERIFY: jacked status && jacked configure --show
|
|
@@ -61,9 +84,11 @@ Ask if this is personal use or team setup.
|
|
|
61
84
|
If team: explain that everyone needs the same Qdrant cluster credentials.
|
|
62
85
|
|
|
63
86
|
WINDOWS NOTES:
|
|
87
|
+
- Claude Code uses Git Bash, which does NOT inherit Windows System Environment variables
|
|
88
|
+
- If you set env vars in Windows Settings, you ALSO need them in ~/.bashrc for Git Bash
|
|
64
89
|
- pipx installs jacked to: C:\Users\<user>\pipx\venvs\claude-jacked\Scripts\jacked.exe
|
|
65
|
-
- If "jacked" isn't found, find it with: where jacked OR
|
|
66
|
-
- In Git Bash, backslash paths get mangled. Use:
|
|
90
|
+
- If "jacked" isn't found, find it with: where jacked OR ls /c/Users/$USER/pipx/venvs/claude-jacked/Scripts/
|
|
91
|
+
- In Git Bash, backslash paths get mangled. Use forward slashes: /c/Users/...
|
|
67
92
|
```
|
|
68
93
|
|
|
69
94
|
---
|
|
@@ -97,7 +122,7 @@ The goal: never lose useful context, never repeat solved problems, catch issues
|
|
|
97
122
|
|
|
98
123
|
## Manual Install
|
|
99
124
|
|
|
100
|
-
### Install the CLI
|
|
125
|
+
### Step 1: Install the CLI
|
|
101
126
|
|
|
102
127
|
**Use pipx** (recommended - installs globally, always on PATH):
|
|
103
128
|
|
|
@@ -109,7 +134,21 @@ Don't have pipx? `pip install pipx && pipx ensurepath`
|
|
|
109
134
|
|
|
110
135
|
**Why not regular pip?** If you `pip install` into a conda env or virtualenv, the `jacked` command only works when that env is active. Claude Code hooks run in a fresh shell without your env activated → `jacked: command not found`. pipx avoids this by installing to an isolated global location that's always on PATH.
|
|
111
136
|
|
|
112
|
-
###
|
|
137
|
+
### Step 2: Install Claude Code Integration
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
jacked install
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
This installs:
|
|
144
|
+
- All agents to `~/.claude/agents/`
|
|
145
|
+
- All commands to `~/.claude/commands/`
|
|
146
|
+
- The `/jacked` skill to `~/.claude/skills/`
|
|
147
|
+
- Auto-index hook (indexes sessions after every Claude response)
|
|
148
|
+
|
|
149
|
+
Restart Claude Code after running this.
|
|
150
|
+
|
|
151
|
+
### Step 3: Set Up Qdrant Cloud
|
|
113
152
|
|
|
114
153
|
The session search features require Qdrant Cloud for vector storage and embedding:
|
|
115
154
|
|
|
@@ -122,29 +161,31 @@ export QDRANT_CLAUDE_SESSIONS_ENDPOINT="https://your-cluster.qdrant.io"
|
|
|
122
161
|
export QDRANT_CLAUDE_SESSIONS_API_KEY="your-api-key"
|
|
123
162
|
```
|
|
124
163
|
|
|
125
|
-
###
|
|
164
|
+
### Step 4: Index Your Sessions
|
|
126
165
|
|
|
127
166
|
```bash
|
|
128
|
-
jacked
|
|
167
|
+
jacked backfill # Index all existing sessions
|
|
168
|
+
jacked status # Verify it's working
|
|
169
|
+
jacked search "something you worked on before"
|
|
129
170
|
```
|
|
130
171
|
|
|
131
|
-
|
|
132
|
-
- All agents to `~/.claude/agents/`
|
|
133
|
-
- All commands to `~/.claude/commands/`
|
|
134
|
-
- The `/jacked` skill to `~/.claude/skills/`
|
|
135
|
-
- Auto-index hook (indexes sessions after every Claude response)
|
|
172
|
+
**Note:** If you only want the agents and commands (not the session search), you can manually copy just those files from the repo without setting up Qdrant. But the main `jacked` functionality requires it.
|
|
136
173
|
|
|
137
|
-
|
|
174
|
+
---
|
|
138
175
|
|
|
139
|
-
|
|
176
|
+
## Uninstall
|
|
140
177
|
|
|
178
|
+
**One-liner:**
|
|
141
179
|
```bash
|
|
142
|
-
|
|
143
|
-
jacked status # Verify it's working
|
|
144
|
-
jacked search "something you worked on before"
|
|
180
|
+
curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/uninstall.sh | bash
|
|
145
181
|
```
|
|
146
182
|
|
|
147
|
-
**
|
|
183
|
+
**Or manual two-step:**
|
|
184
|
+
```bash
|
|
185
|
+
jacked uninstall && pipx uninstall claude-jacked
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
This removes hooks, skill, agents, and commands from Claude Code. Your Qdrant index is preserved if you reinstall later.
|
|
148
189
|
|
|
149
190
|
---
|
|
150
191
|
|
|
@@ -271,13 +312,16 @@ jacked search "query" # Semantic search with multi-factor ranking
|
|
|
271
312
|
jacked search "query" --mine # Only your sessions
|
|
272
313
|
jacked search "query" --user sarah # Only this teammate's sessions
|
|
273
314
|
jacked search "query" --repo path # Boost results from this repo
|
|
315
|
+
jacked search "query" --type chunk # Search full transcript chunks only
|
|
274
316
|
|
|
275
|
-
jacked
|
|
276
|
-
jacked
|
|
317
|
+
jacked sessions # List indexed sessions
|
|
318
|
+
jacked sessions --repo myproject # Filter by repo name
|
|
277
319
|
|
|
278
|
-
jacked retrieve <session_id> #
|
|
279
|
-
jacked retrieve <
|
|
280
|
-
jacked retrieve <id> --
|
|
320
|
+
jacked retrieve <session_id> # Smart mode: plan + summaries + labels
|
|
321
|
+
jacked retrieve <id> --mode full # Get full transcript (huge)
|
|
322
|
+
jacked retrieve <id> --mode plan # Just the plan file
|
|
323
|
+
jacked retrieve <id> --mode agents # Just subagent summaries
|
|
324
|
+
jacked retrieve <id> --mode labels # Just summary labels (tiny)
|
|
281
325
|
|
|
282
326
|
jacked index /path/to/session.jsonl --repo /path # Index specific session
|
|
283
327
|
jacked backfill # Index all existing sessions
|
|
@@ -285,7 +329,11 @@ jacked backfill --force # Re-index everything
|
|
|
285
329
|
|
|
286
330
|
jacked status # Check Qdrant connectivity
|
|
287
331
|
jacked delete <session_id> # Remove session from index
|
|
332
|
+
jacked cleardb # Delete all YOUR indexed data (requires confirmation)
|
|
288
333
|
jacked install # Install hook + skill + agents + commands
|
|
334
|
+
jacked install --sounds # Also install sound notification hooks
|
|
335
|
+
jacked uninstall # Remove hook + skill + agents + commands
|
|
336
|
+
jacked uninstall --sounds # Remove only sound hooks
|
|
289
337
|
jacked configure # Show config help
|
|
290
338
|
jacked configure --show # Show current config values
|
|
291
339
|
```
|
|
@@ -316,6 +364,44 @@ jacked configure --show # Show current config values
|
|
|
316
364
|
└─────────────────────────────────────────────────────────────┘
|
|
317
365
|
```
|
|
318
366
|
|
|
367
|
+
### Smart Retrieval (v0.2.6+)
|
|
368
|
+
|
|
369
|
+
Sessions are indexed with multiple content types for efficient retrieval:
|
|
370
|
+
|
|
371
|
+
| Content Type | What It Contains | Token Cost |
|
|
372
|
+
|--------------|------------------|------------|
|
|
373
|
+
| `plan` | Full implementation strategy from plan files | ~500-2K |
|
|
374
|
+
| `subagent_summary` | Rich summaries from exploration/planning agents | ~200-500 each |
|
|
375
|
+
| `summary_label` | Tiny chapter titles from auto-compaction | ~10-20 each |
|
|
376
|
+
| `user_message` | First 5 user messages for intent matching | ~100-500 each |
|
|
377
|
+
| `chunk` | Full transcript chunks (legacy) | ~2K each |
|
|
378
|
+
|
|
379
|
+
**Retrieval Modes:**
|
|
380
|
+
|
|
381
|
+
| Mode | What's Included | When to Use |
|
|
382
|
+
|------|-----------------|-------------|
|
|
383
|
+
| `smart` | Plan + agent summaries + labels + user msgs | Default - best balance (~5-10K tokens) |
|
|
384
|
+
| `plan` | Just the plan file | Quick strategic overview |
|
|
385
|
+
| `labels` | Just summary labels | Quick topic check (tiny) |
|
|
386
|
+
| `agents` | All subagent summaries | Deep dive into exploration results |
|
|
387
|
+
| `full` | Everything including transcript | Need full details (50-200K tokens - use sparingly!) |
|
|
388
|
+
|
|
389
|
+
**Why smart mode?** Full transcripts can be 50-200K tokens, which blows up your context window. Smart mode returns the highest-value content (~5-10K tokens) so you get the key decisions and plans without the bloat.
|
|
390
|
+
|
|
391
|
+
**Staleness warnings:** When loading old context, you'll see warnings based on age:
|
|
392
|
+
- 7-30 days: "Code may have changed since this session"
|
|
393
|
+
- 30-90 days: "Treat as starting point for WHERE to look, not WHAT to do"
|
|
394
|
+
- 90+ days: "Historical reference only - verify everything"
|
|
395
|
+
|
|
396
|
+
### Re-indexing After Upgrade
|
|
397
|
+
|
|
398
|
+
If you upgraded from a version before v0.2.6, your existing sessions are indexed as full transcript chunks only. To get smart retrieval:
|
|
399
|
+
|
|
400
|
+
```bash
|
|
401
|
+
jacked cleardb # Wipes YOUR data (not teammates), requires typing "DELETE MY DATA"
|
|
402
|
+
jacked backfill # Re-index with new content types
|
|
403
|
+
```
|
|
404
|
+
|
|
319
405
|
---
|
|
320
406
|
|
|
321
407
|
## Configuration
|
|
@@ -365,6 +451,25 @@ The `jacked install` command adds this to `~/.claude/settings.json`:
|
|
|
365
451
|
}
|
|
366
452
|
```
|
|
367
453
|
|
|
454
|
+
### Sound Notifications
|
|
455
|
+
|
|
456
|
+
Add audio feedback when Claude needs attention or completes a task:
|
|
457
|
+
|
|
458
|
+
```bash
|
|
459
|
+
jacked install --sounds
|
|
460
|
+
```
|
|
461
|
+
|
|
462
|
+
This adds hooks that play:
|
|
463
|
+
- **Notification sound** when Claude requests user input
|
|
464
|
+
- **Completion sound** when Claude finishes a task
|
|
465
|
+
|
|
466
|
+
Works on Windows (PowerShell), macOS (afplay), Linux (paplay), and WSL. Falls back to terminal bell on unsupported systems.
|
|
467
|
+
|
|
468
|
+
To remove only sound hooks (keep everything else):
|
|
469
|
+
```bash
|
|
470
|
+
jacked uninstall --sounds
|
|
471
|
+
```
|
|
472
|
+
|
|
368
473
|
---
|
|
369
474
|
|
|
370
475
|
## Security Warning
|
|
@@ -380,6 +485,8 @@ Recommendations:
|
|
|
380
485
|
- Keep your Qdrant API key secure
|
|
381
486
|
- Consider self-hosting Qdrant for sensitive work
|
|
382
487
|
|
|
488
|
+
**Data isolation:** The `cleardb` command only deletes data belonging to the current user (based on `JACKED_USER_NAME`). Teammates' data is unaffected.
|
|
489
|
+
|
|
383
490
|
---
|
|
384
491
|
|
|
385
492
|
## Troubleshooting
|
|
@@ -2,29 +2,52 @@
|
|
|
2
2
|
|
|
3
3
|
Supercharge your Claude Code workflow with cross-machine session search, review agents, and workflow commands.
|
|
4
4
|
|
|
5
|
-
## Install
|
|
5
|
+
## Quick Install
|
|
6
|
+
|
|
7
|
+
**One-liner (Linux/macOS/Git Bash):**
|
|
8
|
+
```bash
|
|
9
|
+
curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/install.sh | bash
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
**Or manual two-step:**
|
|
13
|
+
```bash
|
|
14
|
+
pipx install claude-jacked && jacked install
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Then set up Qdrant credentials (see [Qdrant Setup](#set-up-qdrant-cloud)) and run `jacked backfill`.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Guided Install (Copy Into Claude Code)
|
|
22
|
+
|
|
23
|
+
> 📋 [View on GitHub](https://github.com/jackneil/claude-jacked#guided-install-copy-into-claude-code) for copy button
|
|
6
24
|
|
|
7
25
|
```
|
|
8
26
|
Install claude-jacked for me. First check what's already set up, then help me with anything missing:
|
|
9
27
|
|
|
10
28
|
DIAGNOSTIC PHASE (run these first to see current state):
|
|
11
29
|
- Detect my operating system
|
|
12
|
-
- Check if pipx is installed: pipx --version
|
|
30
|
+
- Check if pipx is installed: pipx --version (or: python -m pipx --version)
|
|
13
31
|
- Check if jacked CLI is installed: jacked --version (or on Windows: where jacked)
|
|
14
|
-
- Check if Qdrant credentials are set
|
|
15
|
-
- Check current config: jacked configure --show (if jacked exists)
|
|
32
|
+
- Check if Qdrant credentials are set in current shell: echo $QDRANT_CLAUDE_SESSIONS_ENDPOINT
|
|
16
33
|
- Check if hook is installed: look in ~/.claude/settings.json for "jacked index"
|
|
17
|
-
-
|
|
34
|
+
- If jacked exists and env vars visible: jacked status && jacked configure --show
|
|
35
|
+
|
|
36
|
+
WINDOWS EXTRA CHECK (Git Bash doesn't inherit Windows System Environment):
|
|
37
|
+
- If env vars NOT visible in bash, check Windows System Environment:
|
|
38
|
+
powershell.exe -Command "[System.Environment]::GetEnvironmentVariable('QDRANT_CLAUDE_SESSIONS_ENDPOINT', 'Machine')"
|
|
39
|
+
powershell.exe -Command "[System.Environment]::GetEnvironmentVariable('QDRANT_CLAUDE_SESSIONS_ENDPOINT', 'User')"
|
|
40
|
+
- If vars exist in Windows but not bash: they need to be added to ~/.bashrc
|
|
18
41
|
|
|
19
42
|
REPORT what's already configured vs what's missing before proceeding.
|
|
20
43
|
|
|
21
44
|
SETUP PHASE (only do steps that are missing):
|
|
22
45
|
1. If no Python 3.11+: help install miniconda
|
|
23
46
|
2. If no pipx: pip install pipx && pipx ensurepath
|
|
24
|
-
3. If jacked not installed: pipx install claude-jacked
|
|
25
|
-
4. If no Qdrant credentials: walk me through cloud.qdrant.io setup
|
|
26
|
-
5. If env vars
|
|
27
|
-
6. If
|
|
47
|
+
3. If jacked not installed: pipx install claude-jacked && jacked install
|
|
48
|
+
4. If no Qdrant credentials anywhere: walk me through cloud.qdrant.io setup
|
|
49
|
+
5. If env vars in Windows but not bash: add export lines to ~/.bashrc, then source it
|
|
50
|
+
6. If env vars missing entirely: help add to shell profile
|
|
28
51
|
7. If no indexed sessions: jacked backfill
|
|
29
52
|
|
|
30
53
|
VERIFY: jacked status && jacked configure --show
|
|
@@ -33,9 +56,11 @@ Ask if this is personal use or team setup.
|
|
|
33
56
|
If team: explain that everyone needs the same Qdrant cluster credentials.
|
|
34
57
|
|
|
35
58
|
WINDOWS NOTES:
|
|
59
|
+
- Claude Code uses Git Bash, which does NOT inherit Windows System Environment variables
|
|
60
|
+
- If you set env vars in Windows Settings, you ALSO need them in ~/.bashrc for Git Bash
|
|
36
61
|
- pipx installs jacked to: C:\Users\<user>\pipx\venvs\claude-jacked\Scripts\jacked.exe
|
|
37
|
-
- If "jacked" isn't found, find it with: where jacked OR
|
|
38
|
-
- In Git Bash, backslash paths get mangled. Use:
|
|
62
|
+
- If "jacked" isn't found, find it with: where jacked OR ls /c/Users/$USER/pipx/venvs/claude-jacked/Scripts/
|
|
63
|
+
- In Git Bash, backslash paths get mangled. Use forward slashes: /c/Users/...
|
|
39
64
|
```
|
|
40
65
|
|
|
41
66
|
---
|
|
@@ -69,7 +94,7 @@ The goal: never lose useful context, never repeat solved problems, catch issues
|
|
|
69
94
|
|
|
70
95
|
## Manual Install
|
|
71
96
|
|
|
72
|
-
### Install the CLI
|
|
97
|
+
### Step 1: Install the CLI
|
|
73
98
|
|
|
74
99
|
**Use pipx** (recommended - installs globally, always on PATH):
|
|
75
100
|
|
|
@@ -81,7 +106,21 @@ Don't have pipx? `pip install pipx && pipx ensurepath`
|
|
|
81
106
|
|
|
82
107
|
**Why not regular pip?** If you `pip install` into a conda env or virtualenv, the `jacked` command only works when that env is active. Claude Code hooks run in a fresh shell without your env activated → `jacked: command not found`. pipx avoids this by installing to an isolated global location that's always on PATH.
|
|
83
108
|
|
|
84
|
-
###
|
|
109
|
+
### Step 2: Install Claude Code Integration
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
jacked install
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
This installs:
|
|
116
|
+
- All agents to `~/.claude/agents/`
|
|
117
|
+
- All commands to `~/.claude/commands/`
|
|
118
|
+
- The `/jacked` skill to `~/.claude/skills/`
|
|
119
|
+
- Auto-index hook (indexes sessions after every Claude response)
|
|
120
|
+
|
|
121
|
+
Restart Claude Code after running this.
|
|
122
|
+
|
|
123
|
+
### Step 3: Set Up Qdrant Cloud
|
|
85
124
|
|
|
86
125
|
The session search features require Qdrant Cloud for vector storage and embedding:
|
|
87
126
|
|
|
@@ -94,29 +133,31 @@ export QDRANT_CLAUDE_SESSIONS_ENDPOINT="https://your-cluster.qdrant.io"
|
|
|
94
133
|
export QDRANT_CLAUDE_SESSIONS_API_KEY="your-api-key"
|
|
95
134
|
```
|
|
96
135
|
|
|
97
|
-
###
|
|
136
|
+
### Step 4: Index Your Sessions
|
|
98
137
|
|
|
99
138
|
```bash
|
|
100
|
-
jacked
|
|
139
|
+
jacked backfill # Index all existing sessions
|
|
140
|
+
jacked status # Verify it's working
|
|
141
|
+
jacked search "something you worked on before"
|
|
101
142
|
```
|
|
102
143
|
|
|
103
|
-
|
|
104
|
-
- All agents to `~/.claude/agents/`
|
|
105
|
-
- All commands to `~/.claude/commands/`
|
|
106
|
-
- The `/jacked` skill to `~/.claude/skills/`
|
|
107
|
-
- Auto-index hook (indexes sessions after every Claude response)
|
|
144
|
+
**Note:** If you only want the agents and commands (not the session search), you can manually copy just those files from the repo without setting up Qdrant. But the main `jacked` functionality requires it.
|
|
108
145
|
|
|
109
|
-
|
|
146
|
+
---
|
|
110
147
|
|
|
111
|
-
|
|
148
|
+
## Uninstall
|
|
112
149
|
|
|
150
|
+
**One-liner:**
|
|
113
151
|
```bash
|
|
114
|
-
|
|
115
|
-
jacked status # Verify it's working
|
|
116
|
-
jacked search "something you worked on before"
|
|
152
|
+
curl -sSL https://raw.githubusercontent.com/jackneil/claude-jacked/master/uninstall.sh | bash
|
|
117
153
|
```
|
|
118
154
|
|
|
119
|
-
**
|
|
155
|
+
**Or manual two-step:**
|
|
156
|
+
```bash
|
|
157
|
+
jacked uninstall && pipx uninstall claude-jacked
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
This removes hooks, skill, agents, and commands from Claude Code. Your Qdrant index is preserved if you reinstall later.
|
|
120
161
|
|
|
121
162
|
---
|
|
122
163
|
|
|
@@ -243,13 +284,16 @@ jacked search "query" # Semantic search with multi-factor ranking
|
|
|
243
284
|
jacked search "query" --mine # Only your sessions
|
|
244
285
|
jacked search "query" --user sarah # Only this teammate's sessions
|
|
245
286
|
jacked search "query" --repo path # Boost results from this repo
|
|
287
|
+
jacked search "query" --type chunk # Search full transcript chunks only
|
|
246
288
|
|
|
247
|
-
jacked
|
|
248
|
-
jacked
|
|
289
|
+
jacked sessions # List indexed sessions
|
|
290
|
+
jacked sessions --repo myproject # Filter by repo name
|
|
249
291
|
|
|
250
|
-
jacked retrieve <session_id> #
|
|
251
|
-
jacked retrieve <
|
|
252
|
-
jacked retrieve <id> --
|
|
292
|
+
jacked retrieve <session_id> # Smart mode: plan + summaries + labels
|
|
293
|
+
jacked retrieve <id> --mode full # Get full transcript (huge)
|
|
294
|
+
jacked retrieve <id> --mode plan # Just the plan file
|
|
295
|
+
jacked retrieve <id> --mode agents # Just subagent summaries
|
|
296
|
+
jacked retrieve <id> --mode labels # Just summary labels (tiny)
|
|
253
297
|
|
|
254
298
|
jacked index /path/to/session.jsonl --repo /path # Index specific session
|
|
255
299
|
jacked backfill # Index all existing sessions
|
|
@@ -257,7 +301,11 @@ jacked backfill --force # Re-index everything
|
|
|
257
301
|
|
|
258
302
|
jacked status # Check Qdrant connectivity
|
|
259
303
|
jacked delete <session_id> # Remove session from index
|
|
304
|
+
jacked cleardb # Delete all YOUR indexed data (requires confirmation)
|
|
260
305
|
jacked install # Install hook + skill + agents + commands
|
|
306
|
+
jacked install --sounds # Also install sound notification hooks
|
|
307
|
+
jacked uninstall # Remove hook + skill + agents + commands
|
|
308
|
+
jacked uninstall --sounds # Remove only sound hooks
|
|
261
309
|
jacked configure # Show config help
|
|
262
310
|
jacked configure --show # Show current config values
|
|
263
311
|
```
|
|
@@ -288,6 +336,44 @@ jacked configure --show # Show current config values
|
|
|
288
336
|
└─────────────────────────────────────────────────────────────┘
|
|
289
337
|
```
|
|
290
338
|
|
|
339
|
+
### Smart Retrieval (v0.2.6+)
|
|
340
|
+
|
|
341
|
+
Sessions are indexed with multiple content types for efficient retrieval:
|
|
342
|
+
|
|
343
|
+
| Content Type | What It Contains | Token Cost |
|
|
344
|
+
|--------------|------------------|------------|
|
|
345
|
+
| `plan` | Full implementation strategy from plan files | ~500-2K |
|
|
346
|
+
| `subagent_summary` | Rich summaries from exploration/planning agents | ~200-500 each |
|
|
347
|
+
| `summary_label` | Tiny chapter titles from auto-compaction | ~10-20 each |
|
|
348
|
+
| `user_message` | First 5 user messages for intent matching | ~100-500 each |
|
|
349
|
+
| `chunk` | Full transcript chunks (legacy) | ~2K each |
|
|
350
|
+
|
|
351
|
+
**Retrieval Modes:**
|
|
352
|
+
|
|
353
|
+
| Mode | What's Included | When to Use |
|
|
354
|
+
|------|-----------------|-------------|
|
|
355
|
+
| `smart` | Plan + agent summaries + labels + user msgs | Default - best balance (~5-10K tokens) |
|
|
356
|
+
| `plan` | Just the plan file | Quick strategic overview |
|
|
357
|
+
| `labels` | Just summary labels | Quick topic check (tiny) |
|
|
358
|
+
| `agents` | All subagent summaries | Deep dive into exploration results |
|
|
359
|
+
| `full` | Everything including transcript | Need full details (50-200K tokens - use sparingly!) |
|
|
360
|
+
|
|
361
|
+
**Why smart mode?** Full transcripts can be 50-200K tokens, which blows up your context window. Smart mode returns the highest-value content (~5-10K tokens) so you get the key decisions and plans without the bloat.
|
|
362
|
+
|
|
363
|
+
**Staleness warnings:** When loading old context, you'll see warnings based on age:
|
|
364
|
+
- 7-30 days: "Code may have changed since this session"
|
|
365
|
+
- 30-90 days: "Treat as starting point for WHERE to look, not WHAT to do"
|
|
366
|
+
- 90+ days: "Historical reference only - verify everything"
|
|
367
|
+
|
|
368
|
+
### Re-indexing After Upgrade
|
|
369
|
+
|
|
370
|
+
If you upgraded from a version before v0.2.6, your existing sessions are indexed as full transcript chunks only. To get smart retrieval:
|
|
371
|
+
|
|
372
|
+
```bash
|
|
373
|
+
jacked cleardb # Wipes YOUR data (not teammates), requires typing "DELETE MY DATA"
|
|
374
|
+
jacked backfill # Re-index with new content types
|
|
375
|
+
```
|
|
376
|
+
|
|
291
377
|
---
|
|
292
378
|
|
|
293
379
|
## Configuration
|
|
@@ -337,6 +423,25 @@ The `jacked install` command adds this to `~/.claude/settings.json`:
|
|
|
337
423
|
}
|
|
338
424
|
```
|
|
339
425
|
|
|
426
|
+
### Sound Notifications
|
|
427
|
+
|
|
428
|
+
Add audio feedback when Claude needs attention or completes a task:
|
|
429
|
+
|
|
430
|
+
```bash
|
|
431
|
+
jacked install --sounds
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
This adds hooks that play:
|
|
435
|
+
- **Notification sound** when Claude requests user input
|
|
436
|
+
- **Completion sound** when Claude finishes a task
|
|
437
|
+
|
|
438
|
+
Works on Windows (PowerShell), macOS (afplay), Linux (paplay), and WSL. Falls back to terminal bell on unsupported systems.
|
|
439
|
+
|
|
440
|
+
To remove only sound hooks (keep everything else):
|
|
441
|
+
```bash
|
|
442
|
+
jacked uninstall --sounds
|
|
443
|
+
```
|
|
444
|
+
|
|
340
445
|
---
|
|
341
446
|
|
|
342
447
|
## Security Warning
|
|
@@ -352,6 +457,8 @@ Recommendations:
|
|
|
352
457
|
- Keep your Qdrant API key secure
|
|
353
458
|
- Consider self-hosting Qdrant for sensitive work
|
|
354
459
|
|
|
460
|
+
**Data isolation:** The `cleardb` command only deletes data belonging to the current user (based on `JACKED_USER_NAME`). Teammates' data is unaffected.
|
|
461
|
+
|
|
355
462
|
---
|
|
356
463
|
|
|
357
464
|
## Troubleshooting
|