cloudhouse-admin-cli 0.3.3

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 (96) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/LICENSE +21 -0
  3. package/README.md +63 -0
  4. package/SECURITY.md +11 -0
  5. package/THIRD_PARTY_NOTICES.md +7 -0
  6. package/bin/ch.mjs +11 -0
  7. package/docs/00-overview.md +71 -0
  8. package/docs/01-command-reference.md +1206 -0
  9. package/docs/02-agent-contract.md +118 -0
  10. package/docs/03-agent-setup.md +69 -0
  11. package/docs/04-audit.md +3 -0
  12. package/docs/05-release.md +5 -0
  13. package/docs/06-coverage.md +3 -0
  14. package/docs/07-data-analysis.md +105 -0
  15. package/docs/08-installation.md +36 -0
  16. package/docs/security-review.md +26 -0
  17. package/integrations/codex/.agents/plugins/marketplace.json +20 -0
  18. package/integrations/codex/.codex-plugin/plugin.json +10 -0
  19. package/integrations/codex/LICENSE +21 -0
  20. package/integrations/codex/README.md +5 -0
  21. package/integrations/codex/package.json +7 -0
  22. package/integrations/codex/plugin.json +11 -0
  23. package/integrations/codex/skills/cloudhouse-admin/SKILL.md +32 -0
  24. package/integrations/codex/skills/cloudhouse-admin/references/01-command-reference.md +1206 -0
  25. package/integrations/codex/skills/cloudhouse-admin/references/02-agent-contract.md +118 -0
  26. package/integrations/dsh/LICENSE +21 -0
  27. package/integrations/dsh/README.md +14 -0
  28. package/integrations/dsh/index.mjs +7 -0
  29. package/integrations/dsh/package.json +12 -0
  30. package/integrations/dsh/skills/cloudhouse-admin/SKILL.md +32 -0
  31. package/integrations/dsh/skills/cloudhouse-admin/references/01-command-reference.md +1206 -0
  32. package/integrations/dsh/skills/cloudhouse-admin/references/02-agent-contract.md +118 -0
  33. package/integrations/openclaw/LICENSE +21 -0
  34. package/integrations/openclaw/README.md +5 -0
  35. package/integrations/openclaw/package.json +7 -0
  36. package/integrations/openclaw/skills/cloudhouse-admin/SKILL.md +32 -0
  37. package/integrations/openclaw/skills/cloudhouse-admin/references/01-command-reference.md +1206 -0
  38. package/integrations/openclaw/skills/cloudhouse-admin/references/02-agent-contract.md +118 -0
  39. package/integrations/opencode/LICENSE +21 -0
  40. package/integrations/opencode/README.md +5 -0
  41. package/integrations/opencode/package.json +7 -0
  42. package/integrations/opencode/skills/cloudhouse-admin/SKILL.md +32 -0
  43. package/integrations/opencode/skills/cloudhouse-admin/references/01-command-reference.md +1206 -0
  44. package/integrations/opencode/skills/cloudhouse-admin/references/02-agent-contract.md +118 -0
  45. package/integrations/pi/LICENSE +21 -0
  46. package/integrations/pi/README.md +5 -0
  47. package/integrations/pi/package.json +15 -0
  48. package/integrations/pi/skills/cloudhouse-admin/SKILL.md +32 -0
  49. package/integrations/pi/skills/cloudhouse-admin/references/01-command-reference.md +1206 -0
  50. package/integrations/pi/skills/cloudhouse-admin/references/02-agent-contract.md +118 -0
  51. package/package.json +44 -0
  52. package/skills/cloudhouse-admin/SKILL.md +32 -0
  53. package/skills/cloudhouse-admin/references/01-command-reference.md +1206 -0
  54. package/skills/cloudhouse-admin/references/02-agent-contract.md +118 -0
  55. package/src/agent-install.mjs +50 -0
  56. package/src/analysis-resources.json +1207 -0
  57. package/src/argv.mjs +88 -0
  58. package/src/capabilities.mjs +18 -0
  59. package/src/cli.mjs +180 -0
  60. package/src/client.mjs +169 -0
  61. package/src/commands/accounts.mjs +115 -0
  62. package/src/commands/agent.mjs +13 -0
  63. package/src/commands/ai.mjs +420 -0
  64. package/src/commands/analysis.mjs +124 -0
  65. package/src/commands/api.mjs +63 -0
  66. package/src/commands/applies.mjs +89 -0
  67. package/src/commands/assistant.mjs +53 -0
  68. package/src/commands/auth.mjs +109 -0
  69. package/src/commands/candidates.mjs +252 -0
  70. package/src/commands/checkin.mjs +41 -0
  71. package/src/commands/dashboard.mjs +11 -0
  72. package/src/commands/evaluations.mjs +27 -0
  73. package/src/commands/extended.mjs +96 -0
  74. package/src/commands/feishu.mjs +31 -0
  75. package/src/commands/groups.mjs +66 -0
  76. package/src/commands/index.mjs +101 -0
  77. package/src/commands/interviews.mjs +151 -0
  78. package/src/commands/load.mjs +27 -0
  79. package/src/commands/notifications.mjs +131 -0
  80. package/src/commands/plans.mjs +90 -0
  81. package/src/commands/profile.mjs +43 -0
  82. package/src/commands/slots.mjs +95 -0
  83. package/src/commands/uploads.mjs +169 -0
  84. package/src/config.mjs +68 -0
  85. package/src/errors.mjs +156 -0
  86. package/src/flags.mjs +114 -0
  87. package/src/idempotent.mjs +75 -0
  88. package/src/output.mjs +138 -0
  89. package/src/path.mjs +40 -0
  90. package/src/payload.mjs +137 -0
  91. package/src/prompt.mjs +47 -0
  92. package/src/query.mjs +44 -0
  93. package/src/sensitive.mjs +50 -0
  94. package/src/session.mjs +94 -0
  95. package/src/time.mjs +87 -0
  96. package/src/version.mjs +1 -0
@@ -0,0 +1,1206 @@
1
+ # CLI 命令参考(0.3.3)
2
+
3
+ 由注册表生成;Agent 指定 `--profile prod --json`。
4
+
5
+ 全局:`--profile`、`--base-url`、`--timeout`、`--pretty`、`--json`、`--no-pretty`、`--help`、`--allow-profile-mismatch`;`ch --version` 离线输出版本。`--request-id` 只在 `ch ai *` 写命令上有效。支持 JSON 载荷的写命令可用 `-d/--data`;`--request-id` 只用于能力目录标注支持的动作。
6
+
7
+ 数据分析需要独立授权,参见 [数据分析指南](07-data-analysis.md)。
8
+
9
+ ## ch api
10
+
11
+ 通用兜底:调用任意 API 端点
12
+
13
+ ```bash
14
+ ch api <METHOD> <path> [-q key=value ...] [-d <json|@file>] [-H "Name: value" ...] [--public]
15
+ ```
16
+
17
+ 参数:`-H`、`--allow-profile-mismatch`、`--base-url`、`-d`、`--help`、`--json`、`--pretty`、`--profile`、`--public`、`-q`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
18
+
19
+ ## ch login
20
+
21
+ 登录并保存会话(token 落盘 0600,含滚动续期自动换存)
22
+
23
+ ```bash
24
+ ch login [--studentNo <学号>] [--password <密码>] [--profile local|prod] [--show-token]
25
+ ```
26
+
27
+ 接口:`POST /auth/login`。
28
+
29
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--password`、`--pretty`、`--profile`、`--show-token`、`--studentNo`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
30
+
31
+ ## ch whoami
32
+
33
+ 查看当前会话与管理员权限(adminLevel / authorizedGroups)
34
+
35
+ ```bash
36
+ ch whoami
37
+ ```
38
+
39
+ 接口:`GET /admin/profile`。
40
+
41
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
42
+
43
+ ## ch logout
44
+
45
+ 删除本地会话文件(不影响服务端 token,直至自然过期)
46
+
47
+ ```bash
48
+ ch logout
49
+ ```
50
+
51
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
52
+
53
+ ## ch auth status
54
+
55
+ 查看当前会话与管理员权限(adminLevel / authorizedGroups)
56
+
57
+ ```bash
58
+ ch auth status
59
+ ```
60
+
61
+ 接口:`GET /admin/profile`。
62
+
63
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
64
+
65
+ ## ch dashboard
66
+
67
+ 招新总览统计(报名/录取/待处理/场次占用)
68
+
69
+ ```bash
70
+ ch dashboard [--pretty]
71
+ ```
72
+
73
+ 接口:`GET /admin/dashboard`。
74
+
75
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
76
+
77
+ ## ch groups list
78
+
79
+ 组别列表
80
+
81
+ ```bash
82
+ ch groups list [--pretty]
83
+ ```
84
+
85
+ 接口:`GET /groups`。
86
+
87
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
88
+
89
+ ## ch groups create
90
+
91
+ 创建组别(SUPER/SYSTEM)
92
+
93
+ ```bash
94
+ ch groups create --group-name 名称 [--introduction 简介] [--requirement 要求≤65字]
95
+ ```
96
+
97
+ 接口:`POST /groups`。
98
+
99
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--group-name`、`--help`、`--introduction`、`--json`、`--pretty`、`--profile`、`--requirement`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
100
+
101
+ ## ch groups update
102
+
103
+ 更新组别
104
+
105
+ ```bash
106
+ ch groups update <id> --group-name 名称 [--introduction 简介] [--requirement 要求≤65字]
107
+ ```
108
+
109
+ 接口:`PUT /groups/{id}`。
110
+
111
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--group-name`、`--help`、`--introduction`、`--json`、`--pretty`、`--profile`、`--requirement`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
112
+
113
+ ## ch groups delete
114
+
115
+ 删除组别(SUPER/SYSTEM)
116
+
117
+ ```bash
118
+ ch groups delete <id>
119
+ ```
120
+
121
+ 接口:`DELETE /groups/{id}`。
122
+
123
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
124
+
125
+ ## ch candidates list
126
+
127
+ 候选人分页列表(后端过滤分页;全部筛选 AND)
128
+
129
+ ```bash
130
+ ch candidates list [--page N] [--size N] [--keyword 关键词] [--status 1|2|3] [--second-round-group-id N] [--third-round-group-id N] [--third-round-choice-state ALL|SELECTED|UNSELECTED] [--starred true|false] [--starred-admin-id N] [--starred-by-me true|false]
131
+ ```
132
+
133
+ 接口:`GET /admin/users/info/page`。
134
+
135
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--keyword`、`--page`、`--pretty`、`--profile`、`--second-round-group-id`、`--size`、`--starred`、`--starred-admin-id`、`--starred-by-me`、`--status`、`--third-round-choice-state`、`--third-round-group-id`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
136
+
137
+ ## ch candidates list-all
138
+
139
+ 候选人全量列表(旧接口,后端最多返回 200 条)
140
+
141
+ ```bash
142
+ ch candidates list-all [--pretty]
143
+ ```
144
+
145
+ 接口:`GET /admin/users/info`。
146
+
147
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
148
+
149
+ ## ch candidates get
150
+
151
+ 候选人档案详情
152
+
153
+ ```bash
154
+ ch candidates get <userId>
155
+ ```
156
+
157
+ 接口:`GET /users/{userId}/info`。
158
+
159
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
160
+
161
+ ## ch candidates application
162
+
163
+ 候选人报名记录
164
+
165
+ ```bash
166
+ ch candidates application <userId>
167
+ ```
168
+
169
+ 接口:`GET /users/{userId}/application`。
170
+
171
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
172
+
173
+ ## ch candidates interviews
174
+
175
+ 候选人的全部面试记录
176
+
177
+ ```bash
178
+ ch candidates interviews <userId>
179
+ ```
180
+
181
+ 接口:`GET /users/{userId}/interviews`。
182
+
183
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
184
+
185
+ ## ch candidates evaluations
186
+
187
+ 候选人的全部面评
188
+
189
+ ```bash
190
+ ch candidates evaluations <userId>
191
+ ```
192
+
193
+ 接口:`GET /admin/candidates/{userId}/evaluations`。
194
+
195
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
196
+
197
+ ## ch candidates starred-admins
198
+
199
+ 特别关注面试官列表(含打星统计)
200
+
201
+ ```bash
202
+ ch candidates starred-admins [--pretty]
203
+ ```
204
+
205
+ 接口:`GET /admin/candidates/starred-admins`。
206
+
207
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
208
+
209
+ ## ch candidates second-round-groups
210
+
211
+ 候选人二轮自选组别
212
+
213
+ ```bash
214
+ ch candidates second-round-groups <userId>
215
+ ```
216
+
217
+ 接口:`GET /users/{userId}/second-round-groups`。
218
+
219
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
220
+
221
+ ## ch candidates third-round-choice
222
+
223
+ 候选人三面选组上下文
224
+
225
+ ```bash
226
+ ch candidates third-round-choice <userId>
227
+ ```
228
+
229
+ 接口:`GET /admin/users/{userId}/third-round-choice`。
230
+
231
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
232
+
233
+ ## ch applications list
234
+
235
+ 报名记录分页列表
236
+
237
+ ```bash
238
+ ch applications list [--page N] [--size N]
239
+ ```
240
+
241
+ 接口:`GET /admin/applications/page`。
242
+
243
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--page`、`--pretty`、`--profile`、`--size`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
244
+
245
+ ## ch applications list-all
246
+
247
+ 报名记录全量列表(旧接口,后端最多返回 200 条)
248
+
249
+ ```bash
250
+ ch applications list-all [--pretty]
251
+ ```
252
+
253
+ 接口:`GET /admin/applications`。
254
+
255
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
256
+
257
+ ## ch second-round-choices
258
+
259
+ 二轮考核组别自选全量列表
260
+
261
+ ```bash
262
+ ch second-round-choices [--pretty]
263
+ ```
264
+
265
+ 接口:`GET /admin/second-round-choices`。
266
+
267
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
268
+
269
+ ## ch candidates set-third-round-choice
270
+
271
+ 修改候选人三面最终组别(原因必填;version 自动重读重试)
272
+
273
+ ```bash
274
+ ch candidates set-third-round-choice <userId> --group-id N --reason 原因 [--version N]
275
+ ```
276
+
277
+ 接口:`PUT /admin/users/{userId}/third-round-choice`。
278
+
279
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--group-id`、`--help`、`--json`、`--pretty`、`--profile`、`--reason`、`--timeout`、`--version`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
280
+
281
+ ## ch candidates star
282
+
283
+ 切换对候选人的特别关注标记
284
+
285
+ ```bash
286
+ ch candidates star <userId> --starred true|false
287
+ ```
288
+
289
+ 接口:`POST /admin/candidates/{userId}/star`。
290
+
291
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--starred`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
292
+
293
+ ## ch candidates update
294
+
295
+ 手动调整成员资料(仅更新传入字段)
296
+
297
+ ```bash
298
+ ch candidates update <userId> -d '{"realName":"张三","phone":"138..."}'
299
+ ```
300
+
301
+ 接口:`PUT /users/{userId}/info`。
302
+
303
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
304
+
305
+ ## ch candidates application-status
306
+
307
+ 调整报名状态(仅未产生面试记录时可用)
308
+
309
+ ```bash
310
+ ch candidates application-status <userId> --status 1|2|3
311
+ ```
312
+
313
+ 接口:`PATCH /admin/applications/{userId}/status`。
314
+
315
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
316
+
317
+ ## ch candidates set-second-round-groups
318
+
319
+ 设置候选人二轮考核组别
320
+
321
+ ```bash
322
+ ch candidates set-second-round-groups <userId> --group-ids 1,2
323
+ ```
324
+
325
+ 接口:`PUT /users/{userId}/second-round-groups`。
326
+
327
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--group-ids`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
328
+
329
+ ## ch candidates unbind-wechat
330
+
331
+ 解除候选人微信绑定(原因必填;后端同时失效其会话)
332
+
333
+ ```bash
334
+ ch candidates unbind-wechat <userId> --reason 原因
335
+ ```
336
+
337
+ 接口:`DELETE /admin/users/{userId}/wechat-binding`。
338
+
339
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--reason`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
340
+
341
+ ## ch plans list
342
+
343
+ 考核方案列表(一面/二轮/三面方案)
344
+
345
+ ```bash
346
+ ch plans list [--round 1|2|3] [--scope-group-id N] [--status 1|2] [--pretty]
347
+ ```
348
+
349
+ 接口:`GET /admin/interview-plans`。
350
+
351
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--round`、`--scope-group-id`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
352
+
353
+ ## ch plans create
354
+
355
+ 创建考核方案
356
+
357
+ ```bash
358
+ ch plans create --round 1|2|3 --scope-group-id N --assessment-content 内容 [--assessment-image-url U] [--assessment-file-url U] [--assessment-file-name 名] [--pass-text-content T] [--pass-image-url U] [--fail-text-content T] [--fail-image-url U] [--booking-start-time "2026-09-28 14:00"] [--booking-end-time "..."] [--publish-mode REALTIME|SCHEDULED] [--publish-time "..."] [-d json]
359
+ ```
360
+
361
+ 接口:`POST /admin/interview-plans`。
362
+
363
+ 参数:`--allow-profile-mismatch`、`--assessment-content`、`--assessment-file-name`、`--assessment-file-url`、`--assessment-image-url`、`--base-url`、`--booking-end-time`、`--booking-start-time`、`-d`、`--data`、`--fail-image-url`、`--fail-text-content`、`--help`、`--json`、`--pass-image-url`、`--pass-text-content`、`--pretty`、`--profile`、`--publish-mode`、`--publish-time`、`--round`、`--scope-group-id`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
364
+
365
+ ## ch plans update
366
+
367
+ 更新考核方案(未停用且无场次时可改)
368
+
369
+ ```bash
370
+ ch plans update <planId> [--assessment-content 内容] [--status 1|2] [--publish-mode ...] [--publish-time ...] [-d json]
371
+ ```
372
+
373
+ 接口:`PUT /admin/interview-plans/{planId}`。
374
+
375
+ 参数:`--allow-profile-mismatch`、`--assessment-content`、`--assessment-file-name`、`--assessment-file-url`、`--assessment-image-url`、`--base-url`、`--booking-end-time`、`--booking-start-time`、`-d`、`--data`、`--fail-image-url`、`--fail-text-content`、`--help`、`--json`、`--pass-image-url`、`--pass-text-content`、`--pretty`、`--profile`、`--publish-mode`、`--publish-time`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
376
+
377
+ ## ch plans delete
378
+
379
+ 删除已停用且无场次的考核方案
380
+
381
+ ```bash
382
+ ch plans delete <planId>
383
+ ```
384
+
385
+ 接口:`DELETE /admin/interview-plans/{planId}`。
386
+
387
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
388
+
389
+ ## ch slots list
390
+
391
+ 面试场次列表
392
+
393
+ ```bash
394
+ ch slots list [--round 1|2|3] [--scope-group-id N] [--plan-id N] [--status 1|2] [--pretty]
395
+ ```
396
+
397
+ 接口:`GET /admin/interview-slots`。
398
+
399
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--plan-id`、`--pretty`、`--profile`、`--round`、`--scope-group-id`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
400
+
401
+ ## ch slots qr
402
+
403
+ 场次签到二维码/口令
404
+
405
+ ```bash
406
+ ch slots qr <slotId>
407
+ ```
408
+
409
+ 接口:`GET /admin/interview-slots/{slotId}/checkin-qr`。
410
+
411
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
412
+
413
+ ## ch slots create
414
+
415
+ 创建面试场次
416
+
417
+ ```bash
418
+ ch slots create --plan-id N --slot-time "2026-09-28 14:00" --location 教学楼A301 --capacity 5
419
+ ```
420
+
421
+ 接口:`POST /admin/interview-slots`。
422
+
423
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--capacity`、`-d`、`--data`、`--help`、`--json`、`--location`、`--plan-id`、`--pretty`、`--profile`、`--slot-time`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
424
+
425
+ ## ch slots update
426
+
427
+ 更新面试场次
428
+
429
+ ```bash
430
+ ch slots update <slotId> [--slot-time "..."] [--location 地点] [--capacity N] [--status 1|2]
431
+ ```
432
+
433
+ 接口:`PUT /admin/interview-slots/{slotId}`。
434
+
435
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--capacity`、`-d`、`--data`、`--help`、`--json`、`--location`、`--pretty`、`--profile`、`--slot-time`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
436
+
437
+ ## ch slots close
438
+
439
+ 关闭场次(停止预约)
440
+
441
+ ```bash
442
+ ch slots close <slotId>
443
+ ```
444
+
445
+ 接口:`PUT /admin/interview-slots/{slotId}/close`。
446
+
447
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
448
+
449
+ ## ch slots delete
450
+
451
+ 删除场次
452
+
453
+ ```bash
454
+ ch slots delete <slotId>
455
+ ```
456
+
457
+ 接口:`DELETE /admin/interview-slots/{slotId}`。
458
+
459
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
460
+
461
+ ## ch interviews list
462
+
463
+ 面试名单(按轮次/组别/场次/结果筛选)
464
+
465
+ ```bash
466
+ ch interviews list --round 1|2|3 [--group-id N] [--slot-id N] [--result 1|2|3] [--pretty]
467
+ ```
468
+
469
+ 接口:`GET /admin/interviews`。
470
+
471
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--group-id`、`--help`、`--json`、`--pretty`、`--profile`、`--result`、`--round`、`--slot-id`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
472
+
473
+ ## ch interviews search
474
+
475
+ 跨轮次搜索面试记录与面评关键词
476
+
477
+ ```bash
478
+ ch interviews search [--keyword 关键词] [--round N] [--group-id N] [--result 1|2|3] [--pretty]
479
+ ```
480
+
481
+ 接口:`GET /admin/interviews/search`。
482
+
483
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--group-id`、`--help`、`--json`、`--keyword`、`--pretty`、`--profile`、`--result`、`--round`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
484
+
485
+ ## ch interviews statistics
486
+
487
+ 按轮次/组别的面试统计
488
+
489
+ ```bash
490
+ ch interviews statistics [--round N] [--group-id N] [--pretty]
491
+ ```
492
+
493
+ 接口:`GET /admin/interviews/statistics`。
494
+
495
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--group-id`、`--help`、`--json`、`--pretty`、`--profile`、`--round`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
496
+
497
+ ## ch interviews reschedule-options
498
+
499
+ 管理员改约候选项(可改约的场次)
500
+
501
+ ```bash
502
+ ch interviews reschedule-options <interviewId>
503
+ ```
504
+
505
+ 接口:`GET /admin/interviews/{interviewId}/reschedule-options`。
506
+
507
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
508
+
509
+ ## ch interviews result
510
+
511
+ 录入/修改单条面试结果
512
+
513
+ ```bash
514
+ ch interviews result <interviewId> --result 1|2|3 [--remark 备注]
515
+ ```
516
+
517
+ 接口:`PATCH /admin/interviews/{interviewId}/result`。
518
+
519
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--remark`、`--result`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
520
+
521
+ ## ch interviews attendance
522
+
523
+ 补录/修正面试到场状态
524
+
525
+ ```bash
526
+ ch interviews attendance <interviewId> --status ARRIVED|LATE|NO_SHOW|NOT_CHECKED_IN|CANCELLED [--reason 原因]
527
+ ```
528
+
529
+ 接口:`POST /admin/interviews/{interviewId}/attendance`。
530
+
531
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--reason`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
532
+
533
+ ## ch interviews reschedule
534
+
535
+ 管理员为候选人改约场次
536
+
537
+ ```bash
538
+ ch interviews reschedule <interviewId> --slot <slotId>
539
+ ```
540
+
541
+ 接口:`PUT /admin/interviews/{interviewId}/slot`。
542
+
543
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--slot`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
544
+
545
+ ## ch interviews batch-result
546
+
547
+ 批量录入面试结果
548
+
549
+ ```bash
550
+ ch interviews batch-result -d <json|@file> # {"round":1,"groupId":2,"results":[{"interviewId":11,"result":1,"remark":"..."}]}
551
+ ```
552
+
553
+ 接口:`POST /admin/interviews/batch-result`。
554
+
555
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
556
+
557
+ ## ch evaluations add
558
+
559
+ 提交面试评价(评语必填,评分 0-100 整数选填)
560
+
561
+ ```bash
562
+ ch evaluations add <interviewId> --content 评语 [--score 85]
563
+ ```
564
+
565
+ 接口:`POST /admin/interviews/{interviewId}/evaluations`。
566
+
567
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--content`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--score`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
568
+
569
+ ## ch notifications list
570
+
571
+ 横幅通知列表
572
+
573
+ ```bash
574
+ ch notifications list [--scope-type ALL|ROUND|GROUP|ROUND_GROUP|SLOT] [--status 1|2] [--pretty]
575
+ ```
576
+
577
+ 接口:`GET /admin/notifications`。
578
+
579
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--scope-type`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
580
+
581
+ ## ch notifications create
582
+
583
+ 发布横幅通知
584
+
585
+ ```bash
586
+ ch notifications create --title 标题 --content 内容 --notice-level INFO|WARNING|URGENT --scope-type ALL|ROUND|GROUP|ROUND_GROUP|SLOT [--target-round N] [--target-group-id N] [--target-slot-id N] [--start-time "..."] [--end-time "..."] [--status 1|2]
587
+ ```
588
+
589
+ 接口:`POST /admin/notifications`。
590
+
591
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--content`、`-d`、`--data`、`--end-time`、`--help`、`--json`、`--notice-level`、`--pretty`、`--profile`、`--scope-type`、`--start-time`、`--status`、`--target-group-id`、`--target-round`、`--target-slot-id`、`--timeout`、`--title`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
592
+
593
+ ## ch notifications update
594
+
595
+ 编辑横幅通知
596
+
597
+ ```bash
598
+ ch notifications update <id> [--title ...] [--content ...] [--notice-level ...] [--scope-type ...] [--start-time ...] [--end-time ...]
599
+ ```
600
+
601
+ 接口:`PUT /admin/notifications/{id}`。
602
+
603
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--content`、`-d`、`--data`、`--end-time`、`--help`、`--json`、`--notice-level`、`--pretty`、`--profile`、`--scope-type`、`--start-time`、`--status`、`--target-group-id`、`--target-round`、`--target-slot-id`、`--timeout`、`--title`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
604
+
605
+ ## ch notifications status
606
+
607
+ 上/下线路横幅通知
608
+
609
+ ```bash
610
+ ch notifications status <id> --status 1|2
611
+ ```
612
+
613
+ 接口:`PATCH /admin/notifications/{id}/status`。
614
+
615
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
616
+
617
+ ## ch notifications delete
618
+
619
+ 删除横幅通知
620
+
621
+ ```bash
622
+ ch notifications delete <id>
623
+ ```
624
+
625
+ 接口:`DELETE /admin/notifications/{id}`。
626
+
627
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
628
+
629
+ ## ch assistant search
630
+
631
+ 面试官工作台:按学号/姓名搜索候选人
632
+
633
+ ```bash
634
+ ch assistant search --keyword 张三
635
+ ```
636
+
637
+ 接口:`GET /admin/assistant/search`。
638
+
639
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--keyword`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
640
+
641
+ ## ch assistant profile
642
+
643
+ 面试官工作台:候选人一屏档案(含全部场次与历史评价)
644
+
645
+ ```bash
646
+ ch assistant profile <userId>
647
+ ```
648
+
649
+ 接口:`GET /admin/assistant/candidates/{userId}`。
650
+
651
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
652
+
653
+ ## ch assistant submit
654
+
655
+ 面试官工作台:现场打分提交(结果+评语必填)
656
+
657
+ ```bash
658
+ ch assistant submit --interview-id N --result 1|2|3 --evaluation-content 评语 [--score 85] [--starred true|false]
659
+ ```
660
+
661
+ 接口:`POST /admin/assistant/submit`。
662
+
663
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--evaluation-content`、`--help`、`--interview-id`、`--json`、`--pretty`、`--profile`、`--result`、`--score`、`--starred`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
664
+
665
+ ## ch uploads image
666
+
667
+ 上传图片(JPG/PNG/WebP,≤2MB)
668
+
669
+ ```bash
670
+ ch uploads image <文件路径>
671
+ ```
672
+
673
+ 接口:`POST /admin/uploads`。
674
+
675
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--file`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
676
+
677
+ ## ch uploads assessment
678
+
679
+ 上传考核附件(PDF/DOC/DOCX/XLS/XLSX/CSV/ZIP/RAR/7Z/TAR/MD,≤10MB)
680
+
681
+ ```bash
682
+ ch uploads assessment <文件路径>
683
+ ```
684
+
685
+ 接口:`POST /admin/uploads/assessment-files`。
686
+
687
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--file`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
688
+
689
+ ## ch uploads ai-attachment
690
+
691
+ 上传 AI Coding 题包附件(≤10MB)
692
+
693
+ ```bash
694
+ ch uploads ai-attachment <文件路径>
695
+ ```
696
+
697
+ 接口:`POST /admin/ai-coding/paper-attachments`。
698
+
699
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--file`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
700
+
701
+ ## ch uploads attachment-download
702
+
703
+ 下载 AI Coding 题包附件到本地文件
704
+
705
+ ```bash
706
+ ch uploads attachment-download <attachmentId> --name 文件名 [--out 输出路径]
707
+ ```
708
+
709
+ 接口:`GET /admin/ai-coding/paper-attachments/{attachmentId}`。
710
+
711
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--force`、`--help`、`--json`、`--name`、`--out`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
712
+
713
+ ## ch accounts list
714
+
715
+ 管理员账号列表
716
+
717
+ ```bash
718
+ ch accounts list [--pretty]
719
+ ```
720
+
721
+ 接口:`GET /admin/accounts`。
722
+
723
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
724
+
725
+ ## ch accounts create
726
+
727
+ 创建分级管理员账号
728
+
729
+ ```bash
730
+ ch accounts create --studentNo 10位学号 --password 密码 [--real-name 姓名] --admin-level SUPER|REGULAR|INTERVIEWER [--authorized-group-ids 1,2]
731
+ ```
732
+
733
+ 接口:`POST /admin/accounts`。
734
+
735
+ 参数:`--admin-level`、`--allow-profile-mismatch`、`--authorized-group-ids`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--password`、`--pretty`、`--profile`、`--real-name`、`--studentNo`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
736
+
737
+ ## ch accounts batch
738
+
739
+ 批量创建同级别管理员账号
740
+
741
+ ```bash
742
+ ch accounts batch --count N --password 初始密码 --admin-level SUPER|REGULAR|INTERVIEWER [--authorized-group-ids 1,2]
743
+ ```
744
+
745
+ 接口:`POST /admin/accounts/batch`。
746
+
747
+ 参数:`--admin-level`、`--allow-profile-mismatch`、`--authorized-group-ids`、`--base-url`、`--count`、`-d`、`--data`、`--help`、`--json`、`--password`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
748
+
749
+ ## ch accounts update
750
+
751
+ 修改管理员资料/级别/授权组别
752
+
753
+ ```bash
754
+ ch accounts update <id> [--real-name 姓名] [--admin-level SUPER|REGULAR|INTERVIEWER] [--authorized-group-ids 1,2]
755
+ ```
756
+
757
+ 接口:`PUT /admin/accounts/{id}`。
758
+
759
+ 参数:`--admin-level`、`--allow-profile-mismatch`、`--authorized-group-ids`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--real-name`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
760
+
761
+ ## ch accounts reset-password
762
+
763
+ 重置管理员密码
764
+
765
+ ```bash
766
+ ch accounts reset-password <id> --password 新密码
767
+ ```
768
+
769
+ 接口:`PUT /admin/accounts/{id}/password`。
770
+
771
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--password`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
772
+
773
+ ## ch accounts delete
774
+
775
+ 删除管理员账号(初始管理员与自身由后端拒绝)
776
+
777
+ ```bash
778
+ ch accounts delete <id>
779
+ ```
780
+
781
+ 接口:`DELETE /admin/accounts/{id}`。
782
+
783
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
784
+
785
+ ## ch applies list
786
+
787
+ 管理员申请审批列表
788
+
789
+ ```bash
790
+ ch applies list [--status 0|1|2] [--pretty]
791
+ ```
792
+
793
+ 接口:`GET /admin/account-applications`。
794
+
795
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
796
+
797
+ ## ch applies pending-count
798
+
799
+ 未审批申请数量
800
+
801
+ ```bash
802
+ ch applies pending-count
803
+ ```
804
+
805
+ 接口:`GET /admin/account-applications/pending-count`。
806
+
807
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
808
+
809
+ ## ch applies approve
810
+
811
+ 审批通过(自动开通账号,账号=学号,初始密码=学号)
812
+
813
+ ```bash
814
+ ch applies approve <id>
815
+ ```
816
+
817
+ 接口:`POST /admin/account-applications/{id}/approve`。
818
+
819
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
820
+
821
+ ## ch applies reject
822
+
823
+ 驳回申请(原因必填)
824
+
825
+ ```bash
826
+ ch applies reject <id> --reason 驳回原因
827
+ ```
828
+
829
+ 接口:`POST /admin/account-applications/{id}/reject`。
830
+
831
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--reason`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
832
+
833
+ ## ch applies status
834
+
835
+ 按学号查询申请进度(公开接口,免登录)
836
+
837
+ ```bash
838
+ ch applies status <studentNo>
839
+ ```
840
+
841
+ 接口:`GET /account-applications/status`。
842
+
843
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
844
+
845
+ ## ch applies submit
846
+
847
+ 提交管理员账号申请(公开接口,免登录)
848
+
849
+ ```bash
850
+ ch applies submit --studentNo 10位学号 --real-name 姓名 --position-code CAPTAIN|LEADER|MEMBER [--apply-group-id N]
851
+ ```
852
+
853
+ 接口:`POST /account-applications`。
854
+
855
+ 参数:`--allow-profile-mismatch`、`--apply-group-id`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--position-code`、`--pretty`、`--profile`、`--real-name`、`--studentNo`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
856
+
857
+ ## ch profile get
858
+
859
+ 当前管理员个人资料
860
+
861
+ ```bash
862
+ ch profile get
863
+ ```
864
+
865
+ 接口:`GET /admin/profile`。
866
+
867
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
868
+
869
+ ## ch profile update
870
+
871
+ 修改个人资料
872
+
873
+ ```bash
874
+ ch profile update --real-name 姓名 [--group-id N] [--phone 手机号]
875
+ ```
876
+
877
+ 接口:`PUT /admin/profile`。
878
+
879
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--group-id`、`--help`、`--json`、`--phone`、`--pretty`、`--profile`、`--real-name`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
880
+
881
+ ## ch profile change-password
882
+
883
+ 修改当前账号登录密码
884
+
885
+ ```bash
886
+ ch profile change-password --password 新密码
887
+ ```
888
+
889
+ 接口:`PUT /admin/profile/password`。
890
+
891
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--password`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
892
+
893
+ ## ch ai plans
894
+
895
+ AI Coding 计划:list/get/create/update/publish/withdraw/starts/publication/credential
896
+
897
+ ```bash
898
+ ch ai plans list [--page N] [--page-size N] [--status DRAFT|PUBLISHED] [--group-id N]
899
+ ch ai plans get <id>
900
+ ch ai plans create --name 名 --group-ids 1,2 [--opens-at "..."] [--closes-at "..."] [--publish-at "..."] [--survey-seconds N] [--coding-seconds N] [--reflection-seconds N] [--reflection-mode STATIC|PERSONALIZED] [-d @plan.json]
901
+ ch ai plans update <id> [...同 create...] [--version N] # version 缺省自动重读
902
+ ch ai plans publish <id>
903
+ ch ai plans withdraw <id> --reason 原因
904
+ ch ai plans starts <id> --paused true|false --reason 原因
905
+ ch ai plans publication <id> --publish-at "..." --reason 原因
906
+ ch ai plans credential <id> <modelId> --api-key sk-... --reason 原因
907
+ ```
908
+
909
+ 接口:`GET /admin/ai-coding/plans`、`POST /admin/ai-coding/plans`、`GET /admin/ai-coding/plans/{id}`、`PUT /admin/ai-coding/plans/{id}`、`POST /admin/ai-coding/plans/{id}/publish`、`POST /admin/ai-coding/plans/{id}/withdraw`、`PATCH /admin/ai-coding/plans/{id}/starts`、`PATCH /admin/ai-coding/plans/{id}/publication`、`PUT /admin/ai-coding/plans/{id}/models/{modelId}/credential`。
910
+
911
+ 参数:`--allow-profile-mismatch`、`--api-key`、`--base-url`、`--closes-at`、`--coding-seconds`、`-d`、`--data`、`--group-id`、`--group-ids`、`--help`、`--json`、`--name`、`--opens-at`、`--page`、`--page-size`、`--paused`、`--pretty`、`--profile`、`--publish-at`、`--reason`、`--reflection-mode`、`--reflection-seconds`、`--request-id`、`--status`、`--survey-seconds`、`--timeout`、`--version`、`--key-version`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
912
+
913
+ ## ch ai attempts
914
+
915
+ AI Coding 考次:list/get/grade/void
916
+
917
+ ```bash
918
+ ch ai attempts list [--page N] [--page-size N] [--plan-id N] [--group-id N] [--state SURVEY|CODING|REFLECTION|SUBMITTED|VOIDED] [--grade-state UNGRADED|HIDDEN|PUBLISHED|VOIDED] [--keyword 关键词]
919
+ ch ai attempts get <id>
920
+ ch ai attempts grade <id> --score 85 --public-comment 公开评价 --internal-comment 内部评价 [--reason 修正原因]
921
+ ch ai attempts void <id> --reason 原因
922
+ ```
923
+
924
+ 接口:`GET /admin/ai-coding/attempts`、`GET /admin/ai-coding/attempts/{id}`、`PUT /admin/ai-coding/attempts/{id}/grade`、`POST /admin/ai-coding/attempts/{id}/void`。
925
+
926
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--grade-state`、`--group-id`、`--help`、`--internal-comment`、`--json`、`--keyword`、`--page`、`--page-size`、`--plan-id`、`--pretty`、`--profile`、`--public-comment`、`--reason`、`--request-id`、`--score`、`--state`、`--timeout`、`--version`、`--expected-revision`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
927
+
928
+ ## ch ai candidates
929
+
930
+ AI Coding 考生资格:list/retake(安排重考)
931
+
932
+ ```bash
933
+ ch ai candidates list [--page N] [--page-size N] [--plan-id N] [--group-id N] [--eligibility NOT_REQUIRED|WAITING_SELECTION|INELIGIBLE|EXEMPT|REQUIRED] [--keyword 关键词]
934
+ ch ai candidates retake <userId> --plan-id N --assignment-version N --opens-at "..." --closes-at "..." --reason 原因
935
+ ```
936
+
937
+ 接口:`GET /admin/ai-coding/candidates`、`POST /admin/ai-coding/candidates/{userId}/retake`。
938
+
939
+ 参数:`--allow-profile-mismatch`、`--assignment-version`、`--base-url`、`--closes-at`、`-d`、`--data`、`--eligibility`、`--group-id`、`--help`、`--json`、`--keyword`、`--opens-at`、`--page`、`--page-size`、`--plan-id`、`--pretty`、`--profile`、`--reason`、`--request-id`、`--timeout`、`--version`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
940
+
941
+ ## ch feishu status
942
+
943
+ 飞书签到集成状态
944
+
945
+ ```bash
946
+ ch feishu status [--pretty]
947
+ ```
948
+
949
+ 接口:`GET /admin/feishu/status`。
950
+
951
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
952
+
953
+ ## ch feishu reconcile
954
+
955
+ 触发飞书场次双向对账
956
+
957
+ ```bash
958
+ ch feishu reconcile
959
+ ```
960
+
961
+ 接口:`POST /admin/feishu/reconcile`。
962
+
963
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
964
+
965
+ ## ch feishu conflicts
966
+
967
+ 飞书同步冲突列表
968
+
969
+ ```bash
970
+ ch feishu conflicts [--pretty]
971
+ ```
972
+
973
+ 接口:`GET /admin/feishu/conflicts`。
974
+
975
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
976
+
977
+ ## ch checkin launch
978
+
979
+ 创建签到大屏会话(8 小时有效,screenToken 仅经 header 传递,不落盘)
980
+
981
+ ```bash
982
+ ch checkin launch
983
+ ```
984
+
985
+ 接口:`POST /admin/checkin-screens`。
986
+
987
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
988
+
989
+ ## ch checkin snapshot
990
+
991
+ 读取签到大屏当前快照(screenToken 经 X-Checkin-Screen-Token header,绝不携带管理员 JWT)
992
+
993
+ ```bash
994
+ ch checkin snapshot --screen-token <token> [--group-id N ...]
995
+ ```
996
+
997
+ 接口:`GET /checkin-screens/current`。
998
+
999
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--group-id`、`--help`、`--json`、`--pretty`、`--profile`、`--screen-token`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1000
+
1001
+ ## ch second-round-choices page
1002
+
1003
+ 分页查询二轮组别选择
1004
+
1005
+ ```bash
1006
+ ch second-round-choices page [--page N] [--size N]
1007
+ ```
1008
+
1009
+ 接口:`GET /admin/second-round-choices/page`。
1010
+
1011
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--page`、`--pretty`、`--profile`、`--size`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1012
+
1013
+ ## ch slots attendance
1014
+
1015
+ 查看场次到场名单
1016
+
1017
+ ```bash
1018
+ ch slots attendance <slotId>
1019
+ ```
1020
+
1021
+ 接口:`GET /admin/interview-slots/{slotId}/attendance`。
1022
+
1023
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1024
+
1025
+ ## ch feishu backfill-absence
1026
+
1027
+ 补推当天缺勤通知(会向真人发送通知,仅全局管理员)
1028
+
1029
+ ```bash
1030
+ ch feishu backfill-absence
1031
+ ```
1032
+
1033
+ 接口:`POST /admin/feishu/notifications/backfill-today-absence`。
1034
+
1035
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1036
+
1037
+ ## ch feishu refresh-document
1038
+
1039
+ 刷新飞书场次文档(外部写入,仅全局管理员)
1040
+
1041
+ ```bash
1042
+ ch feishu refresh-document
1043
+ ```
1044
+
1045
+ 接口:`POST /admin/feishu/upcoming-slots-document/refresh`。
1046
+
1047
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1048
+
1049
+ ## ch feishu deliveries
1050
+
1051
+ 查询飞书投递队列(最多200条,仅全局管理员)
1052
+
1053
+ ```bash
1054
+ ch feishu deliveries [--status QUEUED|SENDING|SENT|FAILED|SKIPPED|RETRY]
1055
+ ```
1056
+
1057
+ 接口:`GET /admin/feishu/deliveries`。
1058
+
1059
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--status`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1060
+
1061
+ ## ch feishu requeue
1062
+
1063
+ 重放失败/跳过投递(可能向真人补发通知,仅全局管理员)
1064
+
1065
+ ```bash
1066
+ ch feishu requeue [--ids 1,2] [--all]
1067
+ ```
1068
+
1069
+ 接口:`POST /admin/feishu/deliveries/requeue`。
1070
+
1071
+ 参数:`--all`、`--allow-profile-mismatch`、`--base-url`、`--help`、`--ids`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1072
+
1073
+ ## ch ai materials
1074
+
1075
+ 上传/预览出题资料(需新版后端;上传不支持requestId去重)
1076
+
1077
+ ```bash
1078
+ ch ai materials upload <file>
1079
+ ch ai materials get <materialId>
1080
+ ```
1081
+
1082
+ 接口:`POST /admin/ai-coding/materials`、`GET /admin/ai-coding/materials/{id}`。
1083
+
1084
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1085
+
1086
+ 后端要求:material-authoring backend (not included in this CLI release)。
1087
+
1088
+ ## ch ai papers
1089
+
1090
+ 创建出题任务/查询任务/确认题目(需新版后端)
1091
+
1092
+ ```bash
1093
+ ch ai papers generate <planId> <paperId> [--version N] [--request-id ID]
1094
+ ch ai papers get-generation <planId> <paperId> <jobId>
1095
+ ch ai papers confirm <planId> <paperId> [--version N] [--request-id ID]
1096
+ ```
1097
+
1098
+ 接口:`POST /admin/ai-coding/plans/{planId}/papers/{paperId}/generations`、`GET /admin/ai-coding/plans/{planId}/papers/{paperId}/generations/{jobId}`、`POST /admin/ai-coding/plans/{planId}/papers/{paperId}/confirm`。
1099
+
1100
+ 参数:`--allow-profile-mismatch`、`--base-url`、`-d`、`--data`、`--help`、`--json`、`--pretty`、`--profile`、`--request-id`、`--timeout`、`--version`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1101
+
1102
+ 后端要求:material-authoring backend (not included in this CLI release)。
1103
+
1104
+ ## ch capabilities
1105
+
1106
+ 离线机器可读能力目录(含参数、读写、权限、幂等与后端要求)
1107
+
1108
+ ```bash
1109
+ ch capabilities [--json]
1110
+ ```
1111
+
1112
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1113
+
1114
+ ## ch agent install
1115
+
1116
+ 为 agent 安装原生技能/插件(仅本地,不含凭据)
1117
+
1118
+ ```bash
1119
+ ch agent install <agent> [--scope user|project]
1120
+ ```
1121
+
1122
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--scope`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1123
+
1124
+ ## ch analysis resources
1125
+
1126
+ 查询全量只读数据目录、字段、过滤条件及实际后端可用性
1127
+
1128
+ ```bash
1129
+ ch analysis resources
1130
+ ```
1131
+
1132
+ 接口:`GET /admin/analysis/resources`。
1133
+
1134
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1135
+
1136
+ 后端要求:backend v36 data-analysis permission (CLI 0.3.0)。
1137
+
1138
+ ## ch analysis list
1139
+
1140
+ 按主键游标查询全量业务数据(不推进业务状态)
1141
+
1142
+ ```bash
1143
+ ch analysis list <resource> [--cursor 游标] [--size 100] [--filters JSON或@文件]
1144
+ ```
1145
+
1146
+ 接口:`GET /admin/analysis/resources/{resource}`。
1147
+
1148
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--cursor`、`--filters`、`--help`、`--json`、`--pretty`、`--profile`、`--size`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1149
+
1150
+ 后端要求:backend v36 data-analysis permission (CLI 0.3.0)。
1151
+
1152
+ ## ch analysis get
1153
+
1154
+ 读取单条分析记录,包括题目、答卷和评价(按字段白名单)
1155
+
1156
+ ```bash
1157
+ ch analysis get <resource> <id>
1158
+ ```
1159
+
1160
+ 接口:`GET /admin/analysis/resources/{resource}/{id}`。
1161
+
1162
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1163
+
1164
+ 后端要求:backend v36 data-analysis permission (CLI 0.3.0)。
1165
+
1166
+ ## ch analysis export
1167
+
1168
+ 逐页导出 JSONL,全部成功后原子落盘;多页不是同一时刻快照
1169
+
1170
+ ```bash
1171
+ ch analysis export <resource> --out ./data.jsonl [--size 100] [--filters JSON或@文件] [--force]
1172
+ ```
1173
+
1174
+ 接口:`GET /admin/analysis/resources/{resource}`。
1175
+
1176
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--filters`、`--force`、`--help`、`--json`、`--out`、`--pretty`、`--profile`、`--size`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1177
+
1178
+ 后端要求:backend v36 data-analysis permission (CLI 0.3.0)。
1179
+
1180
+ ## ch analysis download
1181
+
1182
+ 受鉴权下载分析附件到本地;不支持任意 URL 或服务器路径
1183
+
1184
+ ```bash
1185
+ ch analysis download <attachmentId> --out ./attachment [--force]
1186
+ ```
1187
+
1188
+ 接口:`GET /admin/analysis/attachments/{attachmentId}`。
1189
+
1190
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--force`、`--help`、`--json`、`--out`、`--pretty`、`--profile`、`--timeout`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1191
+
1192
+ 后端要求:backend v36 data-analysis permission (CLI 0.3.0)。
1193
+
1194
+ ## ch accounts analysis-permission
1195
+
1196
+ SYSTEM 开启/关闭管理员数据分析权限(版本冲突须刷新)
1197
+
1198
+ ```bash
1199
+ ch accounts analysis-permission <id> --enabled true|false --version N
1200
+ ```
1201
+
1202
+ 接口:`PUT /admin/accounts/{id}/data-analysis-permission`。
1203
+
1204
+ 参数:`--allow-profile-mismatch`、`--base-url`、`--enabled`、`--help`、`--json`、`--pretty`、`--profile`、`--timeout`、`--version`。未知、不适用参数及多余位置参数在请求前返回 exit 2。
1205
+
1206
+ 后端要求:backend v36 data-analysis permission (CLI 0.3.0)。