proxyctl 0.1.0__tar.gz → 0.1.1__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.
- {proxyctl-0.1.0 → proxyctl-0.1.1}/PKG-INFO +45 -28
- {proxyctl-0.1.0 → proxyctl-0.1.1}/README.md +44 -27
- {proxyctl-0.1.0 → proxyctl-0.1.1}/pyproject.toml +1 -1
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/__init__.py +1 -1
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/cli.py +1 -1
- {proxyctl-0.1.0 → proxyctl-0.1.1}/.gitignore +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/LICENSE +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/audit.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/builtin_plugins/__init__.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/builtin_plugins/connectivity_basic.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/builtin_plugins/corp_network.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/check.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/core/__init__.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/core/plugin.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/engine/__init__.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/engine/base.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/engine/mihomo.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/engine/singbox.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/status.py +0 -0
- {proxyctl-0.1.0 → proxyctl-0.1.1}/src/proxyctl/trace.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: proxyctl
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: Proxy configuration lifecycle management for macOS and Linux
|
|
5
5
|
Project-URL: Homepage, https://github.com/crhan/proxyctl
|
|
6
6
|
Project-URL: Issues, https://github.com/crhan/proxyctl/issues
|
|
@@ -27,6 +27,11 @@ Description-Content-Type: text/markdown
|
|
|
27
27
|
|
|
28
28
|
# proxyctl
|
|
29
29
|
|
|
30
|
+
[](https://pypi.org/project/proxyctl/)
|
|
31
|
+
[](https://github.com/crhan/proxyctl/actions/workflows/ci.yml)
|
|
32
|
+
[](https://pypi.org/project/proxyctl/)
|
|
33
|
+
[](https://github.com/crhan/proxyctl/blob/main/LICENSE)
|
|
34
|
+
|
|
30
35
|
**Proxy configuration lifecycle management** — 不是静态配置,而是配置演进框架。
|
|
31
36
|
|
|
32
37
|
## 定位
|
|
@@ -83,53 +88,65 @@ proxyctl bench proxy claude # 测指定组
|
|
|
83
88
|
|
|
84
89
|
## 安装
|
|
85
90
|
|
|
86
|
-
###
|
|
91
|
+
### 从 PyPI 安装(推荐)
|
|
87
92
|
|
|
88
93
|
```bash
|
|
89
|
-
#
|
|
90
|
-
|
|
91
|
-
cd proxyctl
|
|
94
|
+
# 用 uv(推荐,单命令隔离环境)
|
|
95
|
+
uv tool install proxyctl
|
|
92
96
|
|
|
93
|
-
#
|
|
94
|
-
|
|
97
|
+
# 或者 pipx
|
|
98
|
+
pipx install proxyctl
|
|
95
99
|
|
|
96
|
-
#
|
|
97
|
-
|
|
98
|
-
# 填入 api_secret: your-clash-api-secret
|
|
100
|
+
# 或者 pip(不推荐全局污染)
|
|
101
|
+
pip install --user proxyctl
|
|
99
102
|
|
|
100
|
-
#
|
|
103
|
+
# 验证
|
|
104
|
+
proxyctl --version # proxyctl v0.1.0
|
|
101
105
|
proxyctl --help
|
|
102
|
-
proxyctl status
|
|
103
106
|
```
|
|
104
107
|
|
|
105
|
-
###
|
|
108
|
+
### 安装后端
|
|
106
109
|
|
|
107
110
|
```bash
|
|
108
|
-
#
|
|
109
|
-
|
|
110
|
-
cd proxyctl
|
|
111
|
+
# Mihomo 后端(首发支持)
|
|
112
|
+
brew install mihomo
|
|
111
113
|
|
|
112
|
-
#
|
|
113
|
-
|
|
114
|
-
|
|
114
|
+
# 或者 Sing-box 后端(预留)
|
|
115
|
+
brew install sing-box
|
|
116
|
+
```
|
|
115
117
|
|
|
116
|
-
|
|
118
|
+
### 配置 API
|
|
119
|
+
|
|
120
|
+
```bash
|
|
117
121
|
mkdir -p ~/.config/proxyctl
|
|
118
|
-
|
|
122
|
+
# 把 https://github.com/crhan/proxyctl/blob/main/config.yaml.example 拷过来
|
|
123
|
+
curl -fsSL https://raw.githubusercontent.com/crhan/proxyctl/main/config.yaml.example \
|
|
124
|
+
-o ~/.config/proxyctl/config.yaml
|
|
119
125
|
# 编辑 config.yaml,填入 api_secret
|
|
120
126
|
```
|
|
121
127
|
|
|
122
|
-
###
|
|
128
|
+
### 注册 macOS LaunchDaemon(可选)
|
|
123
129
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
brew install mihomo
|
|
130
|
+
如果需要把 mihomo/sing-box 作为 launchd 服务托管(开机自启 + 守护进程重启),
|
|
131
|
+
克隆仓库并跑 `install.sh`:
|
|
127
132
|
|
|
128
|
-
|
|
129
|
-
|
|
133
|
+
```bash
|
|
134
|
+
git clone https://github.com/crhan/proxyctl.git
|
|
135
|
+
cd proxyctl
|
|
136
|
+
./install.sh # 安装 plist 到 /Library/LaunchDaemons
|
|
130
137
|
```
|
|
131
138
|
|
|
132
|
-
|
|
139
|
+
> 仅需要命令行用 `proxyctl status`/`check`/`trace` 等命令,**不必跑 install.sh**。
|
|
140
|
+
|
|
141
|
+
### 从源码开发
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
git clone https://github.com/crhan/proxyctl.git
|
|
145
|
+
cd proxyctl
|
|
146
|
+
uv sync --group dev # 装运行 + 测试依赖
|
|
147
|
+
uv run pytest # 跑测试
|
|
148
|
+
uv run proxyctl status # 用本地源代码版本
|
|
149
|
+
```
|
|
133
150
|
|
|
134
151
|
## 配置示例
|
|
135
152
|
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# proxyctl
|
|
2
2
|
|
|
3
|
+
[](https://pypi.org/project/proxyctl/)
|
|
4
|
+
[](https://github.com/crhan/proxyctl/actions/workflows/ci.yml)
|
|
5
|
+
[](https://pypi.org/project/proxyctl/)
|
|
6
|
+
[](https://github.com/crhan/proxyctl/blob/main/LICENSE)
|
|
7
|
+
|
|
3
8
|
**Proxy configuration lifecycle management** — 不是静态配置,而是配置演进框架。
|
|
4
9
|
|
|
5
10
|
## 定位
|
|
@@ -56,53 +61,65 @@ proxyctl bench proxy claude # 测指定组
|
|
|
56
61
|
|
|
57
62
|
## 安装
|
|
58
63
|
|
|
59
|
-
###
|
|
64
|
+
### 从 PyPI 安装(推荐)
|
|
60
65
|
|
|
61
66
|
```bash
|
|
62
|
-
#
|
|
63
|
-
|
|
64
|
-
cd proxyctl
|
|
67
|
+
# 用 uv(推荐,单命令隔离环境)
|
|
68
|
+
uv tool install proxyctl
|
|
65
69
|
|
|
66
|
-
#
|
|
67
|
-
|
|
70
|
+
# 或者 pipx
|
|
71
|
+
pipx install proxyctl
|
|
68
72
|
|
|
69
|
-
#
|
|
70
|
-
|
|
71
|
-
# 填入 api_secret: your-clash-api-secret
|
|
73
|
+
# 或者 pip(不推荐全局污染)
|
|
74
|
+
pip install --user proxyctl
|
|
72
75
|
|
|
73
|
-
#
|
|
76
|
+
# 验证
|
|
77
|
+
proxyctl --version # proxyctl v0.1.0
|
|
74
78
|
proxyctl --help
|
|
75
|
-
proxyctl status
|
|
76
79
|
```
|
|
77
80
|
|
|
78
|
-
###
|
|
81
|
+
### 安装后端
|
|
79
82
|
|
|
80
83
|
```bash
|
|
81
|
-
#
|
|
82
|
-
|
|
83
|
-
cd proxyctl
|
|
84
|
+
# Mihomo 后端(首发支持)
|
|
85
|
+
brew install mihomo
|
|
84
86
|
|
|
85
|
-
#
|
|
86
|
-
|
|
87
|
-
|
|
87
|
+
# 或者 Sing-box 后端(预留)
|
|
88
|
+
brew install sing-box
|
|
89
|
+
```
|
|
88
90
|
|
|
89
|
-
|
|
91
|
+
### 配置 API
|
|
92
|
+
|
|
93
|
+
```bash
|
|
90
94
|
mkdir -p ~/.config/proxyctl
|
|
91
|
-
|
|
95
|
+
# 把 https://github.com/crhan/proxyctl/blob/main/config.yaml.example 拷过来
|
|
96
|
+
curl -fsSL https://raw.githubusercontent.com/crhan/proxyctl/main/config.yaml.example \
|
|
97
|
+
-o ~/.config/proxyctl/config.yaml
|
|
92
98
|
# 编辑 config.yaml,填入 api_secret
|
|
93
99
|
```
|
|
94
100
|
|
|
95
|
-
###
|
|
101
|
+
### 注册 macOS LaunchDaemon(可选)
|
|
96
102
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
brew install mihomo
|
|
103
|
+
如果需要把 mihomo/sing-box 作为 launchd 服务托管(开机自启 + 守护进程重启),
|
|
104
|
+
克隆仓库并跑 `install.sh`:
|
|
100
105
|
|
|
101
|
-
|
|
102
|
-
|
|
106
|
+
```bash
|
|
107
|
+
git clone https://github.com/crhan/proxyctl.git
|
|
108
|
+
cd proxyctl
|
|
109
|
+
./install.sh # 安装 plist 到 /Library/LaunchDaemons
|
|
103
110
|
```
|
|
104
111
|
|
|
105
|
-
|
|
112
|
+
> 仅需要命令行用 `proxyctl status`/`check`/`trace` 等命令,**不必跑 install.sh**。
|
|
113
|
+
|
|
114
|
+
### 从源码开发
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
git clone https://github.com/crhan/proxyctl.git
|
|
118
|
+
cd proxyctl
|
|
119
|
+
uv sync --group dev # 装运行 + 测试依赖
|
|
120
|
+
uv run pytest # 跑测试
|
|
121
|
+
uv run proxyctl status # 用本地源代码版本
|
|
122
|
+
```
|
|
106
123
|
|
|
107
124
|
## 配置示例
|
|
108
125
|
|
|
@@ -1176,7 +1176,7 @@ def cmd_env(config: dict, unset: bool = False):
|
|
|
1176
1176
|
|
|
1177
1177
|
# ── 帮助 ──────────────────────────────────────────────────────────────────────
|
|
1178
1178
|
|
|
1179
|
-
VERSION = "0.1.
|
|
1179
|
+
VERSION = "0.1.1"
|
|
1180
1180
|
|
|
1181
1181
|
def cmd_help(verbose: bool = False):
|
|
1182
1182
|
"""打印帮助信息
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|