mihomo-cli 1.2.0 → 1.2.2
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/CHANGELOG.md +27 -0
- package/README.md +52 -2
- package/index.js +8 -7
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.2.2] - 2026-04-05
|
|
4
|
+
|
|
5
|
+
### 优化
|
|
6
|
+
|
|
7
|
+
- **简短帮助**:`subscription` 简化为一行
|
|
8
|
+
- **详细帮助**:补充完整的子命令列表(`list`、`directory open` 等)
|
|
9
|
+
|
|
10
|
+
### 修复
|
|
11
|
+
|
|
12
|
+
- 回滚 v1.2.1 中对详细帮助的错误修改(详细帮助保持多行格式)
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## [1.2.1] - 2026-04-05
|
|
17
|
+
|
|
18
|
+
### 文档
|
|
19
|
+
|
|
20
|
+
- README 添加覆写配置和自动重启说明
|
|
21
|
+
- CLAUDE.md 精简和完善,增加发布检查清单
|
|
22
|
+
|
|
23
|
+
### 文档
|
|
24
|
+
|
|
25
|
+
- README 添加覆写配置和自动重启说明
|
|
26
|
+
- CLAUDE.md 精简和完善,增加发布检查清单
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
3
30
|
## [1.2.0] - 2026-04-05
|
|
4
31
|
|
|
5
32
|
### 新增功能
|
package/README.md
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
- 🌐 **订阅管理** - 添加/更新订阅,支持流量统计和到期时间显示
|
|
8
8
|
- 🔄 **自动更新** - 启动时自动检查并更新过期订阅
|
|
9
9
|
- 🔍 **模糊匹配** - `sub use` / `sub web` 支持订阅名称模糊匹配
|
|
10
|
+
- 📝 **覆写配置** - 在订阅基础上进行自定义覆写,支持强制覆盖、数组合并
|
|
11
|
+
- 🔄 **智能重启** - `sub use` 切换订阅、`ow on/off` 切换覆写后自动重启
|
|
10
12
|
- 🚀 **进程管理** - 启动/停止/切换模式,自动清理残留进程
|
|
11
13
|
- 🔄 **双模式支持** - Mixed 模式和 TUN 透明代理模式
|
|
12
14
|
- 📊 **状态监控** - 查看运行状态、内存占用
|
|
@@ -94,16 +96,25 @@ mihomo ui yacd # YACD
|
|
|
94
96
|
| `mihomo sub add <url> [name]` | 添加订阅 |
|
|
95
97
|
| `mihomo sub update` | 更新所有订阅 |
|
|
96
98
|
| `mihomo sub update <name>` | 更新指定订阅(支持模糊匹配) |
|
|
97
|
-
| `mihomo sub use <name>` |
|
|
99
|
+
| `mihomo sub use <name>` | 设置默认订阅(支持模糊匹配,自动重启) |
|
|
98
100
|
| `mihomo sub web [name]` | 打开订阅页面(无参打开默认) |
|
|
99
101
|
|
|
102
|
+
### 覆写配置
|
|
103
|
+
|
|
104
|
+
| 命令 | 说明 |
|
|
105
|
+
|------|------|
|
|
106
|
+
| `mihomo ow` / `mihomo ow list` | 查看覆写配置状态和文件列表 |
|
|
107
|
+
| `mihomo ow on` | 启用覆写配置(自动重启) |
|
|
108
|
+
| `mihomo ow off` | 禁用覆写配置(自动重启) |
|
|
109
|
+
|
|
100
110
|
### 其他命令
|
|
101
111
|
|
|
102
112
|
| 命令 | 说明 |
|
|
103
113
|
|------|------|
|
|
104
114
|
| `mihomo kernel [镜像\|--no-mirror]` | 更新内核 |
|
|
105
115
|
| `mihomo ui [zash\|dash\|yacd]` | 打开 Web UI |
|
|
106
|
-
| `mihomo
|
|
116
|
+
| `mihomo dir` | 显示数据目录位置 |
|
|
117
|
+
| `mihomo dir open [target]` | 打开指定目录(`root`, `subs`, `logs`, `overwrites` 等) |
|
|
107
118
|
| `mihomo reset [--full]` | 重置用户数据 (--full 同时删除内核) |
|
|
108
119
|
| `mihomo version` | 显示版本信息 |
|
|
109
120
|
| `mihomo help` | 显示帮助信息 |
|
|
@@ -165,6 +176,7 @@ mihomo kernel --no-mirror
|
|
|
165
176
|
├── subscriptions/
|
|
166
177
|
│ ├── cache.json # 订阅动态缓存(更新时间、流量、到期时间等)
|
|
167
178
|
│ └── <name>.yaml # 订阅原始配置
|
|
179
|
+
├── overwrites/ # 覆写配置(按文件名排序加载)
|
|
168
180
|
├── core/
|
|
169
181
|
│ └── mihomo # mihomo 内核二进制
|
|
170
182
|
├── logs/
|
|
@@ -178,6 +190,44 @@ mihomo kernel --no-mirror
|
|
|
178
190
|
|
|
179
191
|
可通过环境变量 `MIHOMO_CLI_DIR` 自定义数据目录位置。
|
|
180
192
|
|
|
193
|
+
## 覆写配置
|
|
194
|
+
|
|
195
|
+
覆写配置允许你在订阅配置基础上进行自定义修改,而不会影响订阅本身。
|
|
196
|
+
|
|
197
|
+
### 使用方法
|
|
198
|
+
|
|
199
|
+
1. 在 `~/.mihomo-cli/overwrites/` 目录下创建 `.yaml` 或 `.yml` 文件
|
|
200
|
+
2. 文件按**文件名顺序**加载,后面的文件会覆盖前面的配置
|
|
201
|
+
3. 使用 `mihomo ow on` 启用覆写配置(会自动重启)
|
|
202
|
+
|
|
203
|
+
### 特殊语法
|
|
204
|
+
|
|
205
|
+
覆写配置支持以下特殊操作符:
|
|
206
|
+
|
|
207
|
+
| 语法 | 作用 | 示例 |
|
|
208
|
+
|------|------|------|
|
|
209
|
+
| `key!` | 强制覆盖整个对象(不深度合并) | `dns!`: { ... } |
|
|
210
|
+
| `+key` | 数组前置插入 | `+proxies`: [...] |
|
|
211
|
+
| `key+` | 数组追加 | `rules+`: [...] |
|
|
212
|
+
| `<+key>` | 键名以 `+` 开头时转义 | `<+.google.cn>`: ... |
|
|
213
|
+
|
|
214
|
+
### 示例
|
|
215
|
+
|
|
216
|
+
```yaml
|
|
217
|
+
# ~/.mihomo-cli/overwrites/01-custom.yaml
|
|
218
|
+
|
|
219
|
+
# 强制覆盖 dns 配置
|
|
220
|
+
dns!:
|
|
221
|
+
enable: true
|
|
222
|
+
enhanced-mode: fake-ip
|
|
223
|
+
nameserver:
|
|
224
|
+
- 223.5.5.5
|
|
225
|
+
|
|
226
|
+
# 追加规则
|
|
227
|
+
rules+:
|
|
228
|
+
- "DOMAIN-SUFFIX,example.com,DIRECT"
|
|
229
|
+
```
|
|
230
|
+
|
|
181
231
|
## Web UI
|
|
182
232
|
|
|
183
233
|
内置三个常用 Web UI:
|
package/index.js
CHANGED
|
@@ -57,9 +57,7 @@ function printShortHelp() {
|
|
|
57
57
|
' ui [zash|dash|yacd] Web 界面\n' +
|
|
58
58
|
' log 实时日志\n' +
|
|
59
59
|
' logs 日志列表\n' +
|
|
60
|
-
' subscription
|
|
61
|
-
' subscription update 更新订阅\n' +
|
|
62
|
-
' subscription use <name> 切换默认订阅\n' +
|
|
60
|
+
' subscription 订阅管理(别名 sub)\n' +
|
|
63
61
|
' overwrite [on|off] 覆写配置(别名 ow)\n' +
|
|
64
62
|
' directory 数据目录(别名 dir)\n' +
|
|
65
63
|
' kernel 更新内核\n' +
|
|
@@ -86,14 +84,17 @@ function printHelp() {
|
|
|
86
84
|
' logs [编号] [-n N] [-o] 日志列表(0=当前,1+=归档)\n' +
|
|
87
85
|
'\n' +
|
|
88
86
|
'订阅:\n' +
|
|
89
|
-
' subscription
|
|
87
|
+
' subscription 列出所有订阅(别名 sub)\n' +
|
|
88
|
+
' subscription add <url> [name] 添加订阅\n' +
|
|
90
89
|
' subscription update [name] 更新订阅(无参更新所有)\n' +
|
|
91
|
-
' subscription use <name>
|
|
90
|
+
' subscription use <name> 切换默认订阅\n' +
|
|
92
91
|
' subscription web [name] 打开订阅页面\n' +
|
|
93
92
|
'\n' +
|
|
94
93
|
'配置:\n' +
|
|
95
|
-
' overwrite
|
|
96
|
-
'
|
|
94
|
+
' overwrite 查看覆写状态(别名 ow)\n' +
|
|
95
|
+
' overwrite on|off 启用/禁用覆写配置\n' +
|
|
96
|
+
' directory 显示数据目录位置(别名 dir)\n' +
|
|
97
|
+
' directory open [target] 打开目录: root|subs|logs|overwrites|...\n' +
|
|
97
98
|
'\n' +
|
|
98
99
|
'系统:\n' +
|
|
99
100
|
' kernel [镜像|--no-mirror] 更新内核\n' +
|