@zan_team/cli 0.0.1 → 0.0.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.
Files changed (3) hide show
  1. package/README.md +15 -104
  2. package/dist/cli.js +1 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -28,8 +28,7 @@ pnpm build
28
28
  node dist/cli.js --help
29
29
  ```
30
30
 
31
- 下文统一使用 `zan`。测试构建产物时,将 `zan` 替换为 `node dist/cli.js`;
32
- 本地源码联调推荐使用下方的 `cli:local` 入口,无需反复构建。
31
+ 下文统一使用 `zan`。运行源码构建产物时,将 `zan` 替换为 `node dist/cli.js`。
33
32
 
34
33
  ### 配置服务地址
35
34
 
@@ -37,74 +36,12 @@ CLI 未显式配置服务地址时默认连接生产环境 `https://zan.top`。
37
36
  环境变量覆盖 Auth/API Origin:
38
37
 
39
38
  ```sh
40
- export ZAN_ENV=dev
41
39
  export ZAN_AUTH_BASE_URL=https://auth.example.com
42
40
  export ZAN_API_BASE_URL=https://api.example.com
43
41
  ```
44
42
 
45
- 仓库提供 DEV、SIT、PRE 和 PROD 四套调试配置:
46
-
47
- | 环境 | 配置文件 | Origin |
48
- | ---- | ----------- | -------------------------------------- |
49
- | DEV | `.env.dev` | `http://127.0.0.1:8088` |
50
- | SIT | `.env.sit` | `https://zan.unchartedw3s.com` |
51
- | PRE | `.env.pre` | `https://pre.zan.top` |
52
- | PROD | `.env.prod` | `https://zan.top` |
53
-
54
- ### 本地源码联调
55
-
56
- 开发者可在 CLI 仓库中通过 `pnpm cli:local` 选择一次环境,后续命令会自动沿用;
57
- 源码修改后下一次调用立即生效:
58
-
59
- ```sh
60
- pnpm cli:local -- env use dev
61
- pnpm cli:local -- env status
62
- pnpm cli:local -- --json --no-interactive usage
63
-
64
- # 切换到 SIT
65
- pnpm cli:local -- env use sit
66
-
67
- # 仅本次使用 DEV,不改变保存的选择;--env 必须放在最前面
68
- pnpm cli:local -- --env dev --json --no-interactive usage
69
- ```
70
-
71
- 选择保存在当前工作目录的 `.zan-dev.json`,只包含 `environment`,支持
72
- `dev`、`sit`、`pre`。仅读取当前目录,不向上查找;未选择环境时会报错,
73
- 也可以直接用 `--env sit` 单次指定。`env status` 始终以 JSON 返回环境、
74
- 配置路径、工作目录、源码仓库和 Auth/API 地址,不包含凭据。
75
-
76
- 测试 Agent 应直接通过 Node 调用源码入口,避免 pnpm 的脚本横幅影响 JSON 解析。
77
- 在其他业务项目中,保留该项目的工作目录,使用源码入口的绝对路径:
78
-
79
- ```sh
80
- node /absolute/path/to/zan-cli/scripts/zan-dev.mjs env use sit
81
- node /absolute/path/to/zan-cli/scripts/zan-dev.mjs --json --no-interactive usage
82
- ```
83
-
84
- 该入口从 CLI 仓库读取依赖、源码和环境文件,保留调用方工作目录。
85
- 每个测试项目分别保存环境选择;登录、Project/Network 等仍是用户级、按环境共享的状态。
86
- 同目录并发测试不同环境时,各命令显式使用 `--env`。
87
-
88
- 此功能仅用于源码联调:正式 `zan` 和发布的 CLI 不读取 `.zan-dev.json`,
89
- 开发脚本不随 npm 包发布。给最终用户的 Skill 只保留正式 CLI 用法。
90
- Agent 入口约定、写文件命令和状态隔离说明见[本地开发指南](docs/local-development.md)。
91
-
92
- 也可以通过 DEV、SIT、PRE 和 PROD 脚本直接指定环境,`--` 后的参数会完整传给 CLI:
93
-
94
- ```sh
95
- pnpm cli:dev -- auth login
96
- pnpm cli:sit -- auth status --verify
97
- pnpm cli:pre -- --json project list
98
- pnpm cli:prod -- auth login
99
- pnpm cli:prod -- --json project list
100
- pnpm cli:prod -- usage
101
- ```
102
-
103
- 环境脚本会覆盖当前终端残留的 `ZAN_ENV`、`ZAN_AUTH_BASE_URL` 和
104
- `ZAN_API_BASE_URL`。DEV、SIT、PRE 分别使用独立的系统凭据 Profile、Session、
105
- Project/Network 设置和 Endpoint 缓存;PROD 继续使用兼容既有安装的
106
- `profile-default`、`session.json` 和 `settings.json`。非生产设置分别保存在
107
- `settings.dev.json`、`settings.sit.json` 和 `settings.pre.json`。
43
+ 上述 `example.com` 地址仅用于展示配置方式,不能直接使用。日常使用无需覆盖
44
+ 服务地址;内部环境地址和配置请通过授权渠道获取,不要写入公开文档或示例。
108
45
 
109
46
  ### 登录
110
47
 
@@ -400,27 +337,17 @@ zan project cache clear
400
337
  Project 使用不同缓存文件与密钥。普通设置文件仍只保存 Project ID 和 Network
401
338
  ID,不保存 Endpoint 或 API Key。
402
339
 
403
- #### SIT 调试与 RPC API Key 覆盖
404
-
405
- 源码调试时可以直接使用环境脚本:
406
-
407
- ```sh
408
- pnpm cli:sit -- project use <project-id>
409
- pnpm cli:sit -- evm networks
410
- pnpm cli:sit -- evm networks --refresh
411
- pnpm cli:sit -- project cache status
412
- pnpm cli:sit -- project cache clear
413
- ```
340
+ #### RPC API Key 覆盖
414
341
 
415
342
  需要临时替换当前 Project 的 RPC API Key 时,通过隐藏输入或 stdin 写入系统
416
343
  凭据库:
417
344
 
418
345
  ```sh
419
- pnpm cli:sit -- project rpc-key set
346
+ zan project rpc-key set
420
347
  printf '%s\n' "$TEST_RPC_API_KEY" \
421
- | pnpm cli:sit -- project rpc-key set --stdin
422
- pnpm cli:sit -- project rpc-key status
423
- pnpm cli:sit -- project rpc-key clear
348
+ | zan project rpc-key set --stdin
349
+ zan project rpc-key status
350
+ zan project rpc-key clear
424
351
  ```
425
352
 
426
353
  覆盖值不会出现在命令参数、普通配置、Endpoint 缓存或命令输出中。启用覆盖后,
@@ -430,8 +357,6 @@ RPC 401/403 不会自动换回服务端下发的 Key,便于稳定测试指定
430
357
 
431
358
  ```sh
432
359
  zan project rpc-key pull
433
- # 源码 SIT 调试:
434
- pnpm cli:sit -- project rpc-key pull
435
360
  ```
436
361
 
437
362
  命令写入当前工作目录中固定的 `ZAN_API_KEY`:已存在时替换,缺少时追加,文件
@@ -441,8 +366,8 @@ pnpm cli:sit -- project rpc-key pull
441
366
  后的文件在 POSIX 系统上使用 `0600` 权限,并通过文件锁和原子替换写入;符号链接
442
367
  或非普通 `.env` 会被拒绝。
443
368
 
444
- `pull` 只写 `.env`,不会修改 `.env.dev`、`.env.sit`、`.env.pre` 或
445
- `.env.prod`。它不会检查 Git 跟踪状态或自动更新 `.gitignore`,请自行确保 `.env`
369
+ `pull` 只写 `.env`,不会修改其他环境配置文件。
370
+ 它不会检查 Git 跟踪状态或自动更新 `.gitignore`,请自行确保 `.env`
446
371
  不会被提交。写入后,任何拥有当前目录读取权限的进程或 Agent 都可能读取这个明文
447
372
  文件;“不泄露”保证只覆盖该命令自身的参数、输出、错误和日志边界。
448
373
 
@@ -518,7 +443,9 @@ printf '["0x0000000000000000000000000000000000000000","latest"]' \
518
443
  ~/.zan-cli/config.yaml
519
444
  ```
520
445
 
521
- `~` 由操作系统用户目录 API 解析。该文件是个人 CLI 策略,与 `.env.dev`、`.env.sit`、`.env.pre`、`.env.prod`、`ZAN_ENV` 及所选 ZAN 后端环境完全无关;`ZAN_HOME` 不会改变它的位置,DEV、SIT、PRE、PROD 读取同一个文件。
446
+ `~` 由操作系统用户目录 API 解析。该文件是个人 CLI 策略,与环境配置文件、
447
+ `ZAN_ENV` 及所选 ZAN 后端环境无关;`ZAN_HOME` 不会改变它的位置,所有环境
448
+ 读取同一个文件。
522
449
 
523
450
  YAML schema 支持两个顶层属性,分别控制 Raw JSON-RPC 和 Hyperliquid Info 方法:
524
451
 
@@ -683,17 +610,6 @@ Agent 可用 `inspect` 检查本地状态;`ready: false` 需结合实际命令
683
610
  Project/Network 选择、套餐与 Key 用量、EVM/Hyperliquid 查询、RPC Key 拉取及钱包签名指引。
684
611
  `skills/` 随 npm 包发布;安装 CLI 后仍需将技能目录放入 Agent 的发现路径。
685
612
 
686
- 本仓库已通过 `.agents/skills/zan-cli` 软链接指向 `skills/zan-cli`。在 Codex
687
- 中打开本仓库即可发现技能,修改源文件无需复制。若未显示,重启 Codex 后尝试:
688
-
689
- ```text
690
- 使用 $zan-cli 列出当前支持的命令。本任务把技能中的 zan 统一替换为
691
- node /absolute/path/to/zan-cli/scripts/zan-dev.mjs --env sit。
692
- ```
693
-
694
- 将示例路径替换为实际 CLI 仓库路径。该入口约定仅用于本地测试;
695
- 环境选择和状态隔离说明见[本地开发指南](docs/local-development.md)。
696
-
697
613
  npm 包发布后,安装 CLI 并选择 Agent 安装技能:
698
614
 
699
615
  ```sh
@@ -796,13 +712,6 @@ zan completions fish
796
712
  名称,或通过 `zan project list` 查找项目后执行 `zan project use <id>` 使用已有
797
713
  项目;此错误不可重试,仍使用 `ZAN_API_ERROR` 和退出码 `8`。
798
714
 
799
- 本地联调遇到 “No free Node Service plan is configured for this environment” 时,
800
- 需在 `webtservice` 的本地数据库中配置 `/default/AVAILABLE_FREE_SPEC`,其中
801
- `AVAILABLE_FREE_SPEC.NODE_SERVICE.specId` 必须指向有效的 `drw3_service_spec`
802
- 商品规格。只启动 MySQL、Redis 或重新登录不会生成这些商品数据;应导入环境
803
- 对应的测试商品配置,并确认该规格所需的套餐开通及回调链路可用。后端代码
804
- 修改后,需要重新编译并重启实际监听本地 API 端口的进程。
805
-
806
715
  已认证的 Project 与 Network 请求如果通过 HTTP 401 或已发布的 WebResult
807
716
  语义表明 Access Token 无效,会刷新一次 Access Token 并重放一次请求。第二次
808
717
  仍失败时返回 `AUTH_EXPIRED`,不会继续刷新。普通 HTTP 403 和 Scope 不足不会
@@ -810,6 +719,8 @@ zan completions fish
810
719
 
811
720
  ### 安全注意事项
812
721
 
722
+ - 对外文档、截图和问题反馈中不要包含内部开发、测试或预发域名、IP、端口及环境配置;
723
+ 示例统一使用 `example.com` 等占位地址,分享命令输出前先检查并脱敏。
813
724
  - 不要把 Access Token、Refresh Token、Project Token 或完整 Endpoint 写入脚本、日志和普通配置。
814
725
  - 不要使用 `--verbose` 输出处理结果中的敏感字段。
815
726
  - 完整 RPC Endpoint 只在当前进程内解密使用;本地仅保存 AES-256-GCM 密文,
package/dist/cli.js CHANGED
@@ -1891,7 +1891,7 @@ function registerSign(program, outputWriter, getRuntimeContext) {
1891
1891
  }
1892
1892
 
1893
1893
  // src/version.ts
1894
- var CLI_VERSION = true ? "0.0.1" : pkg.version;
1894
+ var CLI_VERSION = true ? "0.0.2" : pkg.version;
1895
1895
 
1896
1896
  // src/commands/version.ts
1897
1897
  function registerVersion(program, outputWriter) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zan_team/cli",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "Unified ZAN command-line interface for developers, automation, and AI agents",
5
5
  "type": "module",
6
6
  "bin": {