@pracmo/pracmo-cli 0.1.2 → 0.1.4

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 (2) hide show
  1. package/README.md +26 -11
  2. package/package.json +6 -6
package/README.md CHANGED
@@ -9,10 +9,18 @@
9
9
  ## 安装
10
10
 
11
11
  ```bash
12
- npm install -g @pracmo/pracmo-cli
12
+ npm install -g @pracmo/pracmo-cli # 推荐:全局安装,一条命令搞定
13
13
  ```
14
14
 
15
- 也可以不全局安装,在项目里本地安装后使用 `npx pracmocli`。
15
+ 也可以不全局安装,在项目里本地安装:
16
+
17
+ ```bash
18
+ npm install @pracmo/pracmo-cli
19
+ npm rebuild # 若 node_modules/.bin 未生成 pracmocli 链接,执行一次即可
20
+ npx pracmocli --version
21
+ ```
22
+
23
+ > 说明:npm 10.9.x 对「主包 + optionalDependencies 平台包 + os/cpu 过滤」组合存在已知插曲——本地项目首次安装可能不自动创建 `.bin` 链接,`npm rebuild` 可立即修复;全局安装不受影响。
16
24
 
17
25
  ### 包结构(主包是干什么的)
18
26
 
@@ -38,7 +46,9 @@ pracmocli collections list <trackId> # 列出练习册
38
46
  pracmocli collections create <trackId> collection.json # 新建练习册
39
47
  pracmocli exercises add <trackId> exercise.json # 创建成品练习
40
48
  pracmocli exercises image-replace <trackId> <exerciseId> <questionId> replace.json
41
- pracmocli images compress/validate/finalize # 图片流水线
49
+ pracmocli actions add <trackId> action.json # 创建私人行动(含跟练计划)
50
+ pracmocli validate exercise/action/collection/replace-image <file> [--manifest m] [--stage reviewed|finalized]
51
+ pracmocli images compress/validate/finalize # 图片流水线(--type exercise|action)
42
52
  pracmocli doctor # 环境自检
43
53
  pracmocli version # 版本
44
54
  ```
@@ -48,18 +58,20 @@ pracmocli version # 版本
48
58
  - `schemaVersion: "pracmo-track-exercise@v1"` + 稳定 `clientRequestId`(8–64 位,仅字母数字点下划线短横线)+ `exercise{title, collectionId, userRequest, difficultyLevel, questions}`。
49
59
  - 10–100 道题;支持单选/多选/判断/简答;解析写在 `options[].explanation`,题目对象不含解析字段。
50
60
  - 最终请求只含 HTTPS 图片地址;`trackId`/`collectionId` 必须来自 API 响应,不得臆造。
61
+ - **行动**:`schemaVersion: "pracmo-track-action@v1"` + `action{title, scheduleType, timezone, startDate, deadlineLocalTime, completionMode, contentMode, followPlan?}`;`follow_along` 需 `completionMode=one_tap` 和 1–20 个练阶、每阶 1–20 个 block(文字/图片)。
62
+ - 提交前一律用 `pracmocli validate <类型> <file>` 校验(行动/练习/练习册/图片替换四种格式),服务端要求不一致会直接报错拒绝。
51
63
  - 图片流水线:`asset://` 占位 → `images compress` → 逐像素审阅(manifest 的 `review` 全 true)→ `images validate --stage reviewed` → `images finalize`(OSS 直传、哈希回读)→ `images validate --stage finalized`。
52
64
 
53
65
  ## 环境变量
54
66
 
55
- | 变量 | 默认 | 说明 |
56
- |------|------|------|
57
- | `PRACMO_OPEN_API_BASE` | `https://apis.pracmo.com/open/v1` | 后端 Open API 地址(支持自建/预发环境) |
58
- | `PRACMO_ENV` | `prod` | 预设档:`prod` / `local`(`pre`/`global` 需显式设置 BASE) |
59
- | `PRACMO_API_KEY` `PRACMO_APIKEY` | | API Key(直接提供时无需网页绑定) |
60
- | `PRACMO_CREDENTIALS_DIR` | `~/.pracmo` | 绑定凭证目录(0600,跨重启有效) |
61
- | `PRACMO_HTTP_TIMEOUT_SECONDS` | 30 | HTTP 超时 |
62
- | `PRACMO_OSS_ENDPOINT` / `PRACMO_OSS_BUCKET` | 取自服务端 | 仅联调覆盖(如本地 minio) |
67
+ 公开使用只需这两个(不设置 API Key 时用 `pracmocli auth login` 网页绑定即可):
68
+
69
+ | 变量 | 说明 |
70
+ |------|------|
71
+ | `PRACMO_API_KEY`(旧名 `PRACMO_APIKEY` 兼容) | API Key;不设置时走 `auth login` 网页绑定 |
72
+ | `PRACMO_CREDENTIALS_DIR` | 绑定凭证保存目录(默认 `~/.pracmo`,0600 权限,跨重启有效) |
73
+
74
+ 其余变量(后端地址、环境档位、联调 OSS、超时等)属内部/联调用途,见 `RELEASE.md`。
63
75
 
64
76
  ## 退出码
65
77
 
@@ -81,6 +93,9 @@ pracmocli doctor # 输出 baseUrl / 登录方式等
81
93
  pracmocli auth status # 未登录时退出码为 2,属正常
82
94
  ```
83
95
 
96
+ 版本刚发布时 npm 公开库对新版本有几分钟可见延迟(搜得到名字不代表能立刻安装到该版本):
97
+ 用 `npm view @pracmo/pracmo-cli version` 确认 latest;安装时如遇 404,加 `--prefer-online` 绕过本地缓存,或稍等片刻重试。
98
+
84
99
  ## 安全说明
85
100
 
86
101
  - 不要把 API Key 粘贴到聊天或提交进仓库;流水线也不会把图片字节发给后端(OSS 直传)。
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@pracmo/pracmo-cli",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "练成(Pracmo)App 的 AI 练习助手命令行:把对话、资料或目标整理成私人练习题,加入已有甲程与练习册。任何 AI Agent 都可直接调用;不绑定任何特定 Agent 平台。",
5
5
  "bin": { "pracmocli": "bin/pracmocli.js" },
6
6
  "optionalDependencies": {
7
- "@pracmo/pracmo-cli-darwin-amd64": "0.1.2",
8
- "@pracmo/pracmo-cli-darwin-arm64": "0.1.2",
9
- "@pracmo/pracmo-cli-linux-x64": "0.1.2",
10
- "@pracmo/pracmo-cli-linux-arm64": "0.1.2",
11
- "@pracmo/pracmo-cli-win32-x64": "0.1.2"
7
+ "@pracmo/pracmo-cli-darwin-amd64": "0.1.4",
8
+ "@pracmo/pracmo-cli-darwin-arm64": "0.1.4",
9
+ "@pracmo/pracmo-cli-linux-x64": "0.1.4",
10
+ "@pracmo/pracmo-cli-linux-arm64": "0.1.4",
11
+ "@pracmo/pracmo-cli-win32-x64": "0.1.4"
12
12
  },
13
13
  "files": ["bin", "README.md"],
14
14
  "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org/" },