用途:在 studio.learn.iblai.app 上用终端创建 Open edX 课程外壳,供后续 /iblai-api-studio-* 技能填充内容。使用 ibl.ai 管理端点而非原生 Studio 路由,创建时会同时注册到 ibl.ai 目录并为创建者分配课程教师角色。
前置条件:先通过 /iblai-api-studio-auth 登录,预检命令 node .claude/skills/iblai-api-studio-auth/scripts/studio-login.mjs --check 需输出两个 ok,且 studio.env 中已设置 STUDIO_ORG。用户须对目标机构拥有 org-instructor(或 course-creator、org-course-creator)角色,否则用 /iblai-api-management 授权。number 与 run 一旦确定即永久成为课程键的一部分,需与用户商定。
主要能力与用法:读取用 GET /api/contentstore/v2/home/courses 列出课程;GET /api/ibl/manage/course/ 查询单课;GET /xblock/outline/… 查看课程根。写入用 POST /api/ibl/manage/course/,必填 org 与 display_name,number 和 run 可省略(省略时 Studio 分配 C<n> 与当前 YYYY-MM)。请求头需带会话 cookie、CSRF 及 Origin/Referer,查询串中的课程键须 URL 编码。
限制:删除接口 POST /api/ibl/manage/course/delete 会永久删除课程、内容、选课与进度,不可撤销,须用户明确要求并逐一确认,删除前检查选课人数;生产环境需二次确认。删除需目标机构的 org-instructor 或全局 staff 权限。新课程默认 start=2030-01-01 且无内容,发布前须在 /iblai-api-studio-settings 设置日期、节奏、选课窗口与评分策略。原生 Studio POST /course/ 对机构教师返回 403,仅适用于全局课程创建者。