pac-proxy-cli 1.1.0 → 1.1.3

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.
Files changed (2) hide show
  1. package/README.md +49 -34
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,14 +1,15 @@
1
1
  # pac-proxy-cli
2
2
 
3
- 本机运行的 PAC / 全局代理 / 抓包 工具,提供 Web 界面与本地代理服务。支持设置系统代理、PAC 规则、HTTPS 抓包和查看流量记录。
3
+ 本机运行的 PAC / 全局代理 / 抓包工具,提供 Web 控制台与本地代理服务。支持内置代理客户端、系统代理自动设置、PAC 规则管理、HTTPS 抓包与流量记录。
4
4
 
5
5
  ## 功能特性
6
6
 
7
- - **多种代理模式**:全局代理、PAC 代理、抓包代理,一键切换。
8
- - **PAC 规则**:按域名/URL 规则匹配,选择「代理」或「直连」,支持优先级
7
+ - **多种代理模式**:全局代理、PAC 代理、抓包代理,一键切换
8
+ - **内置代理客户端**:托管上游代理进程生命周期,自动作为上游代理,无需手动启动
9
+ - **PAC 规则**:按域名/URL 规则匹配,选择「代理」或「直连」,支持优先级、搜索、导入/导出
9
10
  - **上游代理**:支持 SOCKS5 / HTTP 上游,本地将 SOCKS5 转为 HTTP 代理并按规则转发
10
11
  - **流量记录**:查看经本机代理的请求;抓包模式下可查看解密后的请求/响应、搜索与筛选
11
- - **抓包代理 (MITM)**:HTTPS 解密、自动生成 CA 证书供下载安装,便于本地调试与分析
12
+ - **抓包代理 (MITM)**:HTTPS 解密、自动生成 CA 证书供下载安装
12
13
  - **本地 / 远程模式**:本地模式配置仅存本机;远程模式需登录,PAC 规则可同步云端
13
14
 
14
15
  ## 环境要求
@@ -18,19 +19,17 @@
18
19
 
19
20
  ## 启动
20
21
 
21
- 确保本机已安装 Node.js 18 及以上,在终端执行:
22
-
23
22
  ```bash
24
- npx pac-proxy serve --port 5174
23
+ npx pac-proxy-cli serve --port 5174
25
24
  ```
26
25
 
27
- 不指定 `--port` 时默认使用 5174。启动后会输出控制台地址,例如:
26
+ 不指定 `--port` 时默认使用 5174。启动后会输出控制台地址:
28
27
 
29
28
  ```
30
29
  控制台已启动: http://127.0.0.1:5174
31
30
  ```
32
31
 
33
- 在浏览器中打开该地址即可使用。如需长期使用,也可全局安装后直接运行:
32
+ 在浏览器中打开该地址即可使用。如需长期使用,可全局安装:
34
33
 
35
34
  ```bash
36
35
  npm install -g pac-proxy-cli
@@ -46,65 +45,81 @@ pac-proxy serve --port 5174
46
45
  - **本地模式**:无需登录,所有配置保存在本机(默认目录 `~/.pac-proxy`)
47
46
  - **远程模式**:需注册/登录,PAC 规则与云端同步(依赖远程服务地址配置)
48
47
 
49
- 选择后进入控制台,之后可在顶部「切换模式」中更改。
48
+ 选择后进入控制台,之后可在侧边栏底部「切换模式」中更改。
50
49
 
51
50
  ### 2. 代理设置
52
51
 
53
52
  在 **代理设置** 页可进行:
54
53
 
55
- | 操作 | 说明 |
56
- |------------|------|
57
- | **全局代理** | 系统代理指向本机代理端口,所有 HTTP/HTTPS 经本地转发(可配置上游) |
58
- | **PAC 代理** | 系统使用自动代理配置(PAC),由本机提供 PAC 脚本,按规则决定代理或直连 |
59
- | **抓包代理** | 与全局类似,但流量经 MITM 解密,可查看请求/响应内容;需安装 CA 证书 |
60
- | **清除代理设置** | 关闭系统代理并停止本地代理服务 |
54
+ | 操作 | 说明 |
55
+ |------|------|
56
+ | **全局代理** | 系统代理指向本机代理端口,所有 HTTP/HTTPS 经本地转发 |
57
+ | **PAC 代理** | 系统使用自动代理配置(PAC),按规则决定代理或直连 |
58
+ | **抓包代理** | 流量经 MITM 解密,可查看请求/响应内容;需安装 CA 证书 |
59
+ | **清除代理** | 关闭系统代理并停止本地代理服务 |
61
60
 
62
- - **上游代理地址**:如 `socks5://127.0.0.1:1080` 或 `http://proxy.example.com:8080`,留空则直连
61
+ - **上游代理地址**:如 `socks5://127.0.0.1:1080` 或 `http://proxy.example.com:8080`
63
62
  - **HTTP/HTTPS 代理端口**:本地代理监听端口,默认 5175 / 5176
64
- - 保存后若开启「自动设置系统代理」,会尝试写入系统代理(支持 macOS / Windows / Linux GNOME)
63
+ - 若启用了内置代理客户端,上游代理地址会自动托管,无需手动填写
64
+
65
+ ### 3. 代理客户端
66
+
67
+ 在 **代理客户端** 页可配置并托管上游代理进程:
68
+
69
+ - 填写服务器地址、端口、密码、加密方式、本地 SOCKS5 端口
70
+ - 启用后,node-cli 会自动启动代理进程并将其 SOCKS5 输出作为上游代理
71
+ - 页面实时显示进程状态(运行中 / 已停止)、PID 及最近日志
72
+ - 可手动启动 / 停止进程
73
+
74
+ 代理客户端二进制按平台按需安装(仅下载当前平台对应的 ~10MB 文件):
65
75
 
66
- 若自动设置失败,页面会提示错误原因,可改为手动在系统或浏览器中设置代理为 `127.0.0.1:端口`。
76
+ | 平台 | 对应包 |
77
+ |------|--------|
78
+ | Windows x64 | `pac-proxy-client-win32-x64` |
79
+ | macOS x64 | `pac-proxy-client-darwin-x64` |
80
+ | Linux x64 | `pac-proxy-client-linux-x64` |
67
81
 
68
- ### 3. PAC 规则
82
+ ### 4. PAC 规则
69
83
 
70
84
  在 **PAC 规则** 页管理「代理 / 直连」规则:
71
85
 
72
86
  - 每条规则包含:匹配模式(如 `*.google.com`)、动作(代理 / 直连)、优先级
73
87
  - 按优先级从高到低匹配,命中则按该条动作执行
88
+ - 支持搜索、导入 JSON 文件(合并模式)、导出、复制规则列表
74
89
  - 本地模式下规则保存在本机;远程模式下规则与云端同步
75
90
 
76
- ### 4. 流量记录
91
+ ### 5. 流量记录
77
92
 
78
93
  在 **流量记录** 页可查看经本机代理的请求:
79
94
 
80
- - **非抓包模式**:列表展示时间、类型、方法、URL、动作(代理/直连),最多保留 500
81
- - **抓包模式**:展示更详细列表,支持按 URL 搜索、按方法/状态码/类型筛选、排序与分页;点击「详情」可查看请求/响应头与 body(可复制 URL)
95
+ - **非抓包模式**:列表展示时间、类型、方法、URL、动作,最多保留 500 条;支持自动刷新(每 5 秒)
96
+ - **抓包模式**:支持按 URL 搜索、按方法/状态码/类型筛选、排序与分页;点击行可查看请求/响应头与 body
82
97
 
83
- ### 5. 抓包代理与 CA 证书
98
+ ### 6. 抓包代理与 CA 证书
84
99
 
85
100
  选择「抓包代理」并保存后:
86
101
 
87
- 1. 系统代理会指向本机抓包代理端口,所有流量经本地解密
88
- 2. 首次产生 HTTPS 请求后,会在默认数据目录下生成根 CA
89
- 3. 在代理设置页点击 **下载 CA 证书**,将证书安装到系统或浏览器「受信任的根证书」
90
- 4. 安装后即可正常访问 HTTPS 站点,并在「流量记录」中查看解密后的请求/响应
102
+ 1. 系统代理指向本机抓包代理端口
103
+ 2. 首次产生 HTTPS 请求后,在数据目录下自动生成根 CA
104
+ 3. 在代理设置页点击 **下载 CA 证书**,安装到系统或浏览器「受信任的根证书」
105
+ 4. 安装后可在「流量记录」中查看解密后的请求/响应
91
106
 
92
- **注意**:CA 仅限本机抓包使用,请勿安装到他人设备或生产环境。
107
+ > CA 仅限本机抓包使用,请勿安装到他人设备或生产环境。
93
108
 
94
- ## 系统代理支持说明
109
+ ## 系统代理支持
95
110
 
96
111
  | 平台 | 说明 |
97
112
  |------|------|
98
- | **macOS** | 通过 `networksetup` 设置;若遇权限问题,可配置 sudo 免密或手动在 系统设置 → 网络 → 代理 中设置 |
99
- | **Windows** | 通过注册表写入;失败时可手动在 设置 → 网络和 Internet → 代理 中设置 |
100
- | **Linux** | 仅支持 **GNOME**(`gsettings`);需在图形会话中运行。KDE / XFCE 等请手动在系统设置中配置代理 |
113
+ | **macOS** | 通过 `networksetup` 设置;遇权限问题可手动在「系统设置 → 网络 → 代理」中配置 |
114
+ | **Windows** | 通过注册表写入;失败时可手动在「设置 → 网络和 Internet → 代理」中配置 |
115
+ | **Linux** | 仅支持 **GNOME**(`gsettings`);KDE / XFCE 等请手动在系统设置中配置 |
101
116
 
102
117
  ## 环境变量
103
118
 
104
119
  | 变量 | 说明 |
105
120
  |------|------|
106
121
  | `PAC_PROXY_HOME` | 数据与配置根目录,默认 `~/.pac-proxy` |
107
- | `REMOTE_SERVER_URL` | 远程模式下的服务端地址(需在运行目录的 .env 或 .env.local 中配置,供登录与 PAC 规则同步) |
122
+ | `REMOTE_SERVER_URL` | 远程模式服务端地址(在运行目录的 `.env``.env.local` 中配置) |
108
123
 
109
124
  ## 许可证
110
125
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pac-proxy-cli",
3
- "version": "1.1.0",
3
+ "version": "1.1.3",
4
4
  "description": "node pac proxy and web control panel",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",