@sokeai/cli 1.0.67 → 1.0.68

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sokeai/cli",
3
- "version": "1.0.67",
3
+ "version": "1.0.68",
4
4
  "description": "授客AI官方CLI工具 - 支持AI Agent Skills",
5
5
  "bin": {
6
6
  "soke-cli": "scripts/run.js"
package/skills/README.md CHANGED
@@ -37,6 +37,7 @@ npx skills add <org>/soke-cli --skill soke-exam -y -g
37
37
  cp -r skills/soke-shared ~/.claude/skills/
38
38
  cp -r skills/soke-exam ~/.claude/skills/
39
39
  cp -r skills/soke-training-demand ~/.claude/skills/
40
+ cp -r skills/soke-task ~/.claude/skills/
40
41
 
41
42
  # 或复制到项目级skills目录
42
43
  mkdir -p .claude/skills
@@ -173,6 +174,7 @@ cp -r skills/soke-<module> ~/.claude/skills/
173
174
  - `soke-contact` - 组织架构(部门、用户、讲师)
174
175
  - `soke-training` - 培训管理
175
176
  - `soke-training-demand` - 培训需求收集
177
+ - `soke-task` - 异步任务管理
176
178
  - `soke-credit` - 学分管理
177
179
  - `soke-certificate` - 证书管理
178
180
  - 等等...
package/skills/SKILL.md CHANGED
@@ -2,7 +2,7 @@
2
2
  name: soke-cli
3
3
  summary: 授客AI CLI 全套 Skills 索引 — 安装指南与各业务模块能力总览
4
4
  version: 1.0.0
5
- description: "授客AI CLI(soke-cli)Skills 总索引:包含安装配置、认证登录,以及课程、考试、素材、课件、指派、学习地图、学习档案等全业务模块的 AI 快捷命令。当用户需要了解授客AI CLI 有哪些能力、从零开始使用、或不确定该调用哪个 skill 时使用。 | Soke AI CLI (soke-cli) skills master index: covers installation, configuration, authentication, and AI shortcut commands for all business modules including courses, exams, materials, lessons, assignments, learning maps, and learning records. Use when users need to understand what capabilities Soke AI CLI offers, get started from scratch, or are unsure which skill to invoke."
5
+ description: "授客AI CLI(soke-cli)Skills 总索引:包含安装配置、认证登录,以及课程、考试、素材、课件、指派、学习地图、异步任务、学习档案等全业务模块的 AI 快捷命令。当用户需要了解授客AI CLI 有哪些能力、从零开始使用、或不确定该调用哪个 skill 时使用。 | Soke AI CLI (soke-cli) skills master index: covers installation, configuration, authentication, and AI shortcut commands for all business modules including courses, exams, materials, lessons, assignments, learning maps, async tasks, and learning records. Use when users need to understand what capabilities Soke AI CLI offers, get started from scratch, or are unsure which skill to invoke."
6
6
  metadata:
7
7
  requires:
8
8
  bins: ["soke-cli"]
@@ -85,6 +85,18 @@ metadata:
85
85
 
86
86
  ---
87
87
 
88
+ ### soke-task — 异步任务管理
89
+
90
+ **路径**: [soke-task/SKILL.md](./soke-task/SKILL.md)
91
+
92
+ 独立异步任务模块,支持创建和查询导出任务。目前用于学习地图学员统计导出。
93
+
94
+ **核心能力**:
95
+ - 创建异步导出任务(`soke-cli task +create`)
96
+ - 查询任务状态与导出文件地址(`soke-cli task +get`)
97
+
98
+ ---
99
+
88
100
  ### soke-assign — 指派管理
89
101
 
90
102
  **路径**: [soke-assign/SKILL.md](./soke-assign/SKILL.md)
@@ -2,7 +2,7 @@
2
2
  name: soke-learning-map
3
3
  summary: 授客学堂学习地图管理(创建/阶段/发布/查询/指派),完整管理学习地图生命周期
4
4
  version: 1.0.0
5
- description: "授客学堂学习地图管理:完整的学习地图生命周期管理,包括创建学习地图、查询课程分类与课程、检查课程可用性、创建阶段、发布地图、指派部门/学员、查询学员进度的全链路流程。集成 soke-assign(指派管理)子 skill。当用户需要创建学习地图、添加阶段和课程内容、发布地图、指派学员、查询学习进度时使用。 | Soke Academy learning map management: complete learning map lifecycle management, covering the full workflow of creating learning maps, querying course categories and courses, checking course availability, creating stages, publishing maps, assigning departments/learners, and querying learner progress. Integrates soke-assign (assignment management) sub-skill. Use when users need to create learning maps, add stages and course content, publish maps, assign learners, or query learning progress."
5
+ description: "授客学堂学习地图管理:完整的学习地图生命周期管理,包括创建学习地图、查询课程分类与课程、检查课程可用性、创建阶段、发布地图、指派部门/学员、查询学员进度的全链路流程。集成 soke-assign(指派管理)子 skill。学习地图学员统计导出任务已独立到 soke-task skill。当用户需要创建学习地图、添加阶段和课程内容、发布地图、指派学员、查询学习进度时使用。 | Soke Academy learning map management: complete learning map lifecycle management, covering the full workflow of creating learning maps, querying course categories and courses, checking course availability, creating stages, publishing maps, assigning departments/learners, and querying learner progress. Integrates soke-assign (assignment management) sub-skill. Learning map learner statistics export tasks are handled by the standalone soke-task skill. Use when users need to create learning maps, add stages and course content, publish maps, assign learners, or query learning progress."
6
6
  metadata:
7
7
  requires:
8
8
  bins: ["soke-cli"]
@@ -380,6 +380,8 @@ soke-cli learning-map +detail --uuid "MAP-UUID" --format json
380
380
  | `+list-item-users` | 查询内容学员列表 | read |
381
381
  | `+get-map-user` | 查询单个学员详情 | read |
382
382
 
383
+ 学员统计导出任务使用独立模块:`soke-cli task +create` / `soke-cli task +get`,详见 [`../soke-task/SKILL.md`](../soke-task/SKILL.md)。
384
+
383
385
  ### 指派管理(soke-assign)
384
386
 
385
387
  | 命令 | 说明 |
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: soke-task
3
+ summary: 授客学堂异步任务管理(创建任务/查询任务),支持学习地图学员统计导出
4
+ version: 1.0.0
5
+ description: "授客学堂异步任务管理:通过独立 task 命令创建和查询异步导出任务。目前支持学习地图学员统计导出任务,按“创建任务 -> 获取 data.id -> 查询任务详情和 filePath”的流程使用。当用户需要导出学习地图学员统计、查询导出任务状态、获取导出文件下载地址时使用。 | Soke Academy async task management: create and query export jobs through the standalone task command. Currently supports learning map learner statistics export tasks. Use when users need to export learner statistics, check export task status, or obtain exported file URLs."
6
+ metadata:
7
+ requires:
8
+ bins: ["soke-cli"]
9
+ cliHelp: "soke-cli task --help"
10
+ ---
11
+
12
+ # 异步任务管理 (soke-task)
13
+
14
+ **CRITICAL — 开始前 MUST 先读取 [`../soke-shared/SKILL.md`](../soke-shared/SKILL.md),其中包含认证、配置和权限处理。**
15
+
16
+ ## 核心规则
17
+
18
+ - 任务接口是独立模块,命令统一使用 `soke-cli task ...`,不要使用 `soke-cli learning-map ...` 创建或查询任务。
19
+ - 创建任务后必须保存返回的 `data.id`,再调用 `+get` 查询任务详情。
20
+ - 默认用 `--format json` 获取结构化输出;需要人工快速查看时可省略 format 输出表格。
21
+ - 当前已知任务类型是学习地图学员统计导出,`--module` 默认 `learningMapUser`,`--action` 默认 `export`。
22
+
23
+ ## 命令
24
+
25
+ ### 创建学习地图学员统计导出任务
26
+
27
+ ```bash
28
+ soke-cli task +create \
29
+ --map-id "MAP-UUID" \
30
+ --learn-type "required" \
31
+ --limit 4500 \
32
+ --format json
33
+ ```
34
+
35
+ 完整参数:
36
+
37
+ | 参数 | 必填 | 默认值 | 说明 |
38
+ |------|------|--------|------|
39
+ | `--map-id` | 是 | - | 学习地图 UUID |
40
+ | `--module` | 否 | `learningMapUser` | 任务模块,学习地图学员统计固定为 `learningMapUser` |
41
+ | `--learn-type` | 否 | `required` | 学习类型,如 `required` |
42
+ | `--learn-status` | 否 | 空 | 学习状态筛选:空值表示不限,`learning` 未完成,`finished` 已完成 |
43
+ | `--eligible-status` | 否 | 空 | 达标状态筛选,空值表示不限 |
44
+ | `--limit` | 否 | `4500` | 任务处理上限 |
45
+ | `--action` | 否 | `export` | 操作类型,导出任务固定为 `export` |
46
+
47
+ 响应关键字段:
48
+
49
+ | 字段 | 说明 |
50
+ |------|------|
51
+ | `data.id` | 任务 ID,查询任务详情时传给 `+get --id` |
52
+ | `data.key` | 任务去重或配置缓存 Key |
53
+ | `data.config_result` | 上游配置模块检查结果 |
54
+
55
+ 默认输出会打印单行任务 ID,例如 `id:13288419`。需要完整字段时使用 `--format json`。
56
+
57
+ ### 查询异步导出任务
58
+
59
+ ```bash
60
+ soke-cli task +get --id "TASK-ID" --format json
61
+ ```
62
+
63
+ 响应关键字段:
64
+
65
+ | 字段 | 说明 |
66
+ |------|------|
67
+ | `data.status` | 任务执行状态;接口示例中 `2` 表示执行完成 |
68
+ | `data.export_status` | 导出状态;接口示例中 `2` 表示已生成导出文件 |
69
+ | `data.filePath` | 导出文件访问地址,未生成时为空 |
70
+ | `data.filename` | 导出文件名 |
71
+ | `data.filesize` | 导出文件大小 |
72
+ | `data.params` | 创建任务参数的 JSON 字符串 |
73
+
74
+ ## 推荐工作流
75
+
76
+ ```bash
77
+ TASK_ID=$(soke-cli task +create \
78
+ --map-id "$MAP_UUID" \
79
+ --learn-type "required" \
80
+ --limit 4500 \
81
+ --format json | jq -r '.data.id')
82
+
83
+ soke-cli task +get --id "$TASK_ID" --format json | jq -r '.data.filePath'
84
+ ```
85
+
86
+ ## API 接口映射
87
+
88
+ | CLI 命令 | API 路径 | 方法 |
89
+ |----------|----------|------|
90
+ | `task +create` | `/skills/job/task` | POST (form) |
91
+ | `task +get` | `/skills/job/task/{id}` | GET |
92
+
93
+ ## 排错
94
+
95
+ - `data.filePath` 为空:任务可能还未完成,等待后重新执行 `task +get --id "TASK-ID" --format json`。
96
+ - `未登录授权`:按 `soke-shared` 执行 `soke-cli auth login` 后重试。
97
+ - 任务创建失败:确认 `--map-id` 是有效学习地图 UUID,`--module learningMapUser`,`--action export`。