bobo-ai-cli 3.0.3 → 3.0.5
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.
- package/LICENSE +21 -21
- package/README.md +259 -259
- package/bundled-skills/CORE_SKILLS.txt +18 -18
- package/bundled-skills/backend-expert/SKILL.md +97 -97
- package/bundled-skills/code-review/SKILL.md +280 -280
- package/bundled-skills/code-review-expert/SKILL.md +85 -85
- package/bundled-skills/context-budget-analyzer/SKILL.md +76 -76
- package/bundled-skills/context-compressor/SKILL.md +75 -75
- package/bundled-skills/context-optimization-suite/SKILL.md +162 -162
- package/bundled-skills/frontend-expert/SKILL.md +93 -93
- package/bundled-skills/github/SKILL.md +12 -12
- package/bundled-skills/high-agency/SKILL.md +473 -473
- package/bundled-skills/high-agency/references/builder-patterns.md +126 -126
- package/bundled-skills/high-agency/references/recovery-playbook.md +298 -298
- package/bundled-skills/memory-manager/SKILL.md +214 -214
- package/bundled-skills/memory-manager/references/advanced-config.md +65 -65
- package/bundled-skills/orchestrator/SKILL.md +681 -681
- package/bundled-skills/planning-with-files/SKILL.md +193 -193
- package/bundled-skills/skill-creator/SKILL.md +220 -220
- package/bundled-skills/testing-expert/SKILL.md +99 -99
- package/bundled-skills/verify/SKILL.md +15 -15
- package/dist/agent.d.ts +5 -0
- package/dist/agent.js +11 -1
- package/dist/agent.js.map +1 -1
- package/dist/agents/catalog.d.ts +47 -0
- package/dist/agents/catalog.js +63 -5
- package/dist/agents/catalog.js.map +1 -1
- package/dist/agents/router.d.ts +12 -1
- package/dist/agents/router.js +43 -3
- package/dist/agents/router.js.map +1 -1
- package/dist/agents/spawn.js +36 -18
- package/dist/agents/spawn.js.map +1 -1
- package/dist/autonomous.js +5 -5
- package/dist/cli.js +23 -21
- package/dist/cli.js.map +1 -1
- package/dist/compactor.js +39 -39
- package/dist/dream.js +29 -29
- package/dist/image-input.d.ts +44 -0
- package/dist/image-input.js +161 -0
- package/dist/image-input.js.map +1 -0
- package/dist/memory.js +13 -13
- package/dist/project.js +15 -15
- package/dist/repl.js +88 -0
- package/dist/repl.js.map +1 -1
- package/dist/skills.js +54 -54
- package/dist/sub-agents.js +65 -65
- package/dist/tools/browser.js +21 -21
- package/dist/tools/claude-code.js +10 -10
- package/dist/web.js +7 -7
- package/dist/wiki-commands.d.ts +2 -0
- package/dist/wiki-commands.js +249 -0
- package/dist/wiki-commands.js.map +1 -0
- package/dist/wiki.d.ts +90 -0
- package/dist/wiki.js +614 -0
- package/dist/wiki.js.map +1 -0
- package/knowledge/advanced-patterns.md +70 -70
- package/knowledge/agent-directives.md +74 -74
- package/knowledge/api-integration-patterns.md +102 -0
- package/knowledge/code-review-protocol.md +69 -0
- package/knowledge/dream.md +36 -36
- package/knowledge/engineering.md +52 -46
- package/knowledge/error-catalog.md +38 -33
- package/knowledge/event-driven-architecture.md +43 -0
- package/knowledge/external-alignment.md +47 -0
- package/knowledge/high-agency.md +73 -0
- package/knowledge/image-generation.md +48 -0
- package/knowledge/index.json +194 -169
- package/knowledge/llm-wiki-pattern.md +71 -0
- package/knowledge/long-task-management.md +79 -0
- package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -102
- package/knowledge/memory/engineering-patterns.md +134 -134
- package/knowledge/memory/feedback_root_structure.md +15 -15
- package/knowledge/memory/project-contexts.md +69 -69
- package/knowledge/memory/tools-and-services.md +85 -85
- package/knowledge/memory-management.md +72 -0
- package/knowledge/rules/advisor-strategy.md +204 -0
- package/knowledge/rules/agents.md +62 -62
- package/knowledge/rules/blocking-rules.md +323 -323
- package/knowledge/rules/cache-management.md +379 -379
- package/knowledge/rules/capability-evolution.md +132 -132
- package/knowledge/rules/coding.md +126 -126
- package/knowledge/rules/engineering-workflows.md +225 -225
- package/knowledge/rules/evomap-content-guidelines.md +354 -354
- package/knowledge/rules/evomap-guide.md +224 -224
- package/knowledge/rules/external-alignment.md +22 -0
- package/knowledge/rules/git.md +31 -31
- package/knowledge/rules/hooks.md +106 -106
- package/knowledge/rules/performance.md +101 -101
- package/knowledge/rules/remotion-auto-production.md +1120 -1120
- package/knowledge/rules/security.md +46 -46
- package/knowledge/rules/testing.md +32 -32
- package/knowledge/rules/work-mode.md +208 -208
- package/knowledge/rules.md +62 -62
- package/knowledge/self-evolution.md +78 -0
- package/knowledge/self-rationalization-guard.md +52 -0
- package/knowledge/skills/Skill_Seekers.md +1722 -1722
- package/knowledge/skills/ab-test-setup.md +557 -557
- package/knowledge/skills/agent-sdk-dev.md +238 -238
- package/knowledge/skills/agent-tools.md +136 -136
- package/knowledge/skills/analytics-tracking.md +597 -597
- package/knowledge/skills/artifacts-builder.md +89 -89
- package/knowledge/skills/asana.md +12 -12
- package/knowledge/skills/backend-expert.md +97 -97
- package/knowledge/skills/brand-voice.md +481 -481
- package/knowledge/skills/browser-use.md +419 -419
- package/knowledge/skills/cache-optimization-skill.md +179 -179
- package/knowledge/skills/canvas-design.md +147 -147
- package/knowledge/skills/citation-validator.md +203 -203
- package/knowledge/skills/clangd-lsp.md +52 -52
- package/knowledge/skills/code-review-expert.md +85 -85
- package/knowledge/skills/code-review.md +280 -280
- package/knowledge/skills/code-simplifier.md +12 -12
- package/knowledge/skills/commit-commands.md +258 -258
- package/knowledge/skills/competitor-alternatives.md +795 -795
- package/knowledge/skills/content-atomizer.md +910 -910
- package/knowledge/skills/content-research-writer.md +605 -605
- package/knowledge/skills/context-optimization-suite.md +162 -162
- package/knowledge/skills/context7.md +12 -12
- package/knowledge/skills/copy-editing.md +494 -494
- package/knowledge/skills/copywriting.md +510 -510
- package/knowledge/skills/csharp-lsp.md +40 -40
- package/knowledge/skills/decision-making-framework.md +154 -154
- package/knowledge/skills/developer-growth-analysis.md +335 -335
- package/knowledge/skills/direct-response-copy.md +2336 -2336
- package/knowledge/skills/docker-expert.md +229 -229
- package/knowledge/skills/document-skills.md +12 -12
- package/knowledge/skills/documentation-expert.md +126 -126
- package/knowledge/skills/email-sequence.md +1061 -1061
- package/knowledge/skills/email-sequences.md +910 -910
- package/knowledge/skills/example-plugin.md +72 -72
- package/knowledge/skills/explanatory-output-style.md +82 -82
- package/knowledge/skills/feature-dev.md +458 -458
- package/knowledge/skills/file-organizer.md +466 -466
- package/knowledge/skills/firebase.disabled.md +12 -12
- package/knowledge/skills/form-cro.md +488 -488
- package/knowledge/skills/free-tool-strategy.md +636 -636
- package/knowledge/skills/frontend-design-offical.md +55 -55
- package/knowledge/skills/frontend-design.md +41 -41
- package/knowledge/skills/frontend-expert.md +93 -93
- package/knowledge/skills/github.md +12 -12
- package/knowledge/skills/gitlab.md +12 -12
- package/knowledge/skills/gopls-lsp.md +32 -32
- package/knowledge/skills/got-controller.md +218 -218
- package/knowledge/skills/greptile.md +72 -72
- package/knowledge/skills/hookify.md +376 -376
- package/knowledge/skills/image-editor.md +189 -189
- package/knowledge/skills/image-enhancer.md +109 -109
- package/knowledge/skills/jdtls-lsp.md +49 -49
- package/knowledge/skills/json-canvas.md +654 -654
- package/knowledge/skills/keyword-research.md +559 -559
- package/knowledge/skills/kotlin-lsp.md +28 -28
- package/knowledge/skills/laravel-boost.md +12 -12
- package/knowledge/skills/launch-strategy.md +394 -394
- package/knowledge/skills/lead-magnet.md +393 -393
- package/knowledge/skills/learning-output-style.md +106 -106
- package/knowledge/skills/linear.md +12 -12
- package/knowledge/skills/lua-lsp.md +47 -47
- package/knowledge/skills/marketing-ideas.md +720 -720
- package/knowledge/skills/marketing-psychology.md +534 -534
- package/knowledge/skills/mcp-builder.md +369 -369
- package/knowledge/skills/meeting-insights-analyzer.md +347 -347
- package/knowledge/skills/memory-evolution-system.md +172 -172
- package/knowledge/skills/multi-lens-thinking.md +407 -407
- package/knowledge/skills/nano-banana-pro.md +116 -116
- package/knowledge/skills/newsletter.md +736 -736
- package/knowledge/skills/notebooklm.md +296 -296
- package/knowledge/skills/obsidian-bases.md +634 -634
- package/knowledge/skills/obsidian-markdown.md +651 -651
- package/knowledge/skills/onboarding-cro.md +494 -494
- package/knowledge/skills/orchestrator.md +681 -681
- package/knowledge/skills/page-cro.md +379 -379
- package/knowledge/skills/paid-ads.md +624 -624
- package/knowledge/skills/paywall-upgrade-cro.md +651 -651
- package/knowledge/skills/php-lsp.md +36 -36
- package/knowledge/skills/planning-with-files.md +193 -193
- package/knowledge/skills/playwright.md +12 -12
- package/knowledge/skills/plugin-dev.md +434 -434
- package/knowledge/skills/popup-cro.md +520 -520
- package/knowledge/skills/positioning-angles.md +330 -330
- package/knowledge/skills/pr-review-toolkit.md +359 -359
- package/knowledge/skills/pricing-strategy.md +777 -777
- package/knowledge/skills/programmatic-seo.md +714 -714
- package/knowledge/skills/pyright-lsp.md +43 -43
- package/knowledge/skills/quality-assurance-framework.md +168 -168
- package/knowledge/skills/question-refiner.md +160 -160
- package/knowledge/skills/ralph-loop.md +205 -205
- package/knowledge/skills/refactoring-expert.md +103 -103
- package/knowledge/skills/referral-program.md +668 -668
- package/knowledge/skills/research-executor.md +164 -164
- package/knowledge/skills/review-with-security.md +12 -12
- package/knowledge/skills/rust-analyzer-lsp.md +50 -50
- package/knowledge/skills/schema-markup.md +647 -647
- package/knowledge/skills/security-audit-expert.md +124 -124
- package/knowledge/skills/security-expert.md +140 -140
- package/knowledge/skills/security-guidance.md +12 -12
- package/knowledge/skills/seedance-prompt.md +139 -139
- package/knowledge/skills/self-evolution.md +1160 -1160
- package/knowledge/skills/seo-audit.md +432 -432
- package/knowledge/skills/seo-content.md +787 -787
- package/knowledge/skills/serena.md +12 -12
- package/knowledge/skills/signup-flow-cro.md +409 -409
- package/knowledge/skills/skill-creator.md +220 -220
- package/knowledge/skills/skill-manager.md +226 -226
- package/knowledge/skills/skill-share.md +98 -98
- package/knowledge/skills/slack.md +12 -12
- package/knowledge/skills/social-content.md +878 -878
- package/knowledge/skills/spec-flow-skill.md +124 -124
- package/knowledge/skills/stripe.md +12 -12
- package/knowledge/skills/supabase.md +12 -12
- package/knowledge/skills/swift-lsp.md +40 -40
- package/knowledge/skills/synthesizer.md +236 -236
- package/knowledge/skills/template-skill.md +16 -16
- package/knowledge/skills/testing-expert.md +99 -99
- package/knowledge/skills/theme-factory.md +72 -72
- package/knowledge/skills/tiktok-research.md +208 -208
- package/knowledge/skills/typescript-lsp.md +36 -36
- package/knowledge/skills/ui-ux-pro-max.md +247 -247
- package/knowledge/skills/verify.md +15 -15
- package/knowledge/skills/visual-prompt-engineer.md +102 -102
- package/knowledge/skills/webapp-testing.md +111 -111
- package/knowledge/skills/wide-research.md +191 -191
- package/knowledge/system.md +93 -93
- package/knowledge/task-router.md +46 -37
- package/knowledge/verification.md +38 -38
- package/knowledge/worker-prompt-craft.md +66 -0
- package/knowledge/workflows/3d-viz.md +47 -47
- package/knowledge/workflows/data-pipeline.md +47 -47
- package/knowledge/workflows/db-migration.md +51 -51
- package/knowledge/workflows/feature-dev.md +41 -41
- package/knowledge/workflows/tdd-flow.md +52 -52
- package/knowledge/workflows/ui-verify.md +51 -51
- package/package.json +74 -74
- package/dist/claude-bridge.d.ts +0 -18
- package/dist/claude-bridge.js +0 -91
- package/dist/claude-bridge.js.map +0 -1
- package/dist/tools/claude-bridge-tool.d.ts +0 -4
- package/dist/tools/claude-bridge-tool.js +0 -44
- package/dist/tools/claude-bridge-tool.js.map +0 -1
|
@@ -1,179 +1,179 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: "cache-optimization-skill"
|
|
3
|
-
title: "Cache Optimization Skill"
|
|
4
|
-
category: "agent-engineering"
|
|
5
|
-
tags: ["cache optimization skill", "what the patches do", "installation status", "installed location", "patched cli", "usage", "cache health monitoring", "optimization strategy matrix", "troubleshooting", "restore from backup"]
|
|
6
|
-
triggers: []
|
|
7
|
-
dependencies: []
|
|
8
|
-
source: "E:/Bobo's Coding cache/.claude/skills/cache-optimization-skill"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
name: cache-optimization-skill
|
|
13
|
-
description: Token cache optimization based on cc-cache-fix. Auto-applies 3 patches (attachment persistence, hash stability, 1h TTL) and monitors cache health. Use when starting sessions, resuming conversations, or auditing token usage.
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
# Cache Optimization Skill
|
|
17
|
-
|
|
18
|
-
> **Source**: cc-cache-fix by Rangizingo
|
|
19
|
-
> **Effect**: ~60-70% token savings via 3 targeted patches
|
|
20
|
-
> **Status**: Installed as `claude-patched` (v2.1.81)
|
|
21
|
-
|
|
22
|
-
## What The Patches Do
|
|
23
|
-
|
|
24
|
-
### Patch 1: Attachment Persistence (db8 filter)
|
|
25
|
-
**Problem**: Claude Code drops `deferred_tools_delta` and `mcp_instructions_delta` attachments on save, breaking cache on resume.
|
|
26
|
-
|
|
27
|
-
**Fix**: Allow these attachment types through the filter:
|
|
28
|
-
```javascript
|
|
29
|
-
// Before: only hook_additional_context passes
|
|
30
|
-
if(A.attachment.type==="hook_additional_context") return!0;
|
|
31
|
-
return!1;
|
|
32
|
-
|
|
33
|
-
// After: also allow delta types
|
|
34
|
-
if(A.attachment.type==="deferred_tools_delta") return!0;
|
|
35
|
-
if(A.attachment.type==="mcp_instructions_delta") return!0;
|
|
36
|
-
return!1;
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
**Effect**: +30% cache hit rate on session resume.
|
|
40
|
-
|
|
41
|
-
### Patch 1b: Fingerprint Meta Skip
|
|
42
|
-
**Problem**: First user message (including meta/system messages) is used for cache fingerprinting, causing different fingerprints for identical content.
|
|
43
|
-
|
|
44
|
-
**Fix**: Skip meta user messages in fingerprint selector:
|
|
45
|
-
```javascript
|
|
46
|
-
// Before: finds first user message regardless of meta status
|
|
47
|
-
let q = A.find((_) => _.type === "user");
|
|
48
|
-
|
|
49
|
-
// After: skip meta messages
|
|
50
|
-
let q = A.find((_) => _.type === "user" && !("isMeta" in _ && _.isMeta));
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
**Effect**: More stable cache keys across turns.
|
|
54
|
-
|
|
55
|
-
### Patch 2: Force 1-Hour Cache TTL
|
|
56
|
-
**Problem**: Default 5-minute TTL is too short for most tasks. The `sjY()` function checks subscription/feature flags to gate 1h TTL.
|
|
57
|
-
|
|
58
|
-
**Fix**: Bypass the check entirely:
|
|
59
|
-
```javascript
|
|
60
|
-
// Before: conditional TTL based on plan
|
|
61
|
-
function sjY(A) { if(QA()==="bedrock" ... }
|
|
62
|
-
|
|
63
|
-
// After: always allow 1h TTL
|
|
64
|
-
function sjY(A) { return!0; if(QA()==="bedrock" ... }
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
**Effect**: Cache lives 12x longer, reducing recomputation.
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
## Installation Status
|
|
72
|
-
|
|
73
|
-
```bash
|
|
74
|
-
# Installed location
|
|
75
|
-
E:/Bobo's Coding cache/cc-cache-fix/
|
|
76
|
-
|
|
77
|
-
# Patched CLI
|
|
78
|
-
claude-patched.cmd → node cli.js (patched v2.1.81)
|
|
79
|
-
|
|
80
|
-
# Usage
|
|
81
|
-
claude-patched # Start patched Claude Code
|
|
82
|
-
claude-patched --version # Verify: "2.1.81 (Claude Code)"
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## Cache Health Monitoring
|
|
86
|
-
|
|
87
|
-
### Quick Check
|
|
88
|
-
```bash
|
|
89
|
-
cd "E:/Bobo's Coding cache/cc-cache-fix"
|
|
90
|
-
python test_cache.py
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Usage Audit
|
|
94
|
-
```bash
|
|
95
|
-
python usage_audit.py
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
### Health Thresholds
|
|
99
|
-
|
|
100
|
-
| Metric | Green | Yellow | Red |
|
|
101
|
-
|--------|-------|--------|-----|
|
|
102
|
-
| Cache hit rate | >70% | 50-70% | <50% |
|
|
103
|
-
| Token efficiency | >65% | 45-65% | <45% |
|
|
104
|
-
| TTL utilization | >80% | 60-80% | <60% |
|
|
105
|
-
|
|
106
|
-
---
|
|
107
|
-
|
|
108
|
-
## Optimization Strategy Matrix
|
|
109
|
-
|
|
110
|
-
### With cc-cache-fix (default)
|
|
111
|
-
```
|
|
112
|
-
Strategy: Trust the cache, minimize re-reads
|
|
113
|
-
- Read files once, trust they'll be cached
|
|
114
|
-
- Resume sessions confidently (delta attachments preserved)
|
|
115
|
-
- Work in longer sessions (1h TTL)
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
### Without cc-cache-fix (fallback)
|
|
119
|
-
```
|
|
120
|
-
Strategy: Minimize context, split sessions
|
|
121
|
-
- Use Grep instead of full file reads
|
|
122
|
-
- Split long tasks into 15-20 min sessions
|
|
123
|
-
- Compress context before it exceeds 70%
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
---
|
|
127
|
-
|
|
128
|
-
## Combined with Other Optimizations
|
|
129
|
-
|
|
130
|
-
| Optimization | Token Savings | Requires |
|
|
131
|
-
|-------------|---------------|----------|
|
|
132
|
-
| **cc-cache-fix** | 60-70% | `claude-patched` |
|
|
133
|
-
| **Context compression** | 90-95% of context size | Manual trigger |
|
|
134
|
-
| **Session splitting** | 30-40% for long tasks | Task planning |
|
|
135
|
-
| **Cache warmup** | 30% on first operation | Session start |
|
|
136
|
-
| **Total combined** | ~80% overall | All above |
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## Troubleshooting
|
|
141
|
-
|
|
142
|
-
### Patch Not Applied
|
|
143
|
-
```bash
|
|
144
|
-
cd "E:/Bobo's Coding cache/cc-cache-fix"
|
|
145
|
-
# Restore from backup
|
|
146
|
-
cp node/node_modules/@anthropic-ai/claude-code/cli.js.orig node/node_modules/@anthropic-ai/claude-code/cli.js
|
|
147
|
-
# Re-apply
|
|
148
|
-
python patches/apply-patches.py node/node_modules/@anthropic-ai/claude-code/cli.js
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
### Version Mismatch After Claude Code Update
|
|
152
|
-
```bash
|
|
153
|
-
# The patch targets specific function names (db8, sjY, FA9)
|
|
154
|
-
# If these change in a new version, the patch will fail gracefully
|
|
155
|
-
# Check: python patches/apply-patches.py --dry-run <path-to-new-cli.js>
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
### Revert to Stock
|
|
159
|
-
```bash
|
|
160
|
-
# Simply use 'claude' instead of 'claude-patched'
|
|
161
|
-
claude # Unpatched version
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
---
|
|
165
|
-
|
|
166
|
-
## Maintenance
|
|
167
|
-
|
|
168
|
-
### Weekly
|
|
169
|
-
- Run `usage_audit.py` to track cache efficiency trends
|
|
170
|
-
- Check for cc-cache-fix updates: `cd cc-cache-fix && git pull`
|
|
171
|
-
|
|
172
|
-
### Monthly
|
|
173
|
-
- Verify patch status: `python test_cache.py`
|
|
174
|
-
- Re-run installer if Claude Code updated: `powershell -File install-windows.ps1`
|
|
175
|
-
|
|
176
|
-
### On Claude Code Major Update
|
|
177
|
-
- Check if patches still apply
|
|
178
|
-
- Wait for cc-cache-fix update if function names changed
|
|
179
|
-
- Fall back to `claude` (stock) if patches fail
|
|
1
|
+
---
|
|
2
|
+
id: "cache-optimization-skill"
|
|
3
|
+
title: "Cache Optimization Skill"
|
|
4
|
+
category: "agent-engineering"
|
|
5
|
+
tags: ["cache optimization skill", "what the patches do", "installation status", "installed location", "patched cli", "usage", "cache health monitoring", "optimization strategy matrix", "troubleshooting", "restore from backup"]
|
|
6
|
+
triggers: []
|
|
7
|
+
dependencies: []
|
|
8
|
+
source: "E:/Bobo's Coding cache/.claude/skills/cache-optimization-skill"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
name: cache-optimization-skill
|
|
13
|
+
description: Token cache optimization based on cc-cache-fix. Auto-applies 3 patches (attachment persistence, hash stability, 1h TTL) and monitors cache health. Use when starting sessions, resuming conversations, or auditing token usage.
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Cache Optimization Skill
|
|
17
|
+
|
|
18
|
+
> **Source**: cc-cache-fix by Rangizingo
|
|
19
|
+
> **Effect**: ~60-70% token savings via 3 targeted patches
|
|
20
|
+
> **Status**: Installed as `claude-patched` (v2.1.81)
|
|
21
|
+
|
|
22
|
+
## What The Patches Do
|
|
23
|
+
|
|
24
|
+
### Patch 1: Attachment Persistence (db8 filter)
|
|
25
|
+
**Problem**: Claude Code drops `deferred_tools_delta` and `mcp_instructions_delta` attachments on save, breaking cache on resume.
|
|
26
|
+
|
|
27
|
+
**Fix**: Allow these attachment types through the filter:
|
|
28
|
+
```javascript
|
|
29
|
+
// Before: only hook_additional_context passes
|
|
30
|
+
if(A.attachment.type==="hook_additional_context") return!0;
|
|
31
|
+
return!1;
|
|
32
|
+
|
|
33
|
+
// After: also allow delta types
|
|
34
|
+
if(A.attachment.type==="deferred_tools_delta") return!0;
|
|
35
|
+
if(A.attachment.type==="mcp_instructions_delta") return!0;
|
|
36
|
+
return!1;
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
**Effect**: +30% cache hit rate on session resume.
|
|
40
|
+
|
|
41
|
+
### Patch 1b: Fingerprint Meta Skip
|
|
42
|
+
**Problem**: First user message (including meta/system messages) is used for cache fingerprinting, causing different fingerprints for identical content.
|
|
43
|
+
|
|
44
|
+
**Fix**: Skip meta user messages in fingerprint selector:
|
|
45
|
+
```javascript
|
|
46
|
+
// Before: finds first user message regardless of meta status
|
|
47
|
+
let q = A.find((_) => _.type === "user");
|
|
48
|
+
|
|
49
|
+
// After: skip meta messages
|
|
50
|
+
let q = A.find((_) => _.type === "user" && !("isMeta" in _ && _.isMeta));
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Effect**: More stable cache keys across turns.
|
|
54
|
+
|
|
55
|
+
### Patch 2: Force 1-Hour Cache TTL
|
|
56
|
+
**Problem**: Default 5-minute TTL is too short for most tasks. The `sjY()` function checks subscription/feature flags to gate 1h TTL.
|
|
57
|
+
|
|
58
|
+
**Fix**: Bypass the check entirely:
|
|
59
|
+
```javascript
|
|
60
|
+
// Before: conditional TTL based on plan
|
|
61
|
+
function sjY(A) { if(QA()==="bedrock" ... }
|
|
62
|
+
|
|
63
|
+
// After: always allow 1h TTL
|
|
64
|
+
function sjY(A) { return!0; if(QA()==="bedrock" ... }
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Effect**: Cache lives 12x longer, reducing recomputation.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Installation Status
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
# Installed location
|
|
75
|
+
E:/Bobo's Coding cache/cc-cache-fix/
|
|
76
|
+
|
|
77
|
+
# Patched CLI
|
|
78
|
+
claude-patched.cmd → node cli.js (patched v2.1.81)
|
|
79
|
+
|
|
80
|
+
# Usage
|
|
81
|
+
claude-patched # Start patched Claude Code
|
|
82
|
+
claude-patched --version # Verify: "2.1.81 (Claude Code)"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Cache Health Monitoring
|
|
86
|
+
|
|
87
|
+
### Quick Check
|
|
88
|
+
```bash
|
|
89
|
+
cd "E:/Bobo's Coding cache/cc-cache-fix"
|
|
90
|
+
python test_cache.py
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Usage Audit
|
|
94
|
+
```bash
|
|
95
|
+
python usage_audit.py
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Health Thresholds
|
|
99
|
+
|
|
100
|
+
| Metric | Green | Yellow | Red |
|
|
101
|
+
|--------|-------|--------|-----|
|
|
102
|
+
| Cache hit rate | >70% | 50-70% | <50% |
|
|
103
|
+
| Token efficiency | >65% | 45-65% | <45% |
|
|
104
|
+
| TTL utilization | >80% | 60-80% | <60% |
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## Optimization Strategy Matrix
|
|
109
|
+
|
|
110
|
+
### With cc-cache-fix (default)
|
|
111
|
+
```
|
|
112
|
+
Strategy: Trust the cache, minimize re-reads
|
|
113
|
+
- Read files once, trust they'll be cached
|
|
114
|
+
- Resume sessions confidently (delta attachments preserved)
|
|
115
|
+
- Work in longer sessions (1h TTL)
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Without cc-cache-fix (fallback)
|
|
119
|
+
```
|
|
120
|
+
Strategy: Minimize context, split sessions
|
|
121
|
+
- Use Grep instead of full file reads
|
|
122
|
+
- Split long tasks into 15-20 min sessions
|
|
123
|
+
- Compress context before it exceeds 70%
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Combined with Other Optimizations
|
|
129
|
+
|
|
130
|
+
| Optimization | Token Savings | Requires |
|
|
131
|
+
|-------------|---------------|----------|
|
|
132
|
+
| **cc-cache-fix** | 60-70% | `claude-patched` |
|
|
133
|
+
| **Context compression** | 90-95% of context size | Manual trigger |
|
|
134
|
+
| **Session splitting** | 30-40% for long tasks | Task planning |
|
|
135
|
+
| **Cache warmup** | 30% on first operation | Session start |
|
|
136
|
+
| **Total combined** | ~80% overall | All above |
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Troubleshooting
|
|
141
|
+
|
|
142
|
+
### Patch Not Applied
|
|
143
|
+
```bash
|
|
144
|
+
cd "E:/Bobo's Coding cache/cc-cache-fix"
|
|
145
|
+
# Restore from backup
|
|
146
|
+
cp node/node_modules/@anthropic-ai/claude-code/cli.js.orig node/node_modules/@anthropic-ai/claude-code/cli.js
|
|
147
|
+
# Re-apply
|
|
148
|
+
python patches/apply-patches.py node/node_modules/@anthropic-ai/claude-code/cli.js
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Version Mismatch After Claude Code Update
|
|
152
|
+
```bash
|
|
153
|
+
# The patch targets specific function names (db8, sjY, FA9)
|
|
154
|
+
# If these change in a new version, the patch will fail gracefully
|
|
155
|
+
# Check: python patches/apply-patches.py --dry-run <path-to-new-cli.js>
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Revert to Stock
|
|
159
|
+
```bash
|
|
160
|
+
# Simply use 'claude' instead of 'claude-patched'
|
|
161
|
+
claude # Unpatched version
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
## Maintenance
|
|
167
|
+
|
|
168
|
+
### Weekly
|
|
169
|
+
- Run `usage_audit.py` to track cache efficiency trends
|
|
170
|
+
- Check for cc-cache-fix updates: `cd cc-cache-fix && git pull`
|
|
171
|
+
|
|
172
|
+
### Monthly
|
|
173
|
+
- Verify patch status: `python test_cache.py`
|
|
174
|
+
- Re-run installer if Claude Code updated: `powershell -File install-windows.ps1`
|
|
175
|
+
|
|
176
|
+
### On Claude Code Major Update
|
|
177
|
+
- Check if patches still apply
|
|
178
|
+
- Wait for cc-cache-fix update if function names changed
|
|
179
|
+
- Fall back to `claude` (stock) if patches fail
|