lcch-cli 1.0.1

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/README.md ADDED
@@ -0,0 +1,847 @@
1
+ # LCCH - Claude Code Helper
2
+
3
+ 管理 Claude Code 配置 (`~/.claude.json`) 的 CLI 工具。
4
+
5
+ ## 安装
6
+
7
+ ```bash
8
+ # 通过 npm 安装
9
+ npm install -g lcch-cli
10
+
11
+ # 验证安装
12
+ lcch --version
13
+ ```
14
+
15
+ ## 快速开始
16
+
17
+ 安装完成后,使用以下命令查看可用命令:
18
+
19
+ ```bash
20
+ lcch --help
21
+ ```
22
+
23
+ ## 场景一:浏览项目与会话
24
+
25
+ 刚安装完,想先看看自己有哪些项目,各项目状态如何。
26
+
27
+ ### 查看项目列表
28
+
29
+ ```bash
30
+ lcch projects list
31
+ ```
32
+
33
+ 输出示例:
34
+
35
+ ```
36
+ 📂 项目列表
37
+
38
+ ✓ 有效项目 (3)
39
+ ├─ /Users/lrk/workspace/my-project
40
+ ├─ /Users/lrk/workspace/another-project
41
+ └─ /Users/lrk/workspace/lcch-cli
42
+
43
+ ✗ 无效项目 (2)
44
+ ├─ /Users/lrk/old-project (目录不存在)
45
+ └─ /Users/lrk/deleted-app (目录不存在)
46
+ ```
47
+
48
+ - ✓ 绿色:有效项目(目录存在且在配置中)
49
+ - ✗ 品红:无效项目(配置中存在但目录已删除)
50
+
51
+ ### 树形结构展示
52
+
53
+ 如果项目较多且有嵌套目录关系,使用树形视图:
54
+
55
+ ```bash
56
+ lcch projects list --tree
57
+ ```
58
+
59
+ 输出示例(已截断):
60
+
61
+ ```
62
+ 📂 项目树形结构
63
+
64
+ /Users/lrk/workspace/
65
+ ├── my-project/
66
+ │ ├── child-project/
67
+ │ └── temp/
68
+ ├── another-project/
69
+ │ └── module-a/
70
+ └── lcch-cli/
71
+ └── docs/
72
+ ```
73
+
74
+ ### 带统计的详细列表
75
+
76
+ 查看每个项目的花费、Token、工具使用等详细统计:
77
+
78
+ ```bash
79
+ lcch projects list --verbose
80
+ ```
81
+
82
+ 输出示例(已截断):
83
+
84
+ ```
85
+ 📊 项目详细统计(按花费排序)
86
+
87
+ ✓ 有效项目
88
+ [1] /Users/lrk/workspace/my-project
89
+ 花费: $12.50 | Resume: 5 | 会话: 23 | MCP: 2 | Skills: 3
90
+
91
+ [2] /Users/lrk/workspace/another-project
92
+ 花费: $8.20 | Resume: 2 | 会话: 15 | MCP: 1 | Skills: 1
93
+
94
+ ✗ 无效项目
95
+ [3] /Users/lrk/deleted-app
96
+ (目录不存在)
97
+ ```
98
+
99
+ 💡 **提示**:使用 `--filter valid|invalid|orphaned|all` 可按项目状态过滤。
100
+
101
+ ### 查看会话历史
102
+
103
+ 查看所有项目的会话历史记录:
104
+
105
+ ```bash
106
+ lcch projects list --sessions
107
+ ```
108
+
109
+ 输出示例:
110
+
111
+ ```
112
+ 💬 会话历史
113
+
114
+ ✓ 有效项目会话 (23)
115
+ /Users/lrk/workspace/my-project
116
+ ├─ 2025-01-15 14:30 → 2025-01-15 16:45 (2h15m)
117
+ └─ 2025-01-16 09:00 → 2025-01-16 12:30 (3h30m)
118
+
119
+ ✗ 无效项目会话 (5)
120
+ /Users/lrk/deleted-app
121
+ ├─ 2024-12-01 10:00 → 2024-12-01 11:00 (1h)
122
+ └─ 2024-12-05 14:00 → 2024-12-05 15:30 (1h30m)
123
+
124
+ ⚠ 孤立会话 (3)
125
+ (有会话记录但无对应项目)
126
+ ├─ session-abc123 (2025-01-10)
127
+ ├─ session-def456 (2025-01-12)
128
+ └─ session-ghi789 (2025-01-14)
129
+ ```
130
+
131
+ ### 查看 Resume 历史
132
+
133
+ Resume 是 Claude Code 的会话续话功能,可查看所有项目的 resume 记录:
134
+
135
+ ```bash
136
+ lcch projects list --resume
137
+ ```
138
+
139
+ 输出示例(已截断):
140
+
141
+ ```
142
+ 📜 Resume 历史
143
+
144
+ ✓ 有效项目 Resume (7)
145
+ /Users/lrk/workspace/my-project
146
+ ├─ 6a26982c-...-093cf (创建: 2025-01-15 14:30 → 最后: 2025-01-16 12:30)
147
+ │ 消息数: 45 | 大小: 2.1MB | 压缩: 3次
148
+ └─ 8b37191d-...-a4d5e (创建: 2025-01-10 → 最后: 2025-01-12)
149
+ 消息数: 28 | 大小: 1.3MB | 压缩: 1次
150
+
151
+ ✗ 无效项目 Resume (2)
152
+ /Users/lrk/old-project
153
+ └─ 1c48293e-...-b6f7a (目录不存在)
154
+ ```
155
+
156
+ 💡 **提示**:`lcch project <path>` 可查看单个项目的详细信息。
157
+
158
+ ## 场景二:清理无用数据
159
+
160
+ 发现有无效项目或过多 resume,需要清理释放空间。
161
+
162
+ ### 交互式清理无效项目
163
+
164
+ ```bash
165
+ lcch projects clean
166
+ ```
167
+
168
+ 交互流程:
169
+ 1. 显示项目汇总(有效/无效/孤立项目统计)
170
+ 2. 选择项目阶段:有效/无效项目默认不选中,孤立项目默认全选
171
+ 3. 确认删除阶段:二次确认后执行删除
172
+
173
+ 输出示例:
174
+
175
+ ```
176
+ 🧹 项目清理
177
+
178
+ 项目统计: 有效 3 | 无效 2 | 孤立 0
179
+
180
+ 请选择要删除的项目:
181
+ ✓ /Users/lrk/workspace/my-project
182
+ ✗ /Users/lrk/workspace/old-project
183
+ ✗ /Users/lrk/workspace/deleted-app
184
+
185
+ 已选择: 2 个项目
186
+ 确认删除这些无效项目?[y/N]: y
187
+
188
+ ✅ 已删除 2 个无效项目
189
+ ```
190
+
191
+ ### 快速清理所有无效项目
192
+
193
+ ```bash
194
+ # 带确认提示
195
+ lcch projects clean --all
196
+
197
+ # 强制删除,无确认
198
+ lcch projects clean --force
199
+ ```
200
+
201
+ 💡 **提示**:清理前会自动创建配置备份,可通过 `lcch backup_config restore` 恢复。
202
+
203
+ ### 删除会话历史
204
+
205
+ 删除特定项目的会话历史记录:
206
+
207
+ ```bash
208
+ lcch project /Users/lrk/workspace/my-project --sessions --delete-sessions
209
+ ```
210
+
211
+ 交互流程:
212
+ 1. 显示该项目的所有会话(按时间排序)
213
+ 2. 选择要删除的会话(默认全选)
214
+ 3. 二次确认后删除
215
+
216
+ ### 删除 Resume
217
+
218
+ 查看并删除项目的 resume:
219
+
220
+ ```bash
221
+ lcch projects list --resume --delete-resumes
222
+ ```
223
+
224
+ 交互流程:
225
+ 1. 选择项目阶段(孤立项目默认全选)
226
+ 2. 选择 resume 阶段(显示路径、Session ID、大小,默认全选)
227
+ 3. 二次确认后删除
228
+
229
+ 💡 **提示**:`--delete-resumes` 只能删除 resume,不能删除会话。删除会话请用 `--delete-sessions`。
230
+
231
+ ## 场景三:备份与恢复配置
232
+
233
+ 在修改配置或清理数据前,先备份以防万一;或从旧备份恢复。
234
+
235
+ 备份文件存储位置:
236
+ - `.claude.json` 备份:`~/.lcch/backups/config/`
237
+ - `settings.json` 备份:`~/.lcch/backups/settings/`
238
+
239
+ ### 创建备份
240
+
241
+ 交互式创建备份(默认同时备份两种配置):
242
+
243
+ ```bash
244
+ lcch backup_config create
245
+ ```
246
+
247
+ 输出示例:
248
+
249
+ ```
250
+ 💾 创建配置备份
251
+
252
+ 请选择要备份的配置:
253
+ ◉ ☐ .claude.json (Claude 主配置)
254
+ ◉ ☐ settings.json (全局设置)
255
+
256
+ [选择全部] [取消选择] [确认]
257
+
258
+ ✅ 已创建备份:
259
+ ├─ .claude.json.backup.1734567890
260
+ └─ settings.json.backup.1734567890
261
+ ```
262
+
263
+ 只备份一种配置:
264
+
265
+ ```bash
266
+ lcch backup_config create --target config # 只备份 .claude.json
267
+ lcch backup_config create --target settings # 只备份 settings.json
268
+ ```
269
+
270
+ ### 查看备份列表
271
+
272
+ ```bash
273
+ lcch backup_config list
274
+ ```
275
+
276
+ 输出示例:
277
+
278
+ ```
279
+ 📋 配置备份列表
280
+
281
+ 📁 config (.claude.json) - ~/.lcch/backups/config/
282
+ ├─ .claude.json.backup.1734567890 (2025-01-15 14:30, 2.1KB)
283
+ ├─ .claude.json.backup.1734567000 (2025-01-14 10:00, 2.0KB)
284
+ └─ .claude.json.backup_auto_before_restore (2025-01-13 16:00, 1.9KB)
285
+
286
+ 📁 settings (settings.json) - ~/.lcch/backups/settings/
287
+ ├─ settings.json.backup.1734567890 (2025-01-15 14:30, 1.5KB)
288
+ └─ settings.json.backup.1734555000 (2025-01-12 09:00, 1.4KB)
289
+ ```
290
+
291
+ 只显示一种配置:
292
+
293
+ ```bash
294
+ lcch backup_config list --target config
295
+ lcch backup_config list --target settings
296
+ ```
297
+
298
+ ### 恢复备份
299
+
300
+ 交互式选择恢复:
301
+
302
+ ```bash
303
+ lcch backup_config restore
304
+ ```
305
+
306
+ 输出示例:
307
+
308
+ ```
309
+ ♻️ 恢复配置备份
310
+
311
+ 选择要恢复的备份(平铺显示):
312
+
313
+ [1] .claude.json.backup.1734567890 (2025-01-15 14:30)
314
+ [2] .claude.json.backup.1734567000 (2025-01-14 10:00)
315
+ [3] .claude.json.backup_auto_before_restore (2025-01-13 16:00)
316
+ [4] settings.json.backup.1734567890 (2025-01-15 14:30)
317
+ ...
318
+
319
+ 请选择: 1
320
+
321
+ ⚠️ 恢复将覆盖当前配置
322
+ 自动创建覆盖前备份: .claude.json.backup_auto_before_restore
323
+
324
+ 确认恢复?[y/N]: y
325
+
326
+ ✅ 已恢复配置
327
+ ```
328
+
329
+ 直接恢复指定备份:
330
+
331
+ ```bash
332
+ lcch backup_config restore .claude.json.backup.1734567890
333
+ lcch backup_config restore settings.json.backup.1734555000
334
+ ```
335
+
336
+ 💡 **提示**:恢复前会自动创建 `*.backup_auto_before_restore` 覆盖式备份。
337
+
338
+ ### 删除备份
339
+
340
+ 交互式选择删除(按类型分组):
341
+
342
+ ```bash
343
+ lcch backup_config delete
344
+ ```
345
+
346
+ 输出示例:
347
+
348
+ ```
349
+ 🗑️ 删除配置备份
350
+
351
+ [config]
352
+ ☐ .claude.json.backup.1734567890
353
+ ☑ .claude.json.backup.1734567000
354
+ ☑ .claude.json.backup_auto_before_restore
355
+
356
+ [settings]
357
+ ☐ settings.json.backup.1734567890
358
+ ☐ settings.json.backup.1734555000
359
+
360
+ 已选择: 3 个备份
361
+ 确认删除?[y/N]: y
362
+
363
+ ✅ 已删除 3 个备份
364
+ ```
365
+
366
+ 直接删除指定备份:
367
+
368
+ ```bash
369
+ lcch backup_config delete .claude.json.backup.1734567890
370
+ ```
371
+
372
+ 💡 **注意**:恢复前自动创建的 `*.backup_auto_before_restore` 会在下次恢复时被覆盖。
373
+
374
+ ## 场景四:导出会话记录
375
+
376
+ 需要将某项目的会话导出为文件,用于存档或分享。
377
+
378
+ > **注意**:当前版本的导出功能的效果阅读起来并不是很满意,后续有时间会跟踪优化。
379
+
380
+ ### 交互式导出
381
+
382
+ ```bash
383
+ lcch projects export
384
+ ```
385
+
386
+ 交互流程:
387
+ 1. **选择项目**:显示有效/无效项目列表,支持搜索过滤
388
+ 2. **选择会话**:显示该项目的所有会话(按时间倒序),可多选
389
+ 3. **选择角色**:用户消息 / 助手消息 / 全部
390
+ 4. **选择内容类型**:文本 / 工具调用 / 工具结果 / 思考过程 / 全部
391
+ 5. **选择格式**:JSON / Markdown / HTML / Text
392
+ 6. **确认导出**
393
+
394
+ 输出示例:
395
+
396
+ ```
397
+ 📤 导出会话
398
+
399
+ [1/5] 选择项目
400
+ 请选择要导出的项目:
401
+ ✓ /Users/lrk/workspace/my-project
402
+ ✓ /Users/lrk/workspace/another-project
403
+ ✗ /Users/lrk/deleted-app
404
+
405
+ [2/5] 选择会话 (共 23 个)
406
+ ├─ 2025-01-16 12:30 (最近活动)
407
+ ├─ 2025-01-16 09:00
408
+ └─ 2025-01-15 16:45
409
+ ...(选择后显示已选: X 个)
410
+
411
+ [3/5] 选择角色
412
+ ◉ 全部
413
+ ○ 用户消息
414
+ ○ 助手消息
415
+
416
+ [4/5] 选择内容类型
417
+ ◉ 全部
418
+ ○ 文本 (text)
419
+ ○ 工具调用 (tool_use)
420
+ ○ 工具结果 (tool_result)
421
+ ○ 思考过程 (thinking)
422
+
423
+ [5/5] 选择格式
424
+ ( ) json - 适合程序处理
425
+ (>) markdown - 适合阅读
426
+ ( ) html - 适合分享
427
+ ( ) text - 纯文本
428
+
429
+ ✅ 导出完成
430
+ 📁 保存位置: ~/Desktop/lcch-exports/my-project/2025-01-16_123045.md
431
+ ```
432
+
433
+ ### 指定格式和目录导出
434
+
435
+ ```bash
436
+ # 导出为文本格式到指定目录
437
+ lcch projects export --format text --output-dir ./exports
438
+
439
+ # 导出为 JSON 格式
440
+ lcch projects export --format json
441
+ ```
442
+
443
+ 💡 **提示**:默认导出到 `~/Desktop/lcch-exports/<项目名>/<时间戳>.<格式>`
444
+
445
+ ## 场景五:安全扫描
446
+
447
+ 担心缓存中残留了 API 密钥等敏感信息,需要扫描并处理。
448
+
449
+ ### 扫描敏感信息
450
+
451
+ ```bash
452
+ lcch scan-secrets
453
+ ```
454
+
455
+ 扫描位置:
456
+ - `~/.claude/settings.json` - 全局设置
457
+ - `~/.claude/projects/` - 项目会话数据
458
+ - `~/.claude/history.jsonl` - 历史会话记录
459
+ - `~/.claude/session-env/` - 会话环境变量
460
+
461
+ 输出示例(已截断):
462
+
463
+ ```
464
+ 🔍 正在扫描缓存中的敏感信息...
465
+
466
+ ⚠️ 发现 125 处敏感信息:
467
+
468
+ 🔑 Anthropic API Key (1 处)
469
+ 📄 ~/.claude/settings.json
470
+ ├─ 匹配: sk-s********************cf91
471
+ │ 条数: 1
472
+ │ 行号: 3
473
+
474
+ 🔑 Bearer Token (94 处)
475
+ 📄 ~/.claude/projects/.../6a26982c-...-093cf.jsonl
476
+ ├─ 匹配: Authorization: Bearer eyJh********************lSDQ
477
+ │ 条数: 22
478
+ │ 行号: 1175, 1180, 1185, ...
479
+ └─ 匹配: eyjhbgcioijiuzi1niisinr5cci6ikpxvcj9...
480
+ 条数: 5
481
+
482
+ 🔑 API Key (30 处)
483
+ 📄 ~/.claude/projects/.../79558259-...-d33a87c.jsonl
484
+ └─ 匹配: AIza********************gPLY
485
+ 条数: 30
486
+
487
+ ─────────────────────────────────────
488
+ 安全建议
489
+ ─────────────────────────────────────
490
+ 1. 定期清理会话历史和 resume 数据
491
+ 2. 定期轮换 API 密钥
492
+ ─────────────────────────────────────
493
+ ```
494
+
495
+ 💡 **提示**:默认只显示模糊化的密钥(前4位和后4位,中间用 `*` 代替)
496
+
497
+ ### 显示完整密钥
498
+
499
+ ```bash
500
+ lcch scan-secrets --show
501
+ ```
502
+
503
+ ⚠️ **注意**:`--show` 会显示完整密钥内容,仅供调试使用,谨慎操作。
504
+
505
+ ### 掩码替换敏感信息
506
+
507
+ 交互式选择项目,扫描并掩码替换敏感信息:
508
+
509
+ ```bash
510
+ lcch scan-secrets --mask
511
+ ```
512
+
513
+ 交互流程:
514
+ 1. **选择项目**:按有效(绿色✓)/无效(品红✗)/孤立(黄色⚠)分组显示
515
+ 2. **确认替换**:显示扫描结果,确认后执行替换
516
+ 3. **完成**:显示修改的文件列表和备份创建情况
517
+
518
+ 输出示例:
519
+
520
+ ```
521
+ 🔐 掩码替换敏感信息
522
+
523
+ 请选择要处理的项目:
524
+
525
+ [有效项目]
526
+ ✓ /Users/lrk/workspace/my-project
527
+ ✓ /Users/lrk/workspace/another-project
528
+
529
+ [无效项目]
530
+ ✗ /Users/lrk/old-project
531
+
532
+ [孤立项目]
533
+ ⚠ 6a26982c-...-093cf (session)
534
+ ⚠ 8b37191d-...-a4d5e (session)
535
+
536
+ 已选择: 2 个有效项目
537
+
538
+ ⚠️ 即将对这些项目执行掩码替换:
539
+ • 扫描项目缓存目录中的所有支持文件
540
+ • 将敏感信息替换为 "sk-aaaa****bbbb" 格式
541
+ • 为每个被修改的文件创建 .backup.<timestamp> 备份
542
+
543
+ 确认执行?[y/N]: y
544
+
545
+ 🔍 正在扫描: /Users/lrk/workspace/my-project
546
+ 扫描完成,发现 15 处敏感信息
547
+ ✓ 已修改 3 个文件
548
+
549
+ 🔍 正在扫描: /Users/lrk/workspace/another-project
550
+ 扫描完成,发现 8 处敏感信息
551
+ ✓ 已修改 2 个文件
552
+
553
+ ✅ 处理完成,共修改 5 个文件,创建 5 个备份
554
+ ```
555
+
556
+ ### 恢复掩码备份
557
+
558
+ 恢复项目下所有掩码备份:
559
+
560
+ ```bash
561
+ lcch scan-secrets --mask --restore ~/.claude/projects/-Users-lrk-workspace-my-project
562
+ ```
563
+
564
+ ### 查看掩码备份
565
+
566
+ ```bash
567
+ lcch scan-secrets --backup
568
+ ```
569
+
570
+ 输出示例:
571
+
572
+ ```
573
+ 📋 掩码备份列表
574
+
575
+ 项目: /Users/lrk/workspace/my-project
576
+ ├─ .backup.1734567890 (2025-01-15 14:30, 2.1KB)
577
+ └─ .backup.1734567000 (2025-01-14 10:00, 1.8KB)
578
+
579
+ 项目: /Users/lrk/workspace/another-project
580
+ └─ .backup.1734567000 (2025-01-14 10:00, 1.2KB)
581
+ ```
582
+
583
+ 💡 **提示**:
584
+ - 自动排除示例值(xxx、placeholder、eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9 等)
585
+ - 支持格式:.json, .jsonc, .jsonl, .env, .yaml, .yml, .toml, .txt, .md, .ts, .js, .sh
586
+
587
+ ## 场景六:查看配置统计与缓存
588
+
589
+ 想全局了解自己的 Claude Code 使用情况。
590
+
591
+ ### 查看使用统计
592
+
593
+ ```bash
594
+ lcch config stats
595
+ ```
596
+
597
+ 输出示例:
598
+
599
+ ```
600
+ 📊 Claude Code 使用统计
601
+
602
+ 📁 项目
603
+ 总数: 12 个 | 有效: 8 个 | 无效: 4 个 | MCP 服务器: 5 个
604
+
605
+ 💬 会话
606
+ 历史会话: 156 个 | Resume 会话: 23 个
607
+ 有效项目: 89 个 | 无效项目: 45 个 | 孤立会话: 22 个
608
+
609
+ 💰 费用
610
+ 总花费: $89.50 | 平均每项目: $7.46
611
+
612
+ 🔢 Token
613
+ 输入: 1.2M | 输出: 450K
614
+ 缓存创建: 320K | 缓存读取: 890K
615
+
616
+ 🛠️ 工具使用 (Top 10)
617
+ Read: 1,234 次 | Edit: 892 次 | Bash: 567 次
618
+ Glob: 445 次 | grep: 323 次 | ...
619
+ ...
620
+
621
+ ✨ Skill 使用 (Top 10)
622
+ mcp: 234 次 | web-fetch: 189 次 | ...
623
+
624
+ 🔗 GitHub
625
+ 关联仓库: 15 个
626
+
627
+ ⏱️ 时间
628
+ 使用天数: 45 天 | 首次: 2024-12-01 | 最后: 2025-01-16
629
+
630
+ 👤 用户
631
+ ID: user_abc123 | 安装方式: npm
632
+
633
+ 🥚 AI 伴侣
634
+ 名字: Claude | 性格: helpful | 孵化: 2025-01-01
635
+ ```
636
+
637
+ ### 查看配置路径
638
+
639
+ ```bash
640
+ lcch config path
641
+ ```
642
+
643
+ 输出:
644
+
645
+ ```
646
+ 📍 配置文件位置
647
+
648
+ Claude 主配置: /Users/lrk/.claude.json
649
+ 全局设置: /Users/lrk/.claude/settings.json
650
+ ```
651
+
652
+ ### 查看缓存信息
653
+
654
+ ```bash
655
+ lcch cache
656
+ ```
657
+
658
+ 输出示例:
659
+
660
+ ```
661
+ 💾 Claude Code 缓存信息
662
+
663
+ 缓存目录:
664
+ 📁 stats-cache ~/.claude/stats-cache.json (更新于 2025-01-16 12:00)
665
+ 📁 file-history ~/.claude/file-history/ (156 文件, 45MB)
666
+ 📁 paste-cache ~/.claude/paste-cache/ (23 文件, 1.2MB)
667
+ 📁 shell-snapshots ~/.claude/shell-snapshots/ (12 文件, 2.3MB)
668
+ 📁 cache ~/.claude/cache/ (8 文件, 340KB)
669
+ 📁 session-env ~/.claude/session-env/ (67 文件, 5.6MB)
670
+
671
+ API Prompt 缓存统计:
672
+ 缓存读取: 890K tokens | 缓存创建: 320K tokens
673
+ 缓存命中率: 68.5%
674
+ ```
675
+
676
+ JSON 格式输出:
677
+
678
+ ```bash
679
+ lcch cache --json
680
+ ```
681
+
682
+ ## 场景七:管理 MCP 和 Hooks
683
+
684
+ 查看已配置的 MCP 服务器和 Hooks。
685
+
686
+ ### 查看 MCP 服务器
687
+
688
+ ```bash
689
+ lcch mcp list
690
+ ```
691
+
692
+ 输出示例:
693
+
694
+ ```
695
+ 🖥️ MCP 服务器列表
696
+
697
+ 📍 全局 (2)
698
+ ├─ mcp-server-filesystem
699
+ │ 路径: /usr/local/lib/node_modules/mcp-filesystem
700
+ │ 状态: ✅ 启用
701
+ └─ mcp-server-github
702
+ 路径: /usr/local/lib/node_modules/mcp-github
703
+ 状态: ✅ 启用
704
+
705
+ 📍 项目级 (3)
706
+ /Users/lrk/workspace/my-project
707
+ └─ mcp-server-sql
708
+ 路径: ./node_modules/mcp-sql
709
+ 状态: ✅ 启用
710
+
711
+ /Users/lrk/workspace/another-project
712
+ ├─ mcp-server-postgres
713
+ │ 状态: ✅ 启用
714
+ └─ mcp-server-redis
715
+ 状态: ❌ 禁用
716
+ ```
717
+
718
+ ### 查看 MCP 详情
719
+
720
+ 交互式选择查看详细配置:
721
+
722
+ ```bash
723
+ lcch mcp info
724
+ ```
725
+
726
+ 输出示例:
727
+
728
+ ```
729
+ 🔍 MCP 服务器详情
730
+
731
+ 请选择要查看的服务器:
732
+ [1] mcp-server-filesystem (全局)
733
+ [2] mcp-server-github (全局)
734
+ [3] mcp-server-sql (/Users/lrk/workspace/my-project)
735
+ [4] mcp-server-postgres (/Users/lrk/workspace/another-project)
736
+
737
+ 选择: 3
738
+
739
+ ─────────────────────────────────────────
740
+ mcp-server-sql (项目级)
741
+ ─────────────────────────────────────────
742
+ 项目: /Users/lrk/workspace/my-project
743
+ 类型: command
744
+ 命令: node
745
+ 参数: ["~/mcp-sql/index.js"]
746
+
747
+ 环境变量:
748
+ DATABASE_URL: postg***** ← 敏感信息已模糊化
749
+ API_KEY: sk-te***** ← 敏感信息已模糊化
750
+
751
+ 其他配置:
752
+ timeout: 30000
753
+ autoApprove: false
754
+ enabled: true
755
+ ```
756
+
757
+ 显示完整敏感信息:
758
+
759
+ ```bash
760
+ lcch mcp info --show
761
+ ```
762
+
763
+ 💡 **注意**:默认模糊化包含 `key`、`token`、`secret`、`password`、`auth` 或以 `_pass` 结尾的环境变量。
764
+
765
+ ### 查看 Hooks
766
+
767
+ ```bash
768
+ lcch hooks list
769
+ ```
770
+
771
+ 输出示例:
772
+
773
+ ```
774
+ 🪝 Hooks 列表
775
+
776
+ 📍 全局 (1)
777
+ ├─ Hook: afterModelWrite
778
+ │ 脚本: /Users/lrk/.claude/hooks/afterModelWrite.js
779
+ │ 事件: post-write
780
+ └─ 配置: { autoFormat: true }
781
+
782
+ 📍 项目级 (2)
783
+ /Users/lrk/workspace/my-project
784
+ └─ Hook: customPrompt
785
+ 脚本: .claude/hooks/custom-prompt.js
786
+ 事件: pre-prompt
787
+
788
+ /Users/lrk/workspace/another-project
789
+ └─ Hook: gitCommit
790
+ 脚本: .claude/hooks/git-commit.js
791
+ 事件: pre-commit
792
+ ```
793
+
794
+ ---
795
+
796
+ ## 命令大全索引表
797
+
798
+ | 模块 | 命令 | 常用参数 | 适用场景 | 说明 |
799
+ |------|------|----------|----------|------|
800
+ | **projects** | `lcch projects list` | `--tree`, `--verbose`, `--sessions`, `--resume`, `--filter <type>` | 浏览所有项目 | 支持多种展示模式,`--filter` 过滤 valid/invalid/orphaned |
801
+ | **projects** | `lcch projects clean` | `--all`, `--force` | 清理无效项目 | `--all` 清理全部,`--force` 强制无确认 |
802
+ | **projects** | `lcch projects export` | `--format <json|markdown|html|text>`, `--output-dir <dir>` | 导出会话 | 交互式选择项目/会话/角色/内容类型 |
803
+ | **project** | `lcch project <path>` | `--sessions`, `--resume`, `--delete-sessions` | 查看单个项目 | `path` 支持相对路径和 `~` 符号 |
804
+ | **backup_config** | `lcch backup_config create` | `--target config\|settings` | 创建备份 | 默认同时备份两种配置 |
805
+ | **backup_config** | `lcch backup_config list` | `--target config\|settings` | 查看备份 | 按类型分组显示 |
806
+ | **backup_config** | `lcch backup_config restore` | `[filename]` | 恢复备份 | 支持交互式或直接指定文件名 |
807
+ | **backup_config** | `lcch backup_config delete` | `[filename]` | 删除备份 | 支持交互式或直接指定文件名 |
808
+ | **mcp** | `lcch mcp list` | — | 查看 MCP 服务器 | 按全局/项目级分类显示 |
809
+ | **mcp** | `lcch mcp info` | `--show` | 查看 MCP 详情 | `--show` 显示完整敏感信息 |
810
+ | **hooks** | `lcch hooks list` | — | 查看 Hooks | 按全局/项目级分类显示 |
811
+ | **config** | `lcch config stats` | — | 查看使用统计 | 显示项目/会话/费用/Token/工具等统计 |
812
+ | **config** | `lcch config path` | — | 查看配置路径 | 显示 .claude.json 等路径 |
813
+ | **cache** | `lcch cache` | `--json` | 查看缓存信息 | 含 API Prompt 缓存统计 |
814
+ | **scan-secrets** | `lcch scan-secrets` | `--show`, `--json` | 扫描敏感信息 | 扫描缓存中的密钥/令牌 |
815
+ | **scan-secrets** | `lcch scan-secrets --mask` | `--restore <path>` | 掩码替换 | 交互式选择项目,自动创建文件级备份 |
816
+ | **scan-secrets** | `lcch scan-secrets --backup` | — | 查看掩码备份 | 列出所有项目的备份信息 |
817
+
818
+ ### 常用组合示例
819
+
820
+ ```bash
821
+ # 查看所有项目树形结构
822
+ lcch projects list --tree
823
+
824
+ # 查看所有项目的会话并删除
825
+ lcch projects list --sessions --delete-sessions
826
+
827
+ # 强制清理所有无效项目
828
+ lcch projects clean --force
829
+
830
+ # 导出为文本格式到指定目录
831
+ lcch projects export --format text --output-dir ~/exports
832
+
833
+ # 扫描并掩码替换敏感信息
834
+ lcch scan-secrets --mask
835
+
836
+ # 恢复项目的掩码备份
837
+ lcch scan-secrets --mask --restore ~/.claude/projects/-Users-lrk-workspace-my-project
838
+
839
+ # 查看 MCP 详情(显示敏感信息)
840
+ lcch mcp info --show
841
+
842
+ # JSON 格式输出
843
+ lcch cache --json
844
+ lcch scan-secrets --json
845
+ ```
846
+
847
+