青椒课堂课程制作统一调度技能。当用户提及青椒课程制作、课程创建、章节小节管理、实训内容生成、测试题生成、教学方案设计、课程结构规划、课程介绍生成、PPT课件上传、实验环境配置等任何青椒课堂相关操作时,使用本技能进行统一调度。覆盖从课程规划到平台写入的完整流程,自动串联所有子技能。
本技能是青椒课堂课程制作的统一调度入口,负责识别用户意图、选择正确的子技能、串联完整制作流程。
每次调度子技能前,先阅读对应的 SKILL.md 获取完整指令。 子技能路径均为相对路径,从本文件所在目录出发:
qingjiao/<skill-name>/SKILL.md。
| 技能 | 路径 | 说明 |
|---|---|---|
qingjiao-shared | qingjiao/qingjiao-shared/SKILL.md | 工具调用规范、ID依赖关系、写入回显规则、环境检测流程。调度任何capability skill前必须先阅读此文件。 |
这些技能通过注册工具直接操作青椒平台实体。调用前必须确认环境就绪(见下方"环境检测"章节)。
| 技能 | 路径 | 触发场景 |
|---|
qingjiao-course | qingjiao/qingjiao-course/SKILL.md | 新建课程、查询/更新/删除/发布已有课程、更新课程介绍 |
qingjiao-chapter | qingjiao/qingjiao-chapter/SKILL.md | 在课程内创建/管理章节(需要已有 course_id) |
qingjiao-scenario | qingjiao/qingjiao-scenario/SKILL.md | 在章节内创建/管理小节(需要已有 chapter_id) |
qingjiao-element | qingjiao/qingjiao-element/SKILL.md | 在小节内添加/管理内容元素:实训、测验、学习资料等(需要已有 scenario_id) |
qingjiao-s3 | qingjiao/qingjiao-s3/SKILL.md | 获取S3预签名上传URL,用于上传PPT等文件 |
qingjiao-lab-env | qingjiao/qingjiao-lab-env/SKILL.md | 初始化镜像仓库、登记镜像、为课程/元素绑定实验环境 |
create-or-update-learn-material | qingjiao/create-or-update-learn-material/SKILL.md | 创建或更新learn_material类型元素并上传PPTX课件(完整6步流水线) |
这些技能使用模型能力生成内容,不直接调用平台工具。生成的内容最终通过capability skill写入平台。
| 技能 | 路径 | 触发场景 |
|---|---|---|
generate-course-proposal | qingjiao/generate-course-proposal/SKILL.md | 生成OBE教学方案(三维目标、考核体系、教学安排) |
design-course-structure | qingjiao/design-course-structure/SKILL.md | 将教学方案转化为章节/小节结构清单 |
generate-course-introduce | qingjiao/generate-course-introduce/SKILL.md | 生成课程详细介绍(大段markdown,写入introduce字段) |
plan-scenario | qingjiao/plan-scenario/SKILL.md | 为指定小节规划实训场景列表(2-5个递进场景) |
generate-training | qingjiao/generate-training/SKILL.md | 生成实训详细内容(知识点、操作步骤、考核任务) |
generate-test-paper | qingjiao/generate-test-paper/SKILL.md | 生成配套测试题(单选、多选、填空、简答) |
根据用户输入,按以下规则判断应调度的技能:
| 用户意图关键词 | 调度技能 |
|---|---|
| 制作课程、创建课程、开发课程、做一门课 | 进入标准制作流程(见下方) |
| 查看课程、查询课程、已有课程列表 | qingjiao-course(list) |
| 生成教学方案、制定教学计划 | generate-course-proposal |
| 设计课程结构、规划章节 | design-course-structure |
| 生成课程介绍 | generate-course-introduce |
| 创建章节、管理章节 | qingjiao-chapter |
| 创建小节、管理小节 | qingjiao-scenario |
| 添加实训内容、写入内容元素 | qingjiao-element |
| 上传PPT、上传课件、learn_material | create-or-update-learn-material |
| 规划实训场景 | plan-scenario |
| 生成实训内容 | generate-training |
| 生成测试题、出题 | generate-test-paper |
| 实验环境、镜像仓库、容器环境 | qingjiao-lab-env |
| 上传文件、获取上传链接 | qingjiao-s3 |
| 发布课程 | qingjiao-course(publish) |
| 检查环境、环境检测 | 执行环境检测流程 |
当用户给出模糊目标(如"帮我制作一门大数据课程"),启动标准制作流程,先引导确认基本信息再逐步执行。
当用户需要从零制作一门完整课程时,按以下流程自动串联执行。
执行任何平台操作前,先完成环境检测。阅读 qingjiao/qingjiao-shared/SKILL.md 的"环境检测与首次引导"章节获取完整流程。
简要步骤:
qingjiao_auth { action: "status" } 检测CLI可用性qingjiao-cli同一会话内检测通过后无需重复检测。
在做任何操作前,先与用户对齐目标。确认以下信息:
引导策略:收到模糊需求后,先告知用户整体流程和确认节奏。逐一确认每项信息,确认一项再问下一项。若用户说"直接继续",则减少中间确认节点,仅在关键写入节点保留确认。
每步完成后展示给用户确认,确认后自动进入下一步。
步骤 1 → generate-course-proposal
阅读 qingjiao/generate-course-proposal/SKILL.md 并执行
生成教学方案(三维目标、考核体系、教学安排)
→ 展示给用户确认
→ 确认后自动进入步骤 2
步骤 2 → design-course-structure
阅读 qingjiao/design-course-structure/SKILL.md 并执行
设计章节/小节结构清单
→ 展示给用户确认
→ 确认后:立即写入平台(创建课程→章节→小节),获取所有scenario_id
→ 写入时先阅读 qingjiao/qingjiao-shared/SKILL.md 遵循写入规范
→ 写入完成后自动进入步骤 3
步骤 3 → generate-course-introduce
阅读 qingjiao/generate-course-introduce/SKILL.md 并执行
生成课程详细介绍(写入introduce字段)
→ 展示给用户确认
→ 确认后通过 qingjiao_course { action: "introduce" } 写入平台
→ 写入完成后自动进入步骤 4
步骤2确认后立即写入平台,因为步骤4需要依赖scenario_id。
按课程结构中的小节顺序逐个处理,每个小节完成全部内容后再进入下一个。
对每个实训类小节依次执行:
4a. plan-scenario
阅读 qingjiao/plan-scenario/SKILL.md 并执行
规划该小节的实训场景列表(2-5个递进场景)
→ 展示给用户确认
4b. [逐实训循环] generate-training
阅读 qingjiao/generate-training/SKILL.md 并执行
逐一生成每个实训的详细内容
→ 每个实训生成后展示给用户确认
→ 确认后立即通过 qingjiao_element 写入平台
写入前阅读 qingjiao/qingjiao-element/SKILL.md 获取写入格式
→ 写入时遵循 qingjiao-shared 规范
4c. [如有测验] generate-test-paper
阅读 qingjiao/generate-test-paper/SKILL.md 并执行
生成配套测试题
→ 展示给用户确认
→ 确认后立即通过 qingjiao_element 写入平台(type: "test_paper")
对该小节全部完成后,自动进入下一个小节。
对理论类小节(如有),根据需要决定是否添加学习资料等元素。
如需上传PPT课件,调用 create-or-update-learn-material。
当课程需要容器或虚拟机环境时,阅读 qingjiao/qingjiao-lab-env/SKILL.md 并执行:
1. qingjiao_registry { action: "create" } → 创建镜像仓库(首次使用)
2. qingjiao_registry { action: "account" } → 获取推送账号(脱敏回显)
3. [外部] 构建镜像并推送到仓库
4. qingjiao_image { action: "save", ... } → 登记镜像到平台
5. qingjiao_resource { action: "create", ... } → 为course_id绑定课程实验环境
6. qingjiao_resource { action: "element_create", ... } → 为实训元素关联实验环境
所有内容制作完成并确认后:
1. 用自然语言回显课程名称、发布描述
2. 等待用户确认(发布操作不可逆)
3. qingjiao_course { action: "publish", course_id: <id>, ... }
平台写入操作存在严格的层级依赖,必须遵守:
course_id → chapter_id → scenario_id → element_id
qingjiao-chapter 前:必须已有 course_idqingjiao-scenario 前:必须已有 chapter_idqingjiao-element 前:必须已有 scenario_idqingjiao_resource 前:必须已有 course_idqingjiao_resource element_create 前:必须已有 course_id 和 element_id每次创建操作返回的 id 需记录并复用,不要重复创建。
以下节点必须等待用户明确确认后再继续:
| 节点 | 确认后执行 |
|---|---|
| 目标确认(课程名称、受众、学时) | 执行环境检测,通过后进入步骤1 |
| 教学方案生成后 | 进入步骤2(设计课程结构) |
| 课程结构设计后 | 写入平台(课程→章节→小节),进入步骤3 |
| 课程介绍生成后 | 写入平台introduce字段,进入步骤4 |
| 每个小节的实训规划后 | 进入generate-training |
| 每个实训内容生成后 | 立即写入平台,继续下一个实训或小节 |
| 每个测试题生成后 | 立即写入平台,继续下一个小节 |
| 发布课程前 | 执行发布(不可逆) |
所有平台写入操作必须遵循 qingjiao-shared 的规则:
@<文件路径> 语法引用当用户明确要求执行某个具体操作时(如"查看我的课程"、"创建一个章节"),直接调度对应技能,不需要走完整流程。
当用户需要完成一个跨技能的任务时(如"制作一门课程"),按照标准制作流程自动串联,每步确认后自动进入下一步。
若用户表示"跳过确认"或"加快进度",在后续流程中减少中间确认节点,直接按合理方案推进,仅在关键写入节点(平台写入前)保留确认。
用户对规划内容有修改意见时,先修改完再执行写入,不要带着问题写入平台。
qingjiao-shared 中涉及的capability skill前,先确认已了解工具调用规范