@singbox-iac/cli 0.1.7 → 0.1.9
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-en.md +67 -1
- package/README.md +66 -1
- package/dist/cli/commands/apply.js +5 -1
- package/dist/cli/commands/apply.js.map +1 -1
- package/dist/cli/commands/author.d.ts +3 -0
- package/dist/cli/commands/author.js +35 -3
- package/dist/cli/commands/author.js.map +1 -1
- package/dist/cli/commands/build.js +11 -0
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/check.js +5 -1
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/doctor.js +12 -0
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/proxifier.js +60 -5
- package/dist/cli/commands/proxifier.js.map +1 -1
- package/dist/cli/commands/reload.js +5 -1
- package/dist/cli/commands/reload.js.map +1 -1
- package/dist/cli/commands/restart.d.ts +2 -0
- package/dist/cli/commands/restart.js +57 -0
- package/dist/cli/commands/restart.js.map +1 -0
- package/dist/cli/commands/rollback.js +6 -2
- package/dist/cli/commands/rollback.js.map +1 -1
- package/dist/cli/commands/run.js +5 -1
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/schedule.js +10 -2
- package/dist/cli/commands/schedule.js.map +1 -1
- package/dist/cli/commands/setup.js +90 -12
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/start.d.ts +2 -0
- package/dist/cli/commands/start.js +51 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/status.d.ts +2 -0
- package/dist/cli/commands/status.js +65 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/stop.d.ts +2 -0
- package/dist/cli/commands/stop.js +29 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/commands/update.js +8 -0
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/use.js +7 -0
- package/dist/cli/commands/use.js.map +1 -1
- package/dist/cli/commands/verify.js +15 -3
- package/dist/cli/commands/verify.js.map +1 -1
- package/dist/cli/index.js +17 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/config/schema.d.ts +125 -0
- package/dist/config/schema.js +49 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/domain/runtime-mode.d.ts +10 -0
- package/dist/domain/runtime-mode.js +2 -0
- package/dist/domain/runtime-mode.js.map +1 -0
- package/dist/modules/authoring/index.d.ts +2 -0
- package/dist/modules/authoring/index.js +19 -5
- package/dist/modules/authoring/index.js.map +1 -1
- package/dist/modules/compiler/index.js +32 -14
- package/dist/modules/compiler/index.js.map +1 -1
- package/dist/modules/desktop-runtime/index.d.ts +48 -0
- package/dist/modules/desktop-runtime/index.js +183 -0
- package/dist/modules/desktop-runtime/index.js.map +1 -0
- package/dist/modules/doctor/index.d.ts +5 -0
- package/dist/modules/doctor/index.js +37 -8
- package/dist/modules/doctor/index.js.map +1 -1
- package/dist/modules/manager/index.d.ts +1 -1
- package/dist/modules/manager/index.js +6 -28
- package/dist/modules/manager/index.js.map +1 -1
- package/dist/modules/natural-language/index.d.ts +5 -0
- package/dist/modules/natural-language/index.js +52 -9
- package/dist/modules/natural-language/index.js.map +1 -1
- package/dist/modules/preview/index.d.ts +4 -0
- package/dist/modules/preview/index.js +3 -0
- package/dist/modules/preview/index.js.map +1 -1
- package/dist/modules/proxifier/index.d.ts +15 -4
- package/dist/modules/proxifier/index.js +146 -40
- package/dist/modules/proxifier/index.js.map +1 -1
- package/dist/modules/runtime-dependencies/index.d.ts +22 -0
- package/dist/modules/runtime-dependencies/index.js +114 -0
- package/dist/modules/runtime-dependencies/index.js.map +1 -0
- package/dist/modules/runtime-mode/index.d.ts +23 -0
- package/dist/modules/runtime-mode/index.js +86 -0
- package/dist/modules/runtime-mode/index.js.map +1 -0
- package/dist/modules/schedule/index.d.ts +1 -0
- package/dist/modules/schedule/index.js +1 -1
- package/dist/modules/schedule/index.js.map +1 -1
- package/dist/modules/status/index.d.ts +57 -0
- package/dist/modules/status/index.js +295 -0
- package/dist/modules/status/index.js.map +1 -0
- package/dist/modules/update/index.js +5 -3
- package/dist/modules/update/index.js.map +1 -1
- package/dist/modules/verification/index.d.ts +1 -1
- package/dist/modules/verification/index.js +6 -12
- package/dist/modules/verification/index.js.map +1 -1
- package/docs/natural-language-authoring.md +36 -0
- package/docs/proxifier-onboarding.md +14 -0
- package/docs/runtime-on-macos.md +36 -0
- package/examples/builder.config.yaml +9 -0
- package/package.json +2 -1
package/README-en.md
CHANGED
|
@@ -140,6 +140,7 @@ The other common need is service-level routing:
|
|
|
140
140
|
- Sync local `.srs` rule sets automatically
|
|
141
141
|
- Publish validated configs to `~/.config/sing-box/config.json`
|
|
142
142
|
- Install `launchd` schedules for recurring updates on macOS
|
|
143
|
+
- Use an internal `RuntimeMode` planning layer to keep browser-proxy, process-proxy, and headless update defaults consistent
|
|
143
144
|
|
|
144
145
|
## Install
|
|
145
146
|
|
|
@@ -156,6 +157,8 @@ npm install -g @singbox-iac/cli
|
|
|
156
157
|
singbox-iac --help
|
|
157
158
|
```
|
|
158
159
|
|
|
160
|
+
After the first successful `go`, `setup`, or `doctor` run, the CLI persists the resolved `sing-box` and Chrome paths into your `builder.config.yaml`. Later `update` runs and the `launchd` schedule no longer depend on your current shell `PATH`.
|
|
161
|
+
|
|
159
162
|
## Quick Start
|
|
160
163
|
|
|
161
164
|
### Most users only need 3 commands
|
|
@@ -170,8 +173,33 @@ singbox-iac update
|
|
|
170
173
|
- `use`: change policy later with one sentence and re-apply it
|
|
171
174
|
- `update`: refresh the subscription and apply the latest config
|
|
172
175
|
|
|
176
|
+
For desktop runtime and troubleshooting, the most useful commands are:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
singbox-iac start
|
|
180
|
+
singbox-iac stop
|
|
181
|
+
singbox-iac restart
|
|
182
|
+
singbox-iac status
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
- `start`: start the desktop runtime as a dedicated macOS LaunchAgent
|
|
186
|
+
- `stop`: stop the desktop runtime and let `sing-box` release system proxy or TUN resources
|
|
187
|
+
- `restart`: restart the desktop runtime
|
|
188
|
+
- `status`: summarize live config, desktop runtime, system proxy/TUN state, schedule, and the latest transaction
|
|
189
|
+
|
|
190
|
+
For troubleshooting, start with:
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
singbox-iac status
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
It summarizes the current `sing-box` binary, live config, process state, listener activity,
|
|
197
|
+
schedule state, and the latest publish transaction.
|
|
198
|
+
|
|
173
199
|
Everything else can be treated as advanced commands for debugging or fine-grained control.
|
|
174
200
|
|
|
201
|
+
`RuntimeMode` is an internal concept; users do not need to choose one manually. Onboarding and `update` infer `browser-proxy`, `process-proxy`, or `headless-daemon` and use that to guide visible verification and runtime defaults. See [docs/runtime-modes.md](./docs/runtime-modes.md).
|
|
202
|
+
|
|
175
203
|
### One-step onboarding
|
|
176
204
|
|
|
177
205
|
```bash
|
|
@@ -213,6 +241,19 @@ The difference is simple:
|
|
|
213
241
|
singbox-iac run
|
|
214
242
|
```
|
|
215
243
|
|
|
244
|
+
If you want a more GUI-like always-on desktop runtime, prefer:
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
singbox-iac start
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
The default desktop runtime profiles are:
|
|
251
|
+
|
|
252
|
+
- `system-proxy`: keep the `mixed` inbound and let `sing-box` set / clean macOS system proxy automatically
|
|
253
|
+
- `tun`: emit a `tun` inbound with `auto_route`, closer to the global-capture behavior of GUI clients
|
|
254
|
+
|
|
255
|
+
If onboarding intent explicitly mentions `TUN`, `global proxy`, or similar wording, the desktop profile is inferred as `tun`. Otherwise the default profile is `system-proxy`.
|
|
256
|
+
|
|
216
257
|
Default local listeners:
|
|
217
258
|
|
|
218
259
|
- `127.0.0.1:39097` for browser/system proxy traffic
|
|
@@ -238,6 +279,11 @@ That command performs:
|
|
|
238
279
|
singbox-iac schedule install
|
|
239
280
|
```
|
|
240
281
|
|
|
282
|
+
Background updates and desktop runtime are separate concerns:
|
|
283
|
+
|
|
284
|
+
- `schedule install`: runs recurring `update`
|
|
285
|
+
- `start / stop / restart`: manage the local desktop runtime LaunchAgent
|
|
286
|
+
|
|
241
287
|
## Natural-Language Authoring
|
|
242
288
|
|
|
243
289
|
If you only want to change the routing sentence and apply it immediately, use the shorter command:
|
|
@@ -265,9 +311,17 @@ The authoring layer supports:
|
|
|
265
311
|
|
|
266
312
|
- deterministic local intent parsing by default
|
|
267
313
|
- optional local AI CLI integration
|
|
268
|
-
-
|
|
314
|
+
- `--strict` to reject vague requests instead of guessing
|
|
315
|
+
- `--diff` to inspect `Intent IR / rules / config` changes before writing
|
|
316
|
+
- `--emit-intent-ir` to print the structured intent layer directly
|
|
269
317
|
- closed-loop update after rule generation
|
|
270
318
|
|
|
319
|
+
Recommended before applying a production routing change:
|
|
320
|
+
|
|
321
|
+
```bash
|
|
322
|
+
singbox-iac use 'GitHub and developer sites go through Hong Kong, Gemini goes through Singapore' --strict --diff
|
|
323
|
+
```
|
|
324
|
+
|
|
271
325
|
## Proxifier Onboarding
|
|
272
326
|
|
|
273
327
|
If your AI IDE, language server, or desktop app does not respect the normal system proxy path, use the generated Proxifier helper directory:
|
|
@@ -284,6 +338,8 @@ It contains:
|
|
|
284
338
|
- `bundles/antigravity.txt`
|
|
285
339
|
- `bundles/cursor.txt`
|
|
286
340
|
- `bundles/developer-ai-cli.txt`
|
|
341
|
+
- `bundle-specs/antigravity.yaml`
|
|
342
|
+
- `bundle-specs/cursor.yaml`
|
|
287
343
|
- `all-processes.txt`
|
|
288
344
|
|
|
289
345
|
If you only want to regenerate the Proxifier helper files:
|
|
@@ -292,6 +348,14 @@ If you only want to regenerate the Proxifier helper files:
|
|
|
292
348
|
singbox-iac proxifier scaffold --prompt 'Antigravity process traffic goes through the US and Cursor also uses a dedicated ingress'
|
|
293
349
|
```
|
|
294
350
|
|
|
351
|
+
You can also inspect or export declarative bundle specs directly:
|
|
352
|
+
|
|
353
|
+
```bash
|
|
354
|
+
singbox-iac proxifier bundles
|
|
355
|
+
singbox-iac proxifier bundles show antigravity
|
|
356
|
+
singbox-iac proxifier bundles render antigravity
|
|
357
|
+
```
|
|
358
|
+
|
|
295
359
|
## How It Works With sing-box
|
|
296
360
|
|
|
297
361
|
This project does not replace the `sing-box` core binary. It generates and manages `sing-box` configuration.
|
|
@@ -339,6 +403,8 @@ singbox-iac verify
|
|
|
339
403
|
singbox-iac update
|
|
340
404
|
singbox-iac doctor
|
|
341
405
|
singbox-iac proxifier bundles
|
|
406
|
+
singbox-iac proxifier bundles show antigravity
|
|
407
|
+
singbox-iac proxifier bundles render antigravity
|
|
342
408
|
singbox-iac proxifier scaffold
|
|
343
409
|
singbox-iac schedule install
|
|
344
410
|
singbox-iac schedule remove
|
package/README.md
CHANGED
|
@@ -140,6 +140,7 @@ flowchart TD
|
|
|
140
140
|
- 自动同步本地 `.srs` 规则集
|
|
141
141
|
- 发布配置到 `~/.config/sing-box/config.json`
|
|
142
142
|
- 通过 `launchd` 做定时更新
|
|
143
|
+
- 内部 `RuntimeMode` 规划层,用于统一浏览器代理、进程级代理和无头更新路径的默认行为
|
|
143
144
|
|
|
144
145
|
## 安装
|
|
145
146
|
|
|
@@ -156,6 +157,8 @@ npm install -g @singbox-iac/cli
|
|
|
156
157
|
singbox-iac --help
|
|
157
158
|
```
|
|
158
159
|
|
|
160
|
+
第一次成功执行 `go`、`setup` 或 `doctor` 之后,CLI 会把解析到的 `sing-box` 和 Chrome 路径写回你的 `builder.config.yaml`。这样后续 `update` 和 `launchd schedule` 不会再依赖你当前 shell 的 `PATH`。
|
|
161
|
+
|
|
159
162
|
## 快速开始
|
|
160
163
|
|
|
161
164
|
### 大多数用户只需要 3 个命令
|
|
@@ -170,8 +173,32 @@ singbox-iac update
|
|
|
170
173
|
- `use`:以后需求变化时使用,一句话改策略并重新应用
|
|
171
174
|
- `update`:日常更新订阅并自动在运行中的 `sing-box` 上生效
|
|
172
175
|
|
|
176
|
+
桌面运行和排障最常用的是:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
singbox-iac start
|
|
180
|
+
singbox-iac stop
|
|
181
|
+
singbox-iac restart
|
|
182
|
+
singbox-iac status
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
- `start`:以 macOS 专用 LaunchAgent 启动桌面运行时
|
|
186
|
+
- `stop`:停止桌面运行时,并让 `sing-box` 释放系统代理或 TUN 资源
|
|
187
|
+
- `restart`:重新拉起桌面运行时
|
|
188
|
+
- `status`:汇总 live config、桌面运行时、系统代理 / TUN 状态、schedule 和最近一次事务
|
|
189
|
+
|
|
190
|
+
排障时优先用:
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
singbox-iac status
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
它会汇总当前 `sing-box` binary、live config、进程状态、监听端口、schedule 状态和最近一次发布事务。
|
|
197
|
+
|
|
173
198
|
其余命令都可以理解为高级命令,主要用于调试、排障或更细粒度控制。
|
|
174
199
|
|
|
200
|
+
`RuntimeMode` 是内部概念,不要求用户手动选择。当前 onboarding 和 `update` 会自动推断 `browser-proxy`、`process-proxy` 或 `headless-daemon`,并据此调整可见验证和运行时默认行为。详见 [docs/runtime-modes.md](./docs/runtime-modes.md)。
|
|
201
|
+
|
|
175
202
|
### 一步完成初始化
|
|
176
203
|
|
|
177
204
|
```bash
|
|
@@ -213,6 +240,19 @@ singbox-iac setup \
|
|
|
213
240
|
singbox-iac run
|
|
214
241
|
```
|
|
215
242
|
|
|
243
|
+
如果你想要更接近 GUI 的常驻体验,优先用:
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
singbox-iac start
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
当前默认桌面运行 profile 是:
|
|
250
|
+
|
|
251
|
+
- `system-proxy`:保留 `mixed` 入站,并让 `sing-box` 自动设置 / 清理 macOS 系统代理
|
|
252
|
+
- `tun`:生成 `tun` 入站并启用 `auto_route`,更接近 GUI 客户端的全局接管方式
|
|
253
|
+
|
|
254
|
+
如果自然语言里明确提到 `TUN`、`全局代理`、`全局模式` 等需求,onboarding 会把桌面 profile 推断成 `tun`。否则默认使用 `system-proxy`。
|
|
255
|
+
|
|
216
256
|
默认监听端口:
|
|
217
257
|
|
|
218
258
|
- `127.0.0.1:39097`:浏览器 / 系统代理流量
|
|
@@ -238,6 +278,11 @@ singbox-iac update
|
|
|
238
278
|
singbox-iac schedule install
|
|
239
279
|
```
|
|
240
280
|
|
|
281
|
+
定时更新和桌面运行是两条独立链路:
|
|
282
|
+
|
|
283
|
+
- `schedule install`:定时执行 `update`
|
|
284
|
+
- `start / stop / restart`:管理本地桌面运行的 `sing-box` LaunchAgent
|
|
285
|
+
|
|
241
286
|
## 自然语言规则编写
|
|
242
287
|
|
|
243
288
|
如果你只想“改一句话需求并立即生效”,推荐直接用更短的命令:
|
|
@@ -265,9 +310,17 @@ singbox-iac author \
|
|
|
265
310
|
|
|
266
311
|
- 默认使用本地确定性意图解析
|
|
267
312
|
- 可选接入本地 AI CLI
|
|
268
|
-
-
|
|
313
|
+
- 支持 `--strict`,遇到模糊表述直接失败
|
|
314
|
+
- 支持 `--diff`,先看 `Intent IR / 规则 / 配置` 变化再决定是否应用
|
|
315
|
+
- 支持 `--emit-intent-ir`,直接输出结构化意图层
|
|
269
316
|
- 生成规则后直接闭环 update
|
|
270
317
|
|
|
318
|
+
推荐在正式改策略前先看一次 diff:
|
|
319
|
+
|
|
320
|
+
```bash
|
|
321
|
+
singbox-iac use 'GitHub 这类开发类都走香港,Gemini 走新加坡' --strict --diff
|
|
322
|
+
```
|
|
323
|
+
|
|
271
324
|
## Proxifier 上手
|
|
272
325
|
|
|
273
326
|
如果你的 AI IDE、language server 或桌面应用不走系统代理,可以直接使用自动生成的 Proxifier 辅助目录:
|
|
@@ -284,6 +337,8 @@ singbox-iac author \
|
|
|
284
337
|
- `bundles/antigravity.txt`
|
|
285
338
|
- `bundles/cursor.txt`
|
|
286
339
|
- `bundles/developer-ai-cli.txt`
|
|
340
|
+
- `bundle-specs/antigravity.yaml`
|
|
341
|
+
- `bundle-specs/cursor.yaml`
|
|
287
342
|
- `all-processes.txt`
|
|
288
343
|
|
|
289
344
|
如果你只想重新生成这部分,不需要重跑全部 onboarding:
|
|
@@ -292,6 +347,14 @@ singbox-iac author \
|
|
|
292
347
|
singbox-iac proxifier scaffold --prompt 'Antigravity 进程级走美国,Cursor 也走独立入口'
|
|
293
348
|
```
|
|
294
349
|
|
|
350
|
+
也可以直接查看或导出声明式 bundle:
|
|
351
|
+
|
|
352
|
+
```bash
|
|
353
|
+
singbox-iac proxifier bundles
|
|
354
|
+
singbox-iac proxifier bundles show antigravity
|
|
355
|
+
singbox-iac proxifier bundles render antigravity
|
|
356
|
+
```
|
|
357
|
+
|
|
295
358
|
## 它和 sing-box 是怎么配合的
|
|
296
359
|
|
|
297
360
|
它不会替代 `sing-box` 内核本身,而是负责生成和维护 `sing-box` 配置。
|
|
@@ -339,6 +402,8 @@ singbox-iac verify
|
|
|
339
402
|
singbox-iac update
|
|
340
403
|
singbox-iac doctor
|
|
341
404
|
singbox-iac proxifier bundles
|
|
405
|
+
singbox-iac proxifier bundles show antigravity
|
|
406
|
+
singbox-iac proxifier bundles render antigravity
|
|
342
407
|
singbox-iac proxifier scaffold
|
|
343
408
|
singbox-iac schedule install
|
|
344
409
|
singbox-iac schedule remove
|
|
@@ -31,7 +31,11 @@ export function registerApplyCommand(program) {
|
|
|
31
31
|
stagingPath,
|
|
32
32
|
livePath,
|
|
33
33
|
...(backupPath ? { backupPath } : {}),
|
|
34
|
-
...(options.singBoxBin
|
|
34
|
+
...(options.singBoxBin
|
|
35
|
+
? { singBoxBinary: options.singBoxBin }
|
|
36
|
+
: builderConfig.runtime.dependencies.singBoxBinary
|
|
37
|
+
? { singBoxBinary: builderConfig.runtime.dependencies.singBoxBinary }
|
|
38
|
+
: {}),
|
|
35
39
|
...(options.reload !== undefined ? { reload: options.reload } : {}),
|
|
36
40
|
...(builderConfig?.runtime.reload ? { runtime: builderConfig.runtime.reload } : {}),
|
|
37
41
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/cli/commands/apply.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,mDAAmD,CAAC;SAChE,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,oBAAoB,EAAE,6BAA6B,CAAC;SAC3D,MAAM,CAAC,oBAAoB,EAAE,2BAA2B,CAAC;SACzD,MAAM,CAAC,sBAAsB,EAAE,6BAA6B,CAAC;SAC7D,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;SAC1D,MAAM,CAAC,UAAU,EAAE,+BAA+B,CAAC;SACnD,MAAM,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC7C,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC;QACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC;QACpE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC;QAE1E,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,6FAA6F,CAC9F,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,aAAa;YAC/B,CAAC,CAAC,MAAM,oBAAoB,CAAC;gBACzB,MAAM,EAAE,aAAa;gBACrB,aAAa,EAAE,WAAW;gBAC1B,QAAQ;gBACR,UAAU,EAAE,UAAU,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU;gBACzD,mBAAmB,EAAE,EAAE;gBACvB,KAAK,EAAE,KAAK,IAAI,EAAE;oBAChB,MAAM,WAAW,CAAC;wBAChB,WAAW;wBACX,QAAQ;wBACR,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/cli/commands/apply.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,mDAAmD,CAAC;SAChE,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,oBAAoB,EAAE,6BAA6B,CAAC;SAC3D,MAAM,CAAC,oBAAoB,EAAE,2BAA2B,CAAC;SACzD,MAAM,CAAC,sBAAsB,EAAE,6BAA6B,CAAC;SAC7D,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;SAC1D,MAAM,CAAC,UAAU,EAAE,+BAA+B,CAAC;SACnD,MAAM,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC7C,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC;QACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC;QACpE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC;QAE1E,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,6FAA6F,CAC9F,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,aAAa;YAC/B,CAAC,CAAC,MAAM,oBAAoB,CAAC;gBACzB,MAAM,EAAE,aAAa;gBACrB,aAAa,EAAE,WAAW;gBAC1B,QAAQ;gBACR,UAAU,EAAE,UAAU,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU;gBACzD,mBAAmB,EAAE,EAAE;gBACvB,KAAK,EAAE,KAAK,IAAI,EAAE;oBAChB,MAAM,WAAW,CAAC;wBAChB,WAAW;wBACX,QAAQ;wBACR,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrC,GAAG,CAAC,OAAO,CAAC,UAAU;4BACpB,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE;4BACvC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa;gCAChD,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;gCACrE,CAAC,CAAC,EAAE,CAAC;wBACT,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnE,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACpF,CAAC,CAAC;gBACL,CAAC;aACF,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4BAA4B,WAAW,WAAW,QAAQ,KACxD,UAAU,CAAC,CAAC,CAAC,WAAW,UAAU,IAAI,CAAC,CAAC,CAAC,EAC3C,GAAG,WAAW,CAAC,CAAC,CAAC,gBAAgB,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7D,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -12,6 +12,9 @@ interface AuthorCommandOptions {
|
|
|
12
12
|
readonly subscriptionUrl?: string;
|
|
13
13
|
readonly subscriptionFile?: string;
|
|
14
14
|
readonly preview?: boolean;
|
|
15
|
+
readonly diff?: boolean;
|
|
16
|
+
readonly emitIntentIr?: boolean;
|
|
17
|
+
readonly strict?: boolean;
|
|
15
18
|
readonly skipBuild?: boolean;
|
|
16
19
|
readonly update?: boolean;
|
|
17
20
|
readonly skipVerify?: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { generateAuthoringPlan } from "../../modules/authoring/index.js";
|
|
3
|
-
import { buildConfigArtifact } from "../../modules/build/index.js";
|
|
3
|
+
import { buildConfigArtifact, resolveEffectiveIntent } from "../../modules/build/index.js";
|
|
4
4
|
import { applyPlanToBuilderConfig, updateBuilderAuthoring, writeGeneratedRules, } from "../../modules/natural-language/index.js";
|
|
5
5
|
import { generateAuthoringPreview } from "../../modules/preview/index.js";
|
|
6
6
|
import { installLaunchdSchedule } from "../../modules/schedule/index.js";
|
|
@@ -20,6 +20,9 @@ export function registerAuthorCommand(program) {
|
|
|
20
20
|
.option("--subscription-url <url>", "override subscription URL when building")
|
|
21
21
|
.option("--subscription-file <path>", "use a local subscription file instead of fetching")
|
|
22
22
|
.option("--preview", "print rules/config/staging diffs without writing any files")
|
|
23
|
+
.option("--diff", "print intent/rules/config diffs without writing any files")
|
|
24
|
+
.option("--emit-intent-ir", "print the generated Intent IR and exit without writing files")
|
|
25
|
+
.option("--strict", "reject ambiguous natural-language requests instead of guessing")
|
|
23
26
|
.option("--skip-build", "write rules only and skip config generation")
|
|
24
27
|
.option("--update", "after writing rules, run build + verify + publish")
|
|
25
28
|
.option("--skip-verify", "when used with --update, skip runtime verification before publish")
|
|
@@ -56,6 +59,7 @@ export async function runAuthorFlow(options) {
|
|
|
56
59
|
...(options.authorTimeoutMs ? { timeoutMs: Number.parseInt(options.authorTimeoutMs, 10) } : {}),
|
|
57
60
|
...(options.execCommand ? { execCommand: options.execCommand } : {}),
|
|
58
61
|
...(options.execArg.length > 0 ? { execArgs: options.execArg } : {}),
|
|
62
|
+
...(options.strict ? { strict: true } : {}),
|
|
59
63
|
});
|
|
60
64
|
const plan = planResult.plan;
|
|
61
65
|
const rulesPath = options.rulesOut
|
|
@@ -65,12 +69,19 @@ export async function runAuthorFlow(options) {
|
|
|
65
69
|
rulesPath,
|
|
66
70
|
plan,
|
|
67
71
|
});
|
|
68
|
-
if (options.
|
|
72
|
+
if (options.emitIntentIr) {
|
|
73
|
+
process.stdout.write(`${JSON.stringify(planResult.intent, null, 2)}\n`);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
if (options.preview || options.diff) {
|
|
77
|
+
const currentIntent = await resolveEffectiveIntent(builderConfig);
|
|
69
78
|
const preview = await generateAuthoringPreview({
|
|
70
79
|
configPath,
|
|
71
80
|
config: builderConfig,
|
|
72
81
|
plan,
|
|
73
82
|
rulesPath,
|
|
83
|
+
currentIntent,
|
|
84
|
+
proposedIntent: planResult.intent,
|
|
74
85
|
...(options.subscriptionFile ? { subscriptionFile: options.subscriptionFile } : {}),
|
|
75
86
|
...(options.subscriptionUrl ? { subscriptionUrl: options.subscriptionUrl } : {}),
|
|
76
87
|
buildStaging: !options.skipBuild,
|
|
@@ -82,8 +93,12 @@ export async function runAuthorFlow(options) {
|
|
|
82
93
|
`Provider used: ${planResult.providerUsed}`,
|
|
83
94
|
`Templates: ${plan.templateIds.length > 0 ? plan.templateIds.join(", ") : "(none)"}`,
|
|
84
95
|
`Generated rules: ${plan.beforeBuiltins.length + plan.afterBuiltins.length}`,
|
|
85
|
-
"Preview mode: no files were written
|
|
96
|
+
`${options.diff ? "Diff" : "Preview"} mode: no files were written.`,
|
|
86
97
|
];
|
|
98
|
+
if (planResult.ambiguities.length > 0) {
|
|
99
|
+
lines.push(`Ambiguities detected: ${planResult.ambiguities.length}`);
|
|
100
|
+
lines.push(...planResult.ambiguities.map((ambiguity) => `- ${ambiguity}`));
|
|
101
|
+
}
|
|
87
102
|
if (plan.notes.length > 0) {
|
|
88
103
|
lines.push(`Notes: ${plan.notes.length}`);
|
|
89
104
|
lines.push(...plan.notes.map((note) => `- ${note}`));
|
|
@@ -95,6 +110,9 @@ export async function runAuthorFlow(options) {
|
|
|
95
110
|
lines.push("Live update: requested, but skipped in preview mode.");
|
|
96
111
|
}
|
|
97
112
|
lines.push("");
|
|
113
|
+
lines.push("Intent IR diff:");
|
|
114
|
+
lines.push(preview.intentDiff.diff);
|
|
115
|
+
lines.push("");
|
|
98
116
|
lines.push("Rules diff:");
|
|
99
117
|
lines.push(preview.rulesDiff.diff);
|
|
100
118
|
lines.push("");
|
|
@@ -127,6 +145,10 @@ export async function runAuthorFlow(options) {
|
|
|
127
145
|
`Templates: ${plan.templateIds.length > 0 ? plan.templateIds.join(", ") : "(none)"}`,
|
|
128
146
|
`Generated rules: ${plan.beforeBuiltins.length + plan.afterBuiltins.length}`,
|
|
129
147
|
];
|
|
148
|
+
if (planResult.ambiguities.length > 0) {
|
|
149
|
+
lines.push(`Ambiguities detected: ${planResult.ambiguities.length}`);
|
|
150
|
+
lines.push(...planResult.ambiguities.map((ambiguity) => `- ${ambiguity}`));
|
|
151
|
+
}
|
|
130
152
|
if (plan.notes.length > 0) {
|
|
131
153
|
lines.push(`Notes: ${plan.notes.length}`);
|
|
132
154
|
lines.push(...plan.notes.map((note) => `- ${note}`));
|
|
@@ -140,6 +162,16 @@ export async function runAuthorFlow(options) {
|
|
|
140
162
|
label: options.label,
|
|
141
163
|
...(options.launchAgentsDir ? { launchAgentsDir: resolvePath(options.launchAgentsDir) } : {}),
|
|
142
164
|
...(options.logsDir ? { logsDir: resolvePath(options.logsDir) } : {}),
|
|
165
|
+
...(options.singBoxBin
|
|
166
|
+
? { singBoxBinary: resolvePath(options.singBoxBin) }
|
|
167
|
+
: effectiveConfig.runtime.dependencies.singBoxBinary
|
|
168
|
+
? { singBoxBinary: effectiveConfig.runtime.dependencies.singBoxBinary }
|
|
169
|
+
: {}),
|
|
170
|
+
...(options.chromeBin
|
|
171
|
+
? { chromeBinary: resolvePath(options.chromeBin) }
|
|
172
|
+
: effectiveConfig.runtime.dependencies.chromeBinary
|
|
173
|
+
? { chromeBinary: effectiveConfig.runtime.dependencies.chromeBinary }
|
|
174
|
+
: {}),
|
|
143
175
|
force: options.forceSchedule === true,
|
|
144
176
|
load: options.load !== false,
|
|
145
177
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"author.js","sourceRoot":"","sources":["../../../src/cli/commands/author.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"author.js","sourceRoot":"","sources":["../../../src/cli/commands/author.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { homedir } from "node:os";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { buildConfigArtifact } from "../../modules/build/index.js";
|
|
4
|
+
import { defaultRuntimeLaunchAgentLabel } from "../../modules/desktop-runtime/index.js";
|
|
4
5
|
import { resolveBuilderConfig } from "../command-helpers.js";
|
|
5
6
|
export function registerBuildCommand(program) {
|
|
6
7
|
program
|
|
@@ -53,6 +54,16 @@ async function resolveBuildConfig(options) {
|
|
|
53
54
|
processName: "sing-box",
|
|
54
55
|
signal: "HUP",
|
|
55
56
|
},
|
|
57
|
+
dependencies: {},
|
|
58
|
+
desktop: {
|
|
59
|
+
profile: "system-proxy",
|
|
60
|
+
launchAgentLabel: defaultRuntimeLaunchAgentLabel,
|
|
61
|
+
tun: {
|
|
62
|
+
autoRoute: true,
|
|
63
|
+
strictRoute: false,
|
|
64
|
+
addresses: ["172.19.0.1/30", "fdfe:dcba:9876::1/126"],
|
|
65
|
+
},
|
|
66
|
+
},
|
|
56
67
|
},
|
|
57
68
|
listeners: {
|
|
58
69
|
mixed: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,11 @@ export function registerCheckCommand(program) {
|
|
|
15
15
|
}
|
|
16
16
|
const result = await checkConfig({
|
|
17
17
|
configPath,
|
|
18
|
-
...(options.singBoxBin
|
|
18
|
+
...(options.singBoxBin
|
|
19
|
+
? { singBoxBinary: options.singBoxBin }
|
|
20
|
+
: builderConfig?.runtime.dependencies.singBoxBinary
|
|
21
|
+
? { singBoxBinary: builderConfig.runtime.dependencies.singBoxBinary }
|
|
22
|
+
: {}),
|
|
19
23
|
});
|
|
20
24
|
process.stdout.write(`OK: ${configPath}\nBinary: ${result.binaryPath}\n`);
|
|
21
25
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,oBAAoB,EAAE,iCAAiC,CAAC;SAC/D,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC7C,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;YAC/B,UAAU;YACV,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,oBAAoB,EAAE,iCAAiC,CAAC;SAC/D,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC7C,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;YAC/B,UAAU;YACV,GAAG,CAAC,OAAO,CAAC,UAAU;gBACpB,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE;gBACvC,CAAC,CAAC,aAAa,EAAE,OAAO,CAAC,YAAY,CAAC,aAAa;oBACjD,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;oBACrE,CAAC,CAAC,EAAE,CAAC;SACV,CAAC,CAAC;QAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,UAAU,aAAa,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { runDoctor } from "../../modules/doctor/index.js";
|
|
3
|
+
import { persistRuntimeDependencies } from "../../modules/runtime-dependencies/index.js";
|
|
3
4
|
import { findDefaultConfigPath, resolveBuilderConfig } from "../command-helpers.js";
|
|
4
5
|
export function registerDoctorCommand(program) {
|
|
5
6
|
program
|
|
@@ -23,6 +24,17 @@ export function registerDoctorCommand(program) {
|
|
|
23
24
|
? { launchAgentsDir: pathResolve(options.launchAgentsDir) }
|
|
24
25
|
: {}),
|
|
25
26
|
});
|
|
27
|
+
if (config && configPath) {
|
|
28
|
+
await persistRuntimeDependencies({
|
|
29
|
+
configPath,
|
|
30
|
+
...(report.resolvedDependencies.singBox
|
|
31
|
+
? { singBox: report.resolvedDependencies.singBox }
|
|
32
|
+
: {}),
|
|
33
|
+
...(report.resolvedDependencies.chrome
|
|
34
|
+
? { chrome: report.resolvedDependencies.chrome }
|
|
35
|
+
: {}),
|
|
36
|
+
});
|
|
37
|
+
}
|
|
26
38
|
process.stdout.write(`${report.checks.map((check) => `[${check.status}] ${check.name}: ${check.details}`).join("\n")}\n`);
|
|
27
39
|
if (report.checks.some((check) => check.status === "FAIL")) {
|
|
28
40
|
throw new Error("Doctor found blocking failures.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,gDAAgD,CAAC;SAC7D,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;SAC1D,MAAM,CAAC,qBAAqB,EAAE,uBAAuB,CAAC;SACtD,MAAM,CAAC,4BAA4B,EAAE,6CAA6C,CAAC;SACnF,MAAM,CAAC,KAAK,EAAE,OAA6B,EAAE,EAAE;QAC9C,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7C,oBAAoB,CAAC,OAAO,CAAC;YAC7B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE;SACxF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;YAC7B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,OAAO,CAAC,eAAe;gBACzB,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACpG,CAAC;QAEF,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AASD,SAAS,WAAW,CAAC,QAAgB;IACnC,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;AACrF,CAAC"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { mkdir, writeFile } from "node:fs/promises";
|
|
1
2
|
import path from "node:path";
|
|
2
3
|
import { loadConfig } from "../../config/load-config.js";
|
|
3
|
-
import { listProxifierBundles, selectProxifierBundlesFromPrompt, writeProxifierScaffold, } from "../../modules/proxifier/index.js";
|
|
4
|
+
import { getProxifierBundle, listProxifierBundles, renderProxifierBundleSpec, selectProxifierBundlesFromPrompt, writeProxifierScaffold, } from "../../modules/proxifier/index.js";
|
|
4
5
|
import { getDefaultConfigDir, getDefaultConfigPath } from "../command-helpers.js";
|
|
5
6
|
export function registerProxifierCommand(program) {
|
|
6
7
|
const proxifier = program
|
|
@@ -8,10 +9,59 @@ export function registerProxifierCommand(program) {
|
|
|
8
9
|
.description("Generate Proxifier helper files for process-aware routing.");
|
|
9
10
|
proxifier
|
|
10
11
|
.command("bundles")
|
|
11
|
-
.description("List supported Proxifier
|
|
12
|
-
.
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
.description("List supported Proxifier bundles, show one bundle, or render one bundle spec.")
|
|
13
|
+
.argument("[operation]", "show or render")
|
|
14
|
+
.argument("[id]", "bundle id")
|
|
15
|
+
.option("--out <path>", "write the rendered bundle spec to a file")
|
|
16
|
+
.action(async (operation, id, options) => {
|
|
17
|
+
if (!operation) {
|
|
18
|
+
const lines = listProxifierBundles().map((bundle) => `${bundle.id}: ${bundle.name}\n- ${bundle.description}\n- inbound: ${bundle.targetInbound}, outbound: ${bundle.targetOutboundGroup}`);
|
|
19
|
+
process.stdout.write(`${lines.join("\n")}\n`);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (!["show", "render"].includes(operation)) {
|
|
23
|
+
throw new Error(`Unknown proxifier bundle operation: ${operation}`);
|
|
24
|
+
}
|
|
25
|
+
if (!id) {
|
|
26
|
+
throw new Error(`proxifier bundles ${operation} requires a bundle id.`);
|
|
27
|
+
}
|
|
28
|
+
const bundle = getProxifierBundle(id);
|
|
29
|
+
if (!bundle) {
|
|
30
|
+
throw new Error(`Unknown Proxifier bundle: ${id}`);
|
|
31
|
+
}
|
|
32
|
+
if (operation === "show") {
|
|
33
|
+
const lines = [
|
|
34
|
+
`ID: ${bundle.id}`,
|
|
35
|
+
`Name: ${bundle.name}`,
|
|
36
|
+
`Description: ${bundle.description}`,
|
|
37
|
+
`Inbound: ${bundle.targetInbound}`,
|
|
38
|
+
`Outbound: ${bundle.targetOutboundGroup}`,
|
|
39
|
+
"Matchers:",
|
|
40
|
+
...bundle.processMatchers.map((matcher) => {
|
|
41
|
+
if (matcher.processName) {
|
|
42
|
+
return `- processName: ${matcher.processName}`;
|
|
43
|
+
}
|
|
44
|
+
if (matcher.bundleId) {
|
|
45
|
+
return `- bundleId: ${matcher.bundleId}`;
|
|
46
|
+
}
|
|
47
|
+
return `- pathRegex: ${matcher.pathRegex ?? ""}`;
|
|
48
|
+
}),
|
|
49
|
+
];
|
|
50
|
+
if (bundle.notes && bundle.notes.length > 0) {
|
|
51
|
+
lines.push("Notes:");
|
|
52
|
+
lines.push(...bundle.notes.map((note) => `- ${note}`));
|
|
53
|
+
}
|
|
54
|
+
process.stdout.write(`${lines.join("\n")}\n`);
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const rendered = renderProxifierBundleSpec(bundle);
|
|
58
|
+
if (options?.out) {
|
|
59
|
+
const outputPath = resolvePath(options.out);
|
|
60
|
+
await writeBundleSpec(outputPath, rendered);
|
|
61
|
+
process.stdout.write(`Bundle spec: ${outputPath}\n`);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
process.stdout.write(rendered);
|
|
15
65
|
});
|
|
16
66
|
proxifier
|
|
17
67
|
.command("scaffold")
|
|
@@ -45,6 +95,7 @@ export function registerProxifierCommand(program) {
|
|
|
45
95
|
}
|
|
46
96
|
if (result.bundles.length > 0) {
|
|
47
97
|
lines.push(`Bundles: ${result.bundles.map((bundle) => bundle.id).join(", ")}`);
|
|
98
|
+
lines.push(`Bundle specs: ${result.bundleSpecPaths.join(", ")}`);
|
|
48
99
|
}
|
|
49
100
|
else {
|
|
50
101
|
lines.push("Bundles: none");
|
|
@@ -58,4 +109,8 @@ function collectOption(value, previous) {
|
|
|
58
109
|
function resolvePath(filePath) {
|
|
59
110
|
return filePath.startsWith("/") ? filePath : path.resolve(process.cwd(), filePath);
|
|
60
111
|
}
|
|
112
|
+
async function writeBundleSpec(filePath, rendered) {
|
|
113
|
+
await mkdir(path.dirname(filePath), { recursive: true });
|
|
114
|
+
await writeFile(filePath, rendered, "utf8");
|
|
115
|
+
}
|
|
61
116
|
//# sourceMappingURL=proxifier.js.map
|