mihomo-cli 1.0.2 → 1.1.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/CHANGELOG.md +46 -0
- package/README.md +17 -16
- package/index.js +400 -212
- package/package.json +1 -1
- package/src/config.js +36 -26
- package/src/overwrite.js +258 -0
- package/src/process.js +10 -10
- package/src/subscription.js +19 -29
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,51 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.1.0] - 2026-04-05
|
|
4
|
+
|
|
5
|
+
### 新增功能
|
|
6
|
+
|
|
7
|
+
#### 覆写配置
|
|
8
|
+
- **覆写配置功能**:支持在订阅配置基础上进行自定义覆写
|
|
9
|
+
- `ow` / `overwrite` 命令:
|
|
10
|
+
- `ow` / `ow list`:查看覆写配置状态和文件列表
|
|
11
|
+
- `ow on` / `ow off`:启用/禁用覆写配置
|
|
12
|
+
- **覆写文件位置**:`~/.mihomo-cli/overwrites/` 目录
|
|
13
|
+
- **支持的合并策略**:
|
|
14
|
+
- `key!`:强制覆盖整个对象
|
|
15
|
+
- `+key`:数组前置插入
|
|
16
|
+
- `key+`:数组追加
|
|
17
|
+
- `<+key>`:处理特殊键名
|
|
18
|
+
- **执行顺序**:按文件名顺序加载,后面的文件覆盖前面的配置
|
|
19
|
+
|
|
20
|
+
### 优化
|
|
21
|
+
|
|
22
|
+
#### 输出格式
|
|
23
|
+
- 统一输出格式,移除操作提示开头的 2 空格缩进
|
|
24
|
+
- 操作结果和列表之间自动添加空行分隔
|
|
25
|
+
- `start` 命令启动后自动显示完整状态信息
|
|
26
|
+
- `sub` / `ow` 操作后自动刷新列表显示
|
|
27
|
+
|
|
28
|
+
#### 文案统一
|
|
29
|
+
- 节点显示统一为「组在前,节点在后」的格式:`16 组, 89 节点`
|
|
30
|
+
- 统一「部分进程未终止」文案
|
|
31
|
+
- 优化状态显示对齐(`PID` 单独多 1 空格对齐)
|
|
32
|
+
|
|
33
|
+
#### 命令改进
|
|
34
|
+
- `ow` 无参数时等同于 `ow list`
|
|
35
|
+
- `sub` 无参数时等同于 `sub list`
|
|
36
|
+
- 帮助文档中移除 `list` 子命令展示(无参即 list)
|
|
37
|
+
|
|
38
|
+
## [1.0.3] - 2026-04-05
|
|
39
|
+
|
|
40
|
+
### 文档修复
|
|
41
|
+
|
|
42
|
+
- **数据目录路径**:修正 README 中的用户数据存储位置
|
|
43
|
+
- `~/Library/Application Support/mihomo-cli/` → `~/.mihomo-cli/`
|
|
44
|
+
- 修正目录结构:`runtime/` → `.runtime/`,删除不存在的 `config/` 子目录
|
|
45
|
+
- **CLI 帮助文档**:修正 `log`、`logs`、`kernel` 命令的语法和描述
|
|
46
|
+
- `logs` 命令明确 `0`=当前日志,`1+`=归档日志
|
|
47
|
+
- 补充 `-o` 选项说明
|
|
48
|
+
|
|
3
49
|
## [1.0.2] - 2026-04-05
|
|
4
50
|
|
|
5
51
|
### 修复
|
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- 🔍 **模糊匹配** - `sub use` / `sub web` 支持订阅名称模糊匹配
|
|
10
10
|
- 🚀 **进程管理** - 启动/停止/切换模式,自动清理残留进程
|
|
11
11
|
- 🔄 **双模式支持** - Mixed 模式和 TUN 透明代理模式
|
|
12
|
-
- 📊 **状态监控** -
|
|
12
|
+
- 📊 **状态监控** - 查看运行状态、内存占用
|
|
13
13
|
- 📝 **日志管理** - 实时日志 + 历史日志归档(自动轮转,保留7天)
|
|
14
14
|
- 🎨 **Web UI** - 一键打开 Web 控制面板 (zash/metacubexd/yacd)
|
|
15
15
|
- 🔄 **内核更新** - 自动检查更新,支持 GitHub 镜像加速
|
|
@@ -83,8 +83,8 @@ mihomo ui yacd # YACD
|
|
|
83
83
|
| `mihomo stop` | 停止代理 |
|
|
84
84
|
| `mihomo status` | 查看运行状态 |
|
|
85
85
|
| `mihomo log` | 实时查看日志 (`-o` 用系统编辑器打开) |
|
|
86
|
-
| `mihomo logs` |
|
|
87
|
-
| `mihomo logs <编号>` |
|
|
86
|
+
| `mihomo logs` | 列出所有日志(当前 + 历史归档) |
|
|
87
|
+
| `mihomo logs <编号>` | 查看指定日志(`0`=当前日志,`1+`=归档日志,支持 `-n N` 指定行数、`-o` 打开) |
|
|
88
88
|
|
|
89
89
|
### 订阅管理
|
|
90
90
|
|
|
@@ -160,23 +160,24 @@ mihomo kernel --no-mirror
|
|
|
160
160
|
用户数据存储位置(与安装位置分离,更新不丢失):
|
|
161
161
|
|
|
162
162
|
```
|
|
163
|
-
|
|
164
|
-
├──
|
|
165
|
-
|
|
166
|
-
│ ├──
|
|
167
|
-
│ └──
|
|
168
|
-
├──
|
|
169
|
-
│
|
|
170
|
-
│ └── config.yaml # mihomo 运行时配置
|
|
163
|
+
~/.mihomo-cli/
|
|
164
|
+
├── settings.json # 用户设置(订阅列表等)
|
|
165
|
+
├── subscriptions/
|
|
166
|
+
│ ├── cache.json # 订阅动态缓存(更新时间、流量、到期时间等)
|
|
167
|
+
│ └── <name>.yaml # 订阅原始配置
|
|
168
|
+
├── core/
|
|
169
|
+
│ └── mihomo # mihomo 内核二进制
|
|
171
170
|
├── logs/
|
|
172
|
-
│ ├── mihomo.log
|
|
171
|
+
│ ├── mihomo.log # 当前日志
|
|
173
172
|
│ └── mihomo.YYYY-MM-DD_HH-MM-SS.log # 归档日志
|
|
174
|
-
├──
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
└──
|
|
173
|
+
├── data/ # mihomo 运行数据(GeoIP 等,由内核自行管理)
|
|
174
|
+
└── .runtime/ # 运行时临时文件(stop 自动清除)
|
|
175
|
+
├── pid # 进程 PID
|
|
176
|
+
└── config.yaml # 运行时生成的配置
|
|
178
177
|
```
|
|
179
178
|
|
|
179
|
+
可通过环境变量 `MIHOMO_CLI_DIR` 自定义数据目录位置。
|
|
180
|
+
|
|
180
181
|
## Web UI
|
|
181
182
|
|
|
182
183
|
内置三个常用 Web UI:
|