cbs-4px-merchant-cli 0.0.1
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.4px.md +90 -0
- package/README.cainiao.md +90 -0
- package/README.md +90 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +247 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/auth.d.ts +3 -0
- package/dist/commands/auth.js +39 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/claim.d.ts +10 -0
- package/dist/commands/claim.js +69 -0
- package/dist/commands/claim.js.map +1 -0
- package/dist/commands/config.d.ts +3 -0
- package/dist/commands/config.js +129 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/error-handler.d.ts +5 -0
- package/dist/commands/error-handler.js +57 -0
- package/dist/commands/error-handler.js.map +1 -0
- package/dist/commands/label.d.ts +2 -0
- package/dist/commands/label.js +54 -0
- package/dist/commands/label.js.map +1 -0
- package/dist/commands/order.d.ts +2 -0
- package/dist/commands/order.js +91 -0
- package/dist/commands/order.js.map +1 -0
- package/dist/commands/product.d.ts +10 -0
- package/dist/commands/product.js +74 -0
- package/dist/commands/product.js.map +1 -0
- package/dist/commands/track.d.ts +2 -0
- package/dist/commands/track.js +54 -0
- package/dist/commands/track.js.map +1 -0
- package/dist/commands/update.d.ts +27 -0
- package/dist/commands/update.js +304 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/errors.d.ts +31 -0
- package/dist/errors.js +58 -0
- package/dist/errors.js.map +1 -0
- package/dist/generated/site.d.ts +7 -0
- package/dist/generated/site.js +9 -0
- package/dist/generated/site.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/services/api-client.d.ts +20 -0
- package/dist/services/api-client.js +141 -0
- package/dist/services/api-client.js.map +1 -0
- package/dist/services/config-manager.d.ts +10 -0
- package/dist/services/config-manager.js +49 -0
- package/dist/services/config-manager.js.map +1 -0
- package/dist/services/install-detector.d.ts +17 -0
- package/dist/services/install-detector.js +54 -0
- package/dist/services/install-detector.js.map +1 -0
- package/dist/services/update-checker.d.ts +56 -0
- package/dist/services/update-checker.js +242 -0
- package/dist/services/update-checker.js.map +1 -0
- package/dist/types/index.d.ts +153 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/logger.d.ts +15 -0
- package/dist/utils/logger.js +47 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/output.d.ts +13 -0
- package/dist/utils/output.js +19 -0
- package/dist/utils/output.js.map +1 -0
- package/package.json +54 -0
- package/scripts/postinstall.js +184 -0
- package/site-meta.json +9 -0
- package/skill/SKILL.md +167 -0
- package/skill/reference/auth.md +62 -0
- package/skill/reference/claim.md +66 -0
- package/skill/reference/config.md +71 -0
- package/skill/reference/index.md +51 -0
- package/skill/reference/label.md +51 -0
- package/skill/reference/order.md +68 -0
- package/skill/reference/product.md +70 -0
- package/skill/reference/track.md +57 -0
- package/skill/reference/update.md +102 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# `fmc` command reference
|
|
2
|
+
|
|
3
|
+
> BPortal Merchant CLI — 跨境物流商家命令行工具。
|
|
4
|
+
|
|
5
|
+
Command **details** are in sibling `<group>.md` files in this directory.
|
|
6
|
+
|
|
7
|
+
## Quick index
|
|
8
|
+
|
|
9
|
+
| Command | Description | Detail |
|
|
10
|
+
| --- | --- | --- |
|
|
11
|
+
| `fmc auth login` | 配置 API Key | [auth.md](auth.md) |
|
|
12
|
+
| `fmc auth status` | 查看当前认证状态 | [auth.md](auth.md) |
|
|
13
|
+
| `fmc config set` | 设置配置项 | [config.md](config.md) |
|
|
14
|
+
| `fmc config list` | 查看当前配置 | [config.md](config.md) |
|
|
15
|
+
| `fmc config export-schema` | 导出命令的 JSON tool schema | [config.md](config.md) |
|
|
16
|
+
| `fmc track get` | 查询物流轨迹 | [track.md](track.md) |
|
|
17
|
+
| `fmc label get` | 获取面单打印信息(PDF 链接) | [label.md](label.md) |
|
|
18
|
+
| `fmc order get` | 获取订单详情 | [order.md](order.md) |
|
|
19
|
+
| `fmc product recommend` | 获取推荐物流产品及报价 | [product.md](product.md) |
|
|
20
|
+
| `fmc claim list` | 查询理赔列表 | [claim.md](claim.md) |
|
|
21
|
+
| `fmc update` | 升级 CLI 及对应 skill 到最新版本 | [update.md](update.md) |
|
|
22
|
+
|
|
23
|
+
## By group
|
|
24
|
+
|
|
25
|
+
| Group | Commands | Reference |
|
|
26
|
+
| --- | --- | --- |
|
|
27
|
+
| `auth` | `login`, `status` | [auth.md](auth.md) |
|
|
28
|
+
| `config` | `set`, `list`, `export-schema` | [config.md](config.md) |
|
|
29
|
+
| `track` | `get` | [track.md](track.md) |
|
|
30
|
+
| `label` | `get` | [label.md](label.md) |
|
|
31
|
+
| `order` | `get` | [order.md](order.md) |
|
|
32
|
+
| `product` | `recommend` | [product.md](product.md) |
|
|
33
|
+
| `claim` | `list` | [claim.md](claim.md) |
|
|
34
|
+
| `update` | (no subcommand) | [update.md](update.md) |
|
|
35
|
+
|
|
36
|
+
## Global flags
|
|
37
|
+
|
|
38
|
+
| Flag | Description |
|
|
39
|
+
| --- | --- |
|
|
40
|
+
| `--output <format>` | 输出格式: text \| json(TTY 默认 text,管道默认 json) |
|
|
41
|
+
| `--verbose` | 打印请求详情(URL、Headers、状态码) |
|
|
42
|
+
| `--dry-run` | 仅打印请求信息,不实际发送 |
|
|
43
|
+
| `--help` | 查看帮助 |
|
|
44
|
+
| `--version` | 打印版本号 |
|
|
45
|
+
|
|
46
|
+
## Notes
|
|
47
|
+
|
|
48
|
+
- `track get` 命令无需认证即可使用。
|
|
49
|
+
- `label get`、`order get`、`product recommend`、`claim list` 命令需要先配置 API Key:`fmc auth login --api-key <SK_xxx>`。
|
|
50
|
+
- 配置文件位于 `~/.bportal/config.json`;升级状态缓存位于 `~/.bportal/update-state.json`。
|
|
51
|
+
- 当检测到新版本可用时,stderr 会输出 `{"_notice":{"type":"update",...}}`;设置环境变量 `BPORTAL_NO_UPDATE_NOTIFIER=1` 可关闭。
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# `fmc label` command
|
|
2
|
+
|
|
3
|
+
## Command details
|
|
4
|
+
|
|
5
|
+
### `fmc label get`
|
|
6
|
+
|
|
7
|
+
| Field | Value |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| **Name** | `label get` |
|
|
10
|
+
| **Description** | 获取面单打印信息(PDF 链接) |
|
|
11
|
+
| **Usage** | `fmc label get <orderNo> [flags]` |
|
|
12
|
+
|
|
13
|
+
需要 API Key 认证。
|
|
14
|
+
|
|
15
|
+
#### Options
|
|
16
|
+
|
|
17
|
+
| Flag | Type | Required | Description |
|
|
18
|
+
| --- | --- | --- | --- |
|
|
19
|
+
| `<orderNo>` | string | yes | 运单号 |
|
|
20
|
+
|
|
21
|
+
支持全局选项: `--output`, `--verbose`, `--dry-run`
|
|
22
|
+
|
|
23
|
+
#### Examples
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
fmc label get FPX12345678
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
fmc label get FPX12345678 --output json
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
fmc label get FPX12345678 --dry-run
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
#### Output (text mode)
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
标签打印信息
|
|
41
|
+
──────────────────────────────────────────────────
|
|
42
|
+
PDF 链接 https://xxx.com/label.pdf
|
|
43
|
+
|
|
44
|
+
订单基础信息
|
|
45
|
+
运单号 FPX12345678
|
|
46
|
+
FPX单号 FPX12345678
|
|
47
|
+
产品代码 STANDARD
|
|
48
|
+
起运国 CN
|
|
49
|
+
目的国 US
|
|
50
|
+
状态 已签收
|
|
51
|
+
```
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# `fmc order` command
|
|
2
|
+
|
|
3
|
+
## Command details
|
|
4
|
+
|
|
5
|
+
### `fmc order get`
|
|
6
|
+
|
|
7
|
+
| Field | Value |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| **Name** | `order get` |
|
|
10
|
+
| **Description** | 获取订单详情(含收件人信息、申报信息、费用明细) |
|
|
11
|
+
| **Usage** | `fmc order get <orderNo> [flags]` |
|
|
12
|
+
|
|
13
|
+
需要 API Key 认证。
|
|
14
|
+
|
|
15
|
+
#### Options
|
|
16
|
+
|
|
17
|
+
| Flag | Type | Required | Description |
|
|
18
|
+
| --- | --- | --- | --- |
|
|
19
|
+
| `<orderNo>` | string | yes | 运单号 |
|
|
20
|
+
|
|
21
|
+
支持全局选项: `--output`, `--verbose`, `--dry-run`
|
|
22
|
+
|
|
23
|
+
#### Examples
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
fmc order get FPX12345678
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
fmc order get FPX12345678 --output json
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
fmc order get FPX12345678 --verbose
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
#### Output (text mode)
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
订单详情
|
|
41
|
+
──────────────────────────────────────────────────
|
|
42
|
+
基础信息
|
|
43
|
+
运单号 FPX12345678
|
|
44
|
+
FPX单号 FPX12345678
|
|
45
|
+
产品代码 STANDARD
|
|
46
|
+
起运国 CN
|
|
47
|
+
目的国 US
|
|
48
|
+
状态 已签收
|
|
49
|
+
实重(g) 500
|
|
50
|
+
计费重(g) 600
|
|
51
|
+
|
|
52
|
+
收件人信息
|
|
53
|
+
姓名 John Doe
|
|
54
|
+
国家 US
|
|
55
|
+
城市 New York
|
|
56
|
+
地址 123 Main St
|
|
57
|
+
邮编 10001
|
|
58
|
+
电话 +1234567890
|
|
59
|
+
|
|
60
|
+
申报信息
|
|
61
|
+
1 T-Shirt 10.00 USD
|
|
62
|
+
|
|
63
|
+
费用明细
|
|
64
|
+
运费 应付: 25.00 USD
|
|
65
|
+
燃油附加费 应付: 5.00 USD
|
|
66
|
+
────────────────────────────────────────
|
|
67
|
+
合计 30.00 USD
|
|
68
|
+
```
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# `fmc product` command
|
|
2
|
+
|
|
3
|
+
## Command details
|
|
4
|
+
|
|
5
|
+
### `fmc product recommend`
|
|
6
|
+
|
|
7
|
+
| Field | Value |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| **Name** | `product recommend` |
|
|
10
|
+
| **Description** | 根据条件获取推荐物流产品及报价 |
|
|
11
|
+
| **Usage** | `fmc product recommend --country <code> [flags]` |
|
|
12
|
+
|
|
13
|
+
需要 API Key 认证。
|
|
14
|
+
|
|
15
|
+
#### Options
|
|
16
|
+
|
|
17
|
+
| Flag | Type | Required | Description |
|
|
18
|
+
| --- | --- | --- | --- |
|
|
19
|
+
| `--country <code>` | string | yes | 目的国家二字码,如 US、GB、JP |
|
|
20
|
+
| `--start-city <city>` | string | no | 起运城市中文名,默认深圳 |
|
|
21
|
+
| `--weight <kg>` | number | no | 重量(kg),默认 1 |
|
|
22
|
+
| `--post-code <code>` | string | no | 目的地邮编 |
|
|
23
|
+
| `--is-battery <flag>` | string | no | 是否带电:1-带电 2-普货 |
|
|
24
|
+
| `--declare-value <amount>` | number | no | 申报总价值 |
|
|
25
|
+
|
|
26
|
+
支持全局选项: `--output`, `--verbose`, `--dry-run`
|
|
27
|
+
|
|
28
|
+
#### Examples
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
fmc product recommend --country US
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
fmc product recommend --country US --weight 2.5 --start-city 广州
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
fmc product recommend --country GB --is-battery 1 --post-code SW1A1AA
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
fmc product recommend --country JP --output json
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
#### Output (text mode)
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
产品推荐
|
|
50
|
+
──────────────────────────────────────────────────
|
|
51
|
+
目的国 US (美国)
|
|
52
|
+
|
|
53
|
+
推荐产品(共 3 个)
|
|
54
|
+
|
|
55
|
+
4PX经济小包 ★推荐
|
|
56
|
+
产品代码 ECO-PKG
|
|
57
|
+
服务等级 经济
|
|
58
|
+
跟踪类型 全程跟踪
|
|
59
|
+
时效 7-15工作日
|
|
60
|
+
总费用(RMB) 35.00
|
|
61
|
+
计费重 1000g
|
|
62
|
+
|
|
63
|
+
4PX标准快递
|
|
64
|
+
产品代码 STD-EXP
|
|
65
|
+
服务等级 标准
|
|
66
|
+
跟踪类型 全程跟踪
|
|
67
|
+
时效 5-8工作日
|
|
68
|
+
总费用(RMB) 58.00
|
|
69
|
+
计费重 1000g
|
|
70
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# `fmc track` command
|
|
2
|
+
|
|
3
|
+
## Command details
|
|
4
|
+
|
|
5
|
+
### `fmc track get`
|
|
6
|
+
|
|
7
|
+
| Field | Value |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| **Name** | `track get` |
|
|
10
|
+
| **Description** | 查询物流轨迹 |
|
|
11
|
+
| **Usage** | `fmc track get <orderNo> [flags]` |
|
|
12
|
+
|
|
13
|
+
无需认证即可使用。
|
|
14
|
+
|
|
15
|
+
#### Options
|
|
16
|
+
|
|
17
|
+
| Flag | Type | Required | Description |
|
|
18
|
+
| --- | --- | --- | --- |
|
|
19
|
+
| `<orderNo>` | string | yes | 运单号 |
|
|
20
|
+
|
|
21
|
+
支持全局选项: `--output`, `--verbose`, `--dry-run`
|
|
22
|
+
|
|
23
|
+
#### Examples
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
fmc track get FPX12345678
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
fmc track get FPX12345678 --output json
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
fmc track get FPX12345678 --verbose
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
fmc track get FPX12345678 --dry-run
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
#### Output (text mode)
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
物流轨迹查询
|
|
45
|
+
──────────────────────────────────────────────────
|
|
46
|
+
单号 FPX12345678
|
|
47
|
+
起运地 中国
|
|
48
|
+
目的地 美国
|
|
49
|
+
|
|
50
|
+
最新轨迹
|
|
51
|
+
2024-01-15 10:30 纽约 已签收
|
|
52
|
+
|
|
53
|
+
全部轨迹
|
|
54
|
+
2024-01-15 10:30 纽约 已签收
|
|
55
|
+
2024-01-14 08:00 洛杉矶 海关放行
|
|
56
|
+
2024-01-10 14:20 深圳 已发出
|
|
57
|
+
```
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# `fmc update`
|
|
2
|
+
|
|
3
|
+
升级 CLI 到最新版本,并自动同步对应的 AI skill。
|
|
4
|
+
|
|
5
|
+
## Synopsis
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
fmc update [--check] [--tag <tag>] [--force] [-y] [--output <format>]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Description
|
|
12
|
+
|
|
13
|
+
`fmc update` 通过 npm 全局安装机制,将 CLI 升级到 npm registry 上的最新版本。
|
|
14
|
+
升级后由 npm postinstall 自动把新版 SKILL.md 同步到所有已检测到的 AI 工具目录
|
|
15
|
+
(`~/.qoder/skills/`, `~/.claude/skills/`, `~/.cursor/skills/` 等)。
|
|
16
|
+
|
|
17
|
+
**升级目标**:当前 site 的 npm 包 `cbs-4px-merchant-cli` 在 registry `{{ "https://registry.anpm.alibaba-inc.com" }}` 上。
|
|
18
|
+
|
|
19
|
+
## Options
|
|
20
|
+
|
|
21
|
+
| Flag | Description |
|
|
22
|
+
| --- | --- |
|
|
23
|
+
| `--check` | 只检查是否有新版本,不执行升级 |
|
|
24
|
+
| `--tag <tag>` | npm dist-tag(默认 `latest`,可选 `pre` / `test`) |
|
|
25
|
+
| `--force` | 强制重装当前版本(修复 skill 损坏) |
|
|
26
|
+
| `-y, --yes` | 跳过交互式确认 |
|
|
27
|
+
| `--output <format>` | 输出格式: `text` \| `json`(TTY 默认 text,管道默认 json) |
|
|
28
|
+
|
|
29
|
+
## Environment variables
|
|
30
|
+
|
|
31
|
+
| Variable | Description |
|
|
32
|
+
| --- | --- |
|
|
33
|
+
| `BPORTAL_REGISTRY` | 临时覆盖默认 registry(开发/镜像调试用) |
|
|
34
|
+
| `BPORTAL_NO_UPDATE_NOTIFIER` | 设为任意值即关闭被动 `_notice.update` 提示 |
|
|
35
|
+
|
|
36
|
+
## Examples
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# 检查是否有新版本(不执行升级)
|
|
40
|
+
fmc update --check
|
|
41
|
+
|
|
42
|
+
# 检查并以 JSON 输出(适合 AI Agent 解析)
|
|
43
|
+
fmc update --check --output json
|
|
44
|
+
|
|
45
|
+
# 升级到 latest(交互确认)
|
|
46
|
+
fmc update
|
|
47
|
+
|
|
48
|
+
# 升级到预发布版本
|
|
49
|
+
fmc update --tag pre
|
|
50
|
+
|
|
51
|
+
# 重装当前版本(修复 skill)
|
|
52
|
+
fmc update --force -y
|
|
53
|
+
|
|
54
|
+
# 临时切换 registry 后升级(不修改 ~/.npmrc)
|
|
55
|
+
BPORTAL_REGISTRY=https://registry.npmjs.org fmc update --check
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## JSON envelope (`--output json`)
|
|
59
|
+
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"ok": true,
|
|
63
|
+
"action": "updated",
|
|
64
|
+
"package": "cbs-4px-merchant-cli",
|
|
65
|
+
"registry": "https://registry.anpm.alibaba-inc.com",
|
|
66
|
+
"tag": "latest",
|
|
67
|
+
"previous_version": "1.0.10",
|
|
68
|
+
"current_version": "1.0.11",
|
|
69
|
+
"latest_version": "1.0.11",
|
|
70
|
+
"install_method": "npm",
|
|
71
|
+
"message": "已升级到 v1.0.11(skill 已通过 postinstall 自动同步)。重新打开终端使生效。"
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
`action` 取值:
|
|
76
|
+
|
|
77
|
+
| Value | Meaning |
|
|
78
|
+
| --- | --- |
|
|
79
|
+
| `updated` | 升级成功 |
|
|
80
|
+
| `already_up_to_date` | 已是最新版本(包括本地版本领先 registry 的情况) |
|
|
81
|
+
| `update_available` | 仅在 `--check` 模式下:发现新版本 |
|
|
82
|
+
| `manual_required` | CLI 非 npm 全局安装,需手动升级 |
|
|
83
|
+
| `error` | 失败(详见 `error.code`:`NETWORK` / `NPM_NOT_FOUND` / `NPM_INSTALL_FAILED` / `EACCES`) |
|
|
84
|
+
|
|
85
|
+
## Passive update notifier
|
|
86
|
+
|
|
87
|
+
普通命令运行后(如 `fmc track get ...`),若本地缓存(`~/.bportal/update-state.json`,
|
|
88
|
+
TTL 24 小时)发现 registry 上有新版本,stderr 会输出一条 JSON 通知:
|
|
89
|
+
|
|
90
|
+
```json
|
|
91
|
+
{"_notice":{"type":"update","package":"cbs-4px-merchant-cli","current":"1.0.10","latest":"1.0.11","hint":"Run: fmc update to upgrade"}}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
AI Agent 可据此提示用户升级。设置 `BPORTAL_NO_UPDATE_NOTIFIER=1` 即可关闭。
|
|
95
|
+
|
|
96
|
+
## Failure handling
|
|
97
|
+
|
|
98
|
+
- **EACCES 权限错误**:通常发生在 `/usr/local/lib/node_modules` 等目录。建议修复 npm prefix
|
|
99
|
+
让全局安装无需特权(参见 [npm 官方指南](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally)),
|
|
100
|
+
或使用 `sudo`。
|
|
101
|
+
- **网络/registry 不可达**:检查 VPN,或用 `BPORTAL_REGISTRY` 临时切换。
|
|
102
|
+
- **非 npm 安装**:`action=manual_required`,envelope 内 `upgrade_command` 字段给出确切的手动升级命令。
|