ghost-bridge 0.2.0

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,85 @@
1
+ # Ghost Bridge(Claude MCP 无重启调试桥)
2
+
3
+ > 目标:在日常 Chrome 内零启动参数附加 DevTools,面向线上压缩代码(无 sourcemap)快速定位。
4
+
5
+ ## 目录结构
6
+ - `server.js`:MCP server,通过 stdio 被 Claude CLI 拉起,与扩展用 WebSocket 通信
7
+ - `extension/`:Chrome MV3 扩展,使用 `chrome.debugger` 附加当前激活标签
8
+
9
+ # Ghost Bridge(Claude MCP 无重启调试桥)
10
+
11
+ > 目标:在日常 Chrome 内零启动参数附加 DevTools,面向线上压缩代码(无 sourcemap)快速定位。
12
+
13
+ ## 快速使用
14
+
15
+ ### 1. 安装與初始化
16
+
17
+ ```bash
18
+ # 全局安装
19
+ npm install -g ghost-bridge
20
+
21
+ # 自动配置 Claude MCP 并准备扩展
22
+ ghost-bridge init
23
+ ```
24
+
25
+ ### 2. 加载 Chrome 扩展
26
+
27
+ 1. 打开 Chrome,访问 `chrome://extensions`
28
+ 2. 开启右上角的“开发者模式”
29
+ 3. 点击“加载已解压的扩展程序”
30
+ 4. 选择目录:`~/.ghost-bridge/extension`
31
+ > 提示:运行 `ghost-bridge extension --open` 可直接打开该目录
32
+
33
+ ### 3. 开始使用
34
+
35
+ 启动 Claude Desktop 或 Claude CLI,Ghost Bridge 工具即可直接通过 MCP 调用。无需额外启动任何服务(MCP 会自动管理)。
36
+
37
+ ---
38
+
39
+ ## 常用命令
40
+
41
+ - `ghost-bridge init`: 配置 MCP 并复制扩展文件
42
+ - `ghost-bridge status`: 检查配置状态
43
+ - `ghost-bridge extension`: 显示扩展安装路径
44
+ - `ghost-bridge start`: 手动启动 MCP 服务(通常不需要)
45
+
46
+ ## 默认配置
47
+ - 端口:`3301`(`server.js` / `extension/background.js`)
48
+ - token:`1`(仅用于本机 WS 校验,如需修改请保持两端一致)
49
+
50
+ ## 工具说明
51
+
52
+ ### 基础调试工具
53
+ - **get_last_error**:汇总最近异常/console/网络报错,附带行列与脚本标识
54
+ - **get_script_source**:支持 `scriptUrlContains`、`line`、`column`,返回源码片段(无 sourcemap 仍可用)
55
+ - **coverage_snapshot**:默认 1.5s,输出调用次数最高的脚本
56
+ - **find_by_string**:在脚本源码里按关键词搜索,返回上下文 200 字符窗口
57
+ - **symbolic_hints**:采集资源列表、全局变量 key、localStorage key、UA 与 URL
58
+ - **eval_script**:只读表达式执行;谨慎使用,避免改写页面状态
59
+
60
+ ### 🆕 网络请求分析工具
61
+ - **list_network_requests**:列出捕获的网络请求
62
+ - 支持按 URL 关键词过滤(`filter`)
63
+ - 支持按请求方法过滤(`method`: GET/POST/PUT/DELETE)
64
+ - 支持按状态过滤(`status`: success/error/failed/pending)
65
+ - 支持按资源类型过滤(`resourceType`: XHR/Fetch/Script/Image)
66
+ - 返回:URL、方法、状态码、耗时、大小等摘要信息
67
+
68
+ - **get_network_detail**:获取单个请求的详细信息
69
+ - 请求头和响应头
70
+ - 请求方法、状态码、MIME 类型
71
+ - 耗时分析(timing)
72
+ - 可选获取响应体(`includeBody: true`)
73
+
74
+ - **clear_network_requests**:清空已捕获的网络请求记录
75
+
76
+ ## 设计取舍
77
+ - 不依赖 `--remote-debugging-port`,完全通过扩展获取 CDP,满足"零重启"
78
+ - 默认 `autoDetach=false` 保持附加,便于持续捕获异常和网络请求;可通过图标 OFF 立即解除调试
79
+ - 无 sourcemap 时通过片段截取、字符串搜索与覆盖率提供线索
80
+ - 网络请求完整记录,支持查看请求/响应详情和响应体
81
+
82
+ ## 已知限制
83
+ - 扩展 service worker 可能被挂起,已内置 1s 重连策略;若长时间无流量需重新唤醒
84
+ - 若目标页面自带 DevTools 打开,`chrome.debugger.attach` 可能失败,请关闭后重试
85
+ - 大体积单行 bundle beautify 可能耗时,server 端对超长源码会只截取片段