@sokeai/cli 1.0.59 → 1.0.61
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
package/skills/README.md
CHANGED
|
@@ -43,7 +43,7 @@ Pool (题库)
|
|
|
43
43
|
| [`+get-exam`](#get-exam) | 获取单个考试详情 |
|
|
44
44
|
| [`+list-exam-users`](#list-exam-users) | 列出考试用户成绩列表 |
|
|
45
45
|
| [`+get-exam-user`](#get-exam-user) | 获取单个考试用户的详细成绩 |
|
|
46
|
-
| [`+list-categories`](#list-categories) |
|
|
46
|
+
| [`+list-exam-categories`](#list-exam-categories) | 列出考试分类(通过 API) |
|
|
47
47
|
| [`+list-pool-categories`](#list-pool-categories) | 列出题库分类 |
|
|
48
48
|
| [`+list-pools`](#list-pools) | 列出题库列表 |
|
|
49
49
|
| [`+get-pool`](#get-pool) | 获取题库详情 |
|
|
@@ -123,6 +123,29 @@ soke-cli exam +create-question \
|
|
|
123
123
|
|
|
124
124
|
---
|
|
125
125
|
|
|
126
|
+
## ⚠️ 题库分类 vs 考试分类
|
|
127
|
+
|
|
128
|
+
**这是两个独立的分类系统,UUID 不能混用:**
|
|
129
|
+
|
|
130
|
+
| 类型 | 用途 | 查询方式 |
|
|
131
|
+
|------|------|---------|
|
|
132
|
+
| **题库分类** (Pool Category) | 用于 `+create-pool --path` | `soke-cli exam +list-pool-categories` |
|
|
133
|
+
| **考试分类** (Exam Category) | 用于 `+create-exam --path` 和 `+update-exam --path` | `soke-cli api GET /skills/examCategory/list` |
|
|
134
|
+
|
|
135
|
+
**常见错误**:在 `+create-exam` 或 `+update-exam --action publish` 的 `--path` 中传入题库分类 UUID → 报"设置失败"/"分类不能为空"。
|
|
136
|
+
|
|
137
|
+
### +list-exam-categories
|
|
138
|
+
|
|
139
|
+
列出考试分类(通过 API 查询)。
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
soke-cli api GET /skills/examCategory/list
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
返回 JSON,从 `data.list.list[].uuid` 获取考试分类 UUID。
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
126
149
|
## 命令详解
|
|
127
150
|
|
|
128
151
|
### +create-exam
|
|
@@ -134,7 +157,7 @@ soke-cli exam +create-exam \
|
|
|
134
157
|
--title <考试标题> \
|
|
135
158
|
[--is-papers 1] \
|
|
136
159
|
[--source self] \
|
|
137
|
-
[--path '["<
|
|
160
|
+
[--path '["<exam_category_uuid>"]']
|
|
138
161
|
```
|
|
139
162
|
|
|
140
163
|
| 参数 | 必需 | 说明 |
|
|
@@ -145,7 +168,7 @@ soke-cli exam +create-exam \
|
|
|
145
168
|
| `--is-offline` | 否 | 是否线下考试:0=否 1=是(默认 0) |
|
|
146
169
|
| `--set-time` | 否 | 是否设置考试时间(默认 0) |
|
|
147
170
|
| `--source` | 否 | 来源:self/mall/public(默认 self) |
|
|
148
|
-
| `--path` |
|
|
171
|
+
| `--path` | 条件 | **考试分类** ID 数组(不是题库分类),JSON 格式,发布考试时必传 |
|
|
149
172
|
|
|
150
173
|
---
|
|
151
174
|
|
|
@@ -261,7 +284,7 @@ soke-cli exam +update-exam \
|
|
|
261
284
|
--exam-id <exam_uuid> \
|
|
262
285
|
--title <考试标题> \
|
|
263
286
|
--action publish \
|
|
264
|
-
--path '["<
|
|
287
|
+
--path '["<exam_category_uuid>"]'
|
|
265
288
|
|
|
266
289
|
# 仅更新标题
|
|
267
290
|
soke-cli exam +update-exam \
|
|
@@ -274,7 +297,7 @@ soke-cli exam +update-exam \
|
|
|
274
297
|
| `--exam-id` | 是 | 考试 UUID |
|
|
275
298
|
| `--title` | 条件 | 发布时必传,避免标题被清空 |
|
|
276
299
|
| `--action` | 否 | `publish`=发布考试,留空仅更新信息 |
|
|
277
|
-
| `--path` | 条件 |
|
|
300
|
+
| `--path` | 条件 | 发布时必传,**考试分类** UUID 数组 JSON(不是题库分类) |
|
|
278
301
|
|
|
279
302
|
**发布前提**:
|
|
280
303
|
1. 考试创建时已设置 `--path`(分类),否则发布时分类检查不通过
|
|
@@ -298,7 +321,7 @@ soke-cli exam +assign-exam \
|
|
|
298
321
|
| `--exam-id` | 是 | 考试 UUID |
|
|
299
322
|
| `--user-ids` | 是 | 用户 dept_user_id 数组,JSON 格式 |
|
|
300
323
|
|
|
301
|
-
**查找用户 ID**:`soke-cli
|
|
324
|
+
**查找用户 ID**:`soke-cli assign +list-users --keyword "姓名"`
|
|
302
325
|
|
|
303
326
|
---
|
|
304
327
|
|
|
@@ -319,9 +342,16 @@ soke-cli exam +get-assign --exam-id <exam_uuid>
|
|
|
319
342
|
```bash
|
|
320
343
|
soke-cli exam +import-paper \
|
|
321
344
|
--exam-id <exam_uuid> \
|
|
322
|
-
--paper-id <paper_uuid>
|
|
345
|
+
--paper-id <paper_uuid> \
|
|
346
|
+
[--is-papers 1]
|
|
323
347
|
```
|
|
324
348
|
|
|
349
|
+
| 参数 | 必需 | 说明 |
|
|
350
|
+
|------|------|------|
|
|
351
|
+
| `--exam-id` | 是 | 考试 UUID |
|
|
352
|
+
| `--paper-id` | 是 | 试卷 UUID |
|
|
353
|
+
| `--is-papers` | 否 | 是否多试卷模式(默认 0)。**如果考试是用 `--is-papers 1` 创建的,此处也必须传 `--is-papers 1`**,否则 paperId 会以字符串而非数组格式发送,导致发布时 crash |
|
|
354
|
+
|
|
325
355
|
---
|
|
326
356
|
|
|
327
357
|
### +get-exam
|
|
@@ -475,25 +505,30 @@ soke-cli exam +update-paper \
|
|
|
475
505
|
--title "试卷名" \
|
|
476
506
|
--action publish
|
|
477
507
|
|
|
478
|
-
#
|
|
508
|
+
# 5.5 ⚠️ 查找考试分类(注意:考试分类 ≠ 题库分类!)
|
|
509
|
+
# 题库分类 UUID 用于 pool,考试分类 UUID 用于 exam。两者不同!
|
|
510
|
+
# 查询已有考试分类:
|
|
511
|
+
soke-cli api GET /skills/examCategory/list
|
|
512
|
+
# → 从中选择一个分类 UUID(如无合适的,请联系管理员创建)
|
|
513
|
+
|
|
514
|
+
# 6. 创建考试(--path 必须使用考试分类 UUID,不是题库分类 UUID)
|
|
479
515
|
soke-cli exam +create-exam \
|
|
480
516
|
--title "考试名" \
|
|
481
|
-
--
|
|
482
|
-
--path '["<category_uuid>"]'
|
|
517
|
+
--path '["<exam_category_uuid>"]'
|
|
483
518
|
|
|
484
519
|
# 7. 关联试卷到考试
|
|
485
520
|
soke-cli exam +import-paper \
|
|
486
521
|
--exam-id "<exam_uuid>" \
|
|
487
522
|
--paper-id "<paper_uuid>"
|
|
488
523
|
|
|
489
|
-
# 8. 发布考试(title + path
|
|
524
|
+
# 8. 发布考试(title + path 必传,path 必须用考试分类 UUID)
|
|
490
525
|
soke-cli exam +update-exam \
|
|
491
526
|
--exam-id "<exam_uuid>" \
|
|
492
527
|
--title "考试名" \
|
|
493
528
|
--action publish \
|
|
494
|
-
--path '["<
|
|
529
|
+
--path '["<exam_category_uuid>"]'
|
|
495
530
|
|
|
496
|
-
# 9.
|
|
531
|
+
# 9. 指派考试给用户(先通过 soke-cli assign +list-users --keyword "姓名" 查 user ID)
|
|
497
532
|
soke-cli exam +assign-exam \
|
|
498
533
|
--exam-id "<exam_uuid>" \
|
|
499
534
|
--user-ids '["<dept_user_id>"]'
|
|
@@ -12,7 +12,7 @@ metadata:
|
|
|
12
12
|
|
|
13
13
|
# 学习地图管理 (soke-learning-map)
|
|
14
14
|
|
|
15
|
-
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [
|
|
15
|
+
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`./soke-cli安装指南.md`](./soke-cli安装指南.md),其中包含认证、配置、权限处理**
|
|
16
16
|
|
|
17
17
|
## 使用前提
|
|
18
18
|
|
|
@@ -0,0 +1,397 @@
|
|
|
1
|
+
# 授客CLI 工具 - 快速上手指南
|
|
2
|
+
|
|
3
|
+
本文档将指导你从零开始安装 `soke-cli`,完成用户登录授权,并开始使用授客AI开放平台的各项功能。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 📋 目录
|
|
8
|
+
|
|
9
|
+
- [前置要求](#前置要求)
|
|
10
|
+
- [安装步骤](#安装步骤)
|
|
11
|
+
- [用户登录授权](#用户登录授权)
|
|
12
|
+
- [验证安装](#验证安装)
|
|
13
|
+
- [常见问题](#常见问题)
|
|
14
|
+
- [下一步](#下一步)
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 前置要求
|
|
19
|
+
|
|
20
|
+
在开始之前,请确保你的系统满足以下要求:
|
|
21
|
+
|
|
22
|
+
### 必需条件
|
|
23
|
+
- **Node.js**: 版本 >= 14.0.0(用于 NPM 安装)
|
|
24
|
+
- **网络连接**: 能够访问授客AI开放平台 API(默认:`https://opendev.soke.cn`)
|
|
25
|
+
- **浏览器**: 用于完成 OAuth 授权流程
|
|
26
|
+
|
|
27
|
+
> 💡 **提示**: 使用 `soke-cli` 无需预先配置任何凭证,所有配置将在登录授权过程中自动完成。
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 安装步骤
|
|
32
|
+
|
|
33
|
+
### 通过 NPM 安装
|
|
34
|
+
|
|
35
|
+
这是推荐的安装方式,简单快捷,适合所有用户。
|
|
36
|
+
|
|
37
|
+
#### macOS / Linux 安装
|
|
38
|
+
|
|
39
|
+
打开终端,执行以下命令:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npm install -g @sokeai/cli@latest
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
#### Windows 安装
|
|
46
|
+
|
|
47
|
+
**方式一:使用 PowerShell(推荐)**
|
|
48
|
+
|
|
49
|
+
1. 以管理员身份打开 PowerShell:
|
|
50
|
+
- 按 `Win + X`,选择"Windows PowerShell (管理员)"
|
|
51
|
+
- 或在开始菜单搜索"PowerShell",右键选择"以管理员身份运行"
|
|
52
|
+
|
|
53
|
+
2. 执行安装命令:
|
|
54
|
+
```powershell
|
|
55
|
+
npm install -g @sokeai/cli@latest
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**方式二:使用 CMD 命令提示符**
|
|
59
|
+
|
|
60
|
+
1. 以管理员身份打开命令提示符:
|
|
61
|
+
- 按 `Win + R`,输入 `cmd`,按 `Ctrl + Shift + Enter`
|
|
62
|
+
- 或在开始菜单搜索"cmd",右键选择"以管理员身份运行"
|
|
63
|
+
|
|
64
|
+
2. 执行安装命令:
|
|
65
|
+
```cmd
|
|
66
|
+
npm install -g @sokeai/cli@latest
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
> 💡 **Windows 提示**:
|
|
70
|
+
> - 如果提示"npm 不是内部或外部命令",请先安装 [Node.js](https://nodejs.org/)
|
|
71
|
+
> - 安装过程中可能需要管理员权限
|
|
72
|
+
> - 如果遇到权限问题,确保以管理员身份运行终端
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
### 安装过程说明
|
|
77
|
+
|
|
78
|
+
无论使用哪个平台,安装过程都是自动化的:
|
|
79
|
+
|
|
80
|
+
1. NPM 会自动下载 `@sokeai/cli` 包
|
|
81
|
+
2. 安装脚本会根据你的操作系统(macOS/Linux/Windows)和架构(x64/arm64)自动下载对应的二进制文件
|
|
82
|
+
3. 二进制文件会被放置在对应的目录:
|
|
83
|
+
- **macOS/Linux**: `$(npm root -g)/@sokeai/cli/bin/soke-cli`
|
|
84
|
+
- **Windows**: `%APPDATA%\npm\node_modules\@sokeai\cli\bin\soke-cli.exe`
|
|
85
|
+
4. 如果你安装了 AI Agent(如 Claude Code),相关的 Skills 会自动同步到对应目录
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
### 验证安装
|
|
90
|
+
|
|
91
|
+
安装完成后,验证是否安装成功:
|
|
92
|
+
|
|
93
|
+
**macOS / Linux**:
|
|
94
|
+
```bash
|
|
95
|
+
soke-cli --version
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
**Windows (PowerShell / CMD)**:
|
|
99
|
+
```cmd
|
|
100
|
+
soke-cli --version
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
如果显示版本号(如 `1.0.15`),说明安装成功。
|
|
104
|
+
|
|
105
|
+
**如果提示"命令未找到"**,请参考[常见问题](#常见问题)章节。
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## 用户登录授权
|
|
110
|
+
|
|
111
|
+
安装完成后,直接执行登录命令即可开始使用。无需预先配置,所有必要的配置信息将在授权过程中自动获取并保存。
|
|
112
|
+
|
|
113
|
+
### OAuth 浏览器授权流程
|
|
114
|
+
|
|
115
|
+
`soke-cli` 使用 OAuth 2.0 授权码流程(Authorization Code Flow),通过浏览器完成安全授权。
|
|
116
|
+
|
|
117
|
+
### 执行登录命令
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
soke-cli auth login
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### 授权步骤
|
|
124
|
+
|
|
125
|
+
1. **自动打开浏览器**
|
|
126
|
+
|
|
127
|
+
命令执行后,会自动在默认浏览器中打开授权页面。如果浏览器没有自动打开,会显示授权链接:
|
|
128
|
+
```
|
|
129
|
+
ℹ️ 未找到登录信息,开始授权流程
|
|
130
|
+
|
|
131
|
+
请在浏览器中打开以下链接进行授权:
|
|
132
|
+
http://127.0.0.1:8080/callback?redirect_uri=...
|
|
133
|
+
|
|
134
|
+
等待授权中...
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
2. **浏览器授权**
|
|
138
|
+
|
|
139
|
+
在浏览器授权页面中:
|
|
140
|
+
- 如果未登录授客AI平台,先完成登录
|
|
141
|
+
- 查看应用请求的权限列表
|
|
142
|
+
- 勾选"一并开通审批的常用权限"(可选)
|
|
143
|
+
- 点击"开通并授权"按钮
|
|
144
|
+
|
|
145
|
+
3. **授权成功**
|
|
146
|
+
|
|
147
|
+
授权完成后,浏览器会显示成功页面,CLI 终端会显示:
|
|
148
|
+
```
|
|
149
|
+
✅ 已登录,Token 仍然有效
|
|
150
|
+
企业 ID: corp_123456
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
4. **配置自动保存**
|
|
154
|
+
|
|
155
|
+
授权成功后,以下信息会自动保存到 `~/.soke-cli/config.json`:
|
|
156
|
+
- 用户访问令牌(`user_token`)
|
|
157
|
+
- 企业 ID(`corpid`)
|
|
158
|
+
- 部门用户 ID(`dept_user_id`)
|
|
159
|
+
- Token 过期时间
|
|
160
|
+
|
|
161
|
+
### Token 有效期
|
|
162
|
+
|
|
163
|
+
- **访问令牌(Access Token)**: 默认有效期根据平台设置,通常为数小时到数天
|
|
164
|
+
- **自动检查**: 每次执行命令时,CLI 会自动检查 Token 是否有效
|
|
165
|
+
- **自动续期**: Token 过期后,再次执行 `soke-cli auth login` 即可重新授权
|
|
166
|
+
|
|
167
|
+
### 强制重新登录
|
|
168
|
+
|
|
169
|
+
如果需要切换账号或强制重新授权,可以使用 `--force` 参数:
|
|
170
|
+
|
|
171
|
+
```bash
|
|
172
|
+
soke-cli auth login --force
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### 退出登录
|
|
176
|
+
|
|
177
|
+
如果需要退出登录,清除本地保存的令牌:
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
soke-cli auth logout
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
输出:
|
|
184
|
+
```
|
|
185
|
+
✓ 已退出登录
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## 验证安装
|
|
191
|
+
|
|
192
|
+
完成登录授权后,让我们验证一切是否正常工作。
|
|
193
|
+
|
|
194
|
+
### 1. 查看配置信息
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
soke-cli config show
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
确认配置信息已自动保存:
|
|
201
|
+
```
|
|
202
|
+
当前配置:
|
|
203
|
+
app_key: (未设置)
|
|
204
|
+
app_secret: (未设置)
|
|
205
|
+
api_base_url:
|
|
206
|
+
corpid: corp_123456
|
|
207
|
+
dept_user_id: user_789012
|
|
208
|
+
user_token: eyJh...xyz
|
|
209
|
+
bot_token: (未设置)
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
> 💡 **说明**: `app_key` 和 `app_secret` 在当前版本中不需要手动配置,授权流程会自动处理所有必要的认证信息。
|
|
213
|
+
|
|
214
|
+
### 2. 测试 API 调用
|
|
215
|
+
|
|
216
|
+
尝试调用一个简单的 API:
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
soke-cli api GET /users/me
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
如果返回你的用户信息(JSON 格式),说明一切配置正确!
|
|
223
|
+
|
|
224
|
+
### 3. 使用业务命令
|
|
225
|
+
|
|
226
|
+
尝试使用一个业务快捷命令,例如查看考试列表:
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
soke-cli exam +list-exams --page 1 --page-size 10
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## 常见问题
|
|
235
|
+
|
|
236
|
+
### Q1: 安装时提示 "网络连接失败"
|
|
237
|
+
|
|
238
|
+
**原因**: 无法从 GitHub Releases 下载二进制文件。
|
|
239
|
+
|
|
240
|
+
**解决方案**:
|
|
241
|
+
1. 检查网络连接
|
|
242
|
+
2. 如果在国内,可能需要配置代理
|
|
243
|
+
3. 尝试重新安装:`npm install -g @sokeai/cli`
|
|
244
|
+
|
|
245
|
+
### Q2: 执行 `soke-cli` 提示 "command not found" 或 "不是内部或外部命令"
|
|
246
|
+
|
|
247
|
+
**原因**: 二进制文件不在系统 PATH 中。
|
|
248
|
+
|
|
249
|
+
**解决方案**:
|
|
250
|
+
|
|
251
|
+
**macOS/Linux**:
|
|
252
|
+
```bash
|
|
253
|
+
# 检查安装位置
|
|
254
|
+
which soke-cli
|
|
255
|
+
|
|
256
|
+
# 如果没有输出,手动创建软链接
|
|
257
|
+
sudo ln -s $(npm root -g)/@sokeai/cli/bin/soke-cli /usr/local/bin/soke-cli
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
**Windows**:
|
|
261
|
+
|
|
262
|
+
1. **检查 NPM 全局路径是否在 PATH 中**
|
|
263
|
+
|
|
264
|
+
打开 PowerShell,执行:
|
|
265
|
+
```powershell
|
|
266
|
+
npm config get prefix
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
记下输出的路径(例如:`C:\Users\YourName\AppData\Roaming\npm`)
|
|
270
|
+
|
|
271
|
+
2. **添加到系统 PATH**
|
|
272
|
+
|
|
273
|
+
- 按 `Win + X`,选择"系统"
|
|
274
|
+
- 点击"高级系统设置"
|
|
275
|
+
- 点击"环境变量"
|
|
276
|
+
- 在"用户变量"或"系统变量"中找到 `Path`
|
|
277
|
+
- 点击"编辑",添加上面的 NPM 路径
|
|
278
|
+
- 点击"确定"保存
|
|
279
|
+
|
|
280
|
+
3. **重启终端**
|
|
281
|
+
|
|
282
|
+
关闭并重新打开 PowerShell 或 CMD,再次尝试:
|
|
283
|
+
```cmd
|
|
284
|
+
soke-cli --version
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
**或者使用完整路径运行**:
|
|
288
|
+
```cmd
|
|
289
|
+
# Windows 示例
|
|
290
|
+
%APPDATA%\npm\soke-cli --version
|
|
291
|
+
|
|
292
|
+
# 或者
|
|
293
|
+
C:\Users\YourName\AppData\Roaming\npm\soke-cli.exe --version
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
### Q3: 登录时浏览器没有自动打开
|
|
297
|
+
|
|
298
|
+
**原因**: 系统无法自动打开默认浏览器。
|
|
299
|
+
|
|
300
|
+
**解决方案**:
|
|
301
|
+
1. 复制终端显示的授权链接
|
|
302
|
+
2. 手动在浏览器中打开该链接
|
|
303
|
+
3. 完成授权流程
|
|
304
|
+
|
|
305
|
+
### Q4: 浏览器授权后,CLI 仍显示 "等待授权中..."
|
|
306
|
+
|
|
307
|
+
**原因**:
|
|
308
|
+
- 浏览器授权未成功完成
|
|
309
|
+
- 本地回调服务器端口被占用
|
|
310
|
+
- 网络连接问题
|
|
311
|
+
|
|
312
|
+
**解决方案**:
|
|
313
|
+
1. 确认浏览器页面显示"授权成功"
|
|
314
|
+
2. 检查防火墙是否阻止了本地端口(127.0.0.1)
|
|
315
|
+
3. 按 `Ctrl+C` 取消,重新执行 `soke-cli auth login`
|
|
316
|
+
|
|
317
|
+
### Q5: API 调用返回 "401 Unauthorized"
|
|
318
|
+
|
|
319
|
+
**原因**: Token 已过期或无效。
|
|
320
|
+
|
|
321
|
+
**解决方案**:
|
|
322
|
+
```bash
|
|
323
|
+
# 重新登录
|
|
324
|
+
soke-cli auth logout
|
|
325
|
+
soke-cli auth login
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### Q6: 如何在 AI Agent 中使用?
|
|
329
|
+
|
|
330
|
+
**解决方案**:
|
|
331
|
+
|
|
332
|
+
安装 AI Agent Skills:
|
|
333
|
+
```bash
|
|
334
|
+
npx skills add liuchenlong1111/soke-cli -y -g
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
然后在 AI Agent(如 Claude Code)中直接用自然语言:
|
|
338
|
+
- "查询考试成绩"
|
|
339
|
+
- "列出最近的考试"
|
|
340
|
+
|
|
341
|
+
AI 会自动调用相应的 `soke-cli` 命令。
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## 下一步
|
|
346
|
+
|
|
347
|
+
恭喜!你已经成功安装并配置了 `soke-cli`。接下来你可以:
|
|
348
|
+
|
|
349
|
+
### 📚 学习更多命令
|
|
350
|
+
|
|
351
|
+
查看所有可用命令:
|
|
352
|
+
```bash
|
|
353
|
+
soke-cli --help
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
查看特定模块的命令:
|
|
357
|
+
```bash
|
|
358
|
+
soke-cli course --help
|
|
359
|
+
soke-cli exam --help
|
|
360
|
+
soke-cli contact --help
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
### 🚀 使用业务功能
|
|
364
|
+
|
|
365
|
+
- **课程管理**: `soke-cli course +list-courses`
|
|
366
|
+
- **考试管理**: `soke-cli exam +list-exams`
|
|
367
|
+
- **通讯录**: `soke-cli contact +list-users`
|
|
368
|
+
- **学习地图**: `soke-cli learning-map +list-maps`
|
|
369
|
+
|
|
370
|
+
### 🤖 安装 AI Agent Skills(推荐)
|
|
371
|
+
|
|
372
|
+
```bash
|
|
373
|
+
npx skills add liuchenlong1111/soke-cli -y -g
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
安装后,在 AI Agent 中可以用自然语言操作授客AI平台,无需记忆复杂命令。
|
|
377
|
+
|
|
378
|
+
### 📖 阅读详细文档
|
|
379
|
+
|
|
380
|
+
- [README.md](../README.md) - 项目概览
|
|
381
|
+
- [CLAUDE.md](../CLAUDE.md) - 项目架构和开发规范
|
|
382
|
+
- [skills/README.md](../skills/README.md) - AI Agent Skills 详细说明
|
|
383
|
+
|
|
384
|
+
---
|
|
385
|
+
|
|
386
|
+
## 获取帮助
|
|
387
|
+
|
|
388
|
+
如果遇到问题:
|
|
389
|
+
|
|
390
|
+
1. **查看帮助文档**: `soke-cli --help`
|
|
391
|
+
2. **查看配置**: `soke-cli config show`
|
|
392
|
+
3. **访问开放平台**: https://opendev.soke.cn
|
|
393
|
+
4. **提交 Issue**: https://github.com/liuchenlong1111/soke-cli/issues
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
**祝你使用愉快!** 🎉
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: soke-shared
|
|
3
3
|
summary: 授客CLI共享基础(配置/登录/权限/错误处理/安全规则)
|
|
4
4
|
version: 1.0.0
|
|
5
|
-
description: "授客CLI共享基础:应用配置初始化、认证登录(auth login)、权限管理、错误处理、安全规则。当用户需要第一次配置(soke-cli
|
|
5
|
+
description: "授客CLI共享基础:应用配置初始化、认证登录(auth login)、权限管理、错误处理、安全规则。当用户需要第一次配置(soke-cli auth login)、使用登录授权(soke-cli auth login)、遇到权限不足、或首次使用soke-cli时触发。"
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# soke-cli 共享规则
|
|
@@ -11,13 +11,13 @@ description: "授客CLI共享基础:应用配置初始化、认证登录(aut
|
|
|
11
11
|
|
|
12
12
|
## 配置初始化
|
|
13
13
|
|
|
14
|
-
首次使用需运行 `soke-cli
|
|
14
|
+
首次使用需运行 `soke-cli auth login` 完成应用配置。
|
|
15
15
|
|
|
16
16
|
当你帮用户初始化配置时,引导用户按照交互式提示完成配置:
|
|
17
17
|
|
|
18
18
|
```bash
|
|
19
19
|
# 初始化配置
|
|
20
|
-
soke-cli
|
|
20
|
+
soke-cli auth login
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
配置项包括:
|
|
@@ -159,7 +159,7 @@ A: 重新执行 `soke-cli auth login` 进行授权。
|
|
|
159
159
|
|
|
160
160
|
### Q: 如何切换企业?
|
|
161
161
|
|
|
162
|
-
A: 运行 `soke-cli
|
|
162
|
+
A: 运行 `soke-cli auth login` 重新配置,或直接编辑 `~/.soke-cli/config.json` 文件。
|
|
163
163
|
|
|
164
164
|
### Q: 支持哪些业务模块?
|
|
165
165
|
|