Publishing LMS courses with a Kiro SCORM pipeline

TL;DR · AI 摘要
Publishing LMS courses with a Kiro SCORM pipeline AWS Architecture Blog Publishing LMS courses with a Kiro SCORM pipelin...
核心要点
- 主题聚焦:Publishing LMS courses with a Kiro SCORM pipelin
- 来源:AWS Architecture Blog,建议结合原文判断细节。
- AI 分析暂不可用,本条为保底评分与摘要。
使用 Kiro SCORM 流水线发布 LMS 课程 | AWS 架构博客
使用 Kiro SCORM 流水线发布 LMS 课程
将可共享内容对象参考模型(SCORM)课程发布到学习管理系统(LMS)通常远比编写课程本身复杂。LMS 需要 SCORM 包遵循标准格式才能成功导入和启动。手动制作 SCORM 包需要将幻灯片重新组织为模块并手动编辑 SCORM 清单文件。这种打包过程会分散作者对课程内容开发本身的注意力。
本文将展示如何使用 Kiro(一个集成开发环境(IDE)和命令行界面(CLI)的智能代理 AI)来自动化将原始培训材料转换为符合规范的 SCORM 包。通过使用附带的示例课程进行测试,仅用几分钟就生成了一个 SCORM 包。
解决方案概述
Kiro 会组织课程内容并引导作者完成发布工作流程。图 1 展示了从原始材料到可上传包的端到端流水线。
图 1:Kiro 课程发布流水线概览
作者将原始培训材料(幻灯片、操作手册和文档)放入课程文件夹后,Kiro 会执行两个流水线阶段。课程开发阶段包括规划和编写课程内容。课程构建阶段包括对课程内容进行语法检查、构建 SCORM 包以及验证 SCORM 包。输出结果是一个可直接上传到 LMS 的 SCORM 1.2 .zip 文件。您可以通过 Kiro 对话全程驱动整个流水线。首先将材料加载到课程文件夹,然后要求 Kiro 构建课程,它将返回一个可上传的 .zip 文件。
该流水线使用的 Kiro 核心组件
Kiro 作为 IDE 和 CLI(kiro-cli)提供的智能代理 AI。该流水线由三个 Kiro 原语构建:
- 引导文件 – 提供持久上下文的 Markdown 文件(.kiro/steering/),用于指导 Kiro 的工作空间。引导文件会自动加载。always 文件在每次会话中都会加载,fileMatch 文件在您触达其管理的文件时加载,manual 文件则按需加载。
- 规范文件 – 定义功能开发或错误修复流程的规范(.kiro/specs/)。
- 钩子 – 自动触发器(.kiro/hooks/),当 IDE 中发生事件(如创建文件、保存文件或结束会话)时运行提示或 shell 命令。
LMS 内容发布流水线
以下部分将逐步介绍课程发布过程及各环节的执行者。
课程是如何构建的
对于新课程,Kiro 会通过六步对话与您协作完成:
- 将源材料添加到 courses/<name>/(幻灯片、Word 文档、PDF、操作手册、Markdown 文档)。
- 规划 – Kiro 读取源材料并生成 course.yaml 清单文件。
- 编写 – Kiro 将源材料转换为每个模块的 lesson.md 文件。
- 语法检查 – 检查编写好的课程内容是否存在结构性问题,如缺少元数据、图片路径损坏或知识检查题没有正确答案。
- 构建 – 将课程内容渲染为一个 index.html 文件并压缩为 SCORM 包。
- 验证 – 在上传到 LMS 前确认 .zip 文件是否符合 SCORM 1.2 标准。
课程清单文件
每个课程最初都是一个单一的清单文件 course.yaml,用于声明其模块、源材料和 SCORM 构建配置。Kiro 在第二步(您上传源内容并要求构建课程后)会自动生成该清单文件。
course:
short_name: "sample-course"
short_description: "一个包含三个模块的示例课程。"
default_language: en-US
total_duration_minutes: 30
modules:
- id: module-1
target_duration_minutes: 10
# ...
scorm:
version: "1.2"
output: scorm/dist/sample-course.zip
passing_score: 100
min_page_dwell_seconds: 5一些可自定义的重要设置:
- min_page_dwell_seconds 设置学习者在页面上必须停留的最短时间,之后"下一步"按钮才会解锁。
- target_duration_minutes 设置每个模块的预期完成时间,在课程首页向学习者展示。
- total_duration_minutes 设置整个课程的预期完成时间,在课程首页向学习者展示,并上报给LMS。
- passing_score 设置学习者需要达到的分数,LMS才会标记课程完成(该分数会写入SCORM清单作为掌握分数)。
导航文件存储着流程所需的知识
导航文件存储着该流程中Kiro需要了解的所有信息。导航文件包含三种类型的知识:
- 积累的经验 – 通过实际构建和运行课程获得的SCORM知识。
- 制作规范 – 如何将原始材料拆分为模块和课程,以及写作指导,使每个 lesson.md 都呈现为经过润色的面向学习者的内容。
- 仓库契约 – 每个课程都遵循的统一 courses/<name>/ 目录结构,使相同的共享脚本适用于所有课程。
每个导航文件都会以之前提到的三种模式之一加载:always、fileMatch 或 manual。每次会话只会加载所需指导。示例仓库中的导航文件按包含模式分组如下:
.kiro/steering/
# always - 每次会话都会加载
product.md 管道的用途
pipeline.md 六步构建流程和命令
structure.md 仓库布局和 courses/<name>/ 契约
tech.md 工具链和所需版本
# fileMatch - 当匹配文件被编辑时加载
scorm-invariants.md scorm/src、构建输出和 course.yaml 的不变规则
# manual - 按需加载的深度指南
course-planning.md 规划模块和 course.yaml
source-intake.md 将原始内容转换为课程
lesson-authoring.md 编写每个 lesson.md
scorm-authoring.md 构建和打包 SCORM zip
assessment-authoring.md 创建可选的课程评估钩子自动执行重复性步骤
当Kiro或作者工作时,钩子会自动运行,因此常见检查不需要依赖某人记住命令:
- 保存时检查 – 编辑任何 lesson.md 或 course.yaml 会立即重新检查该课程。
- 打包时验证 – scorm/dist/ 下新生成的 SCORM .zip 文件会在构建时立即验证。
- 导航文件更新 – 每次流程运行后,Kiro 会建议更新导航指导,记录值得保留的最佳实践。
基于规范的新功能开发
仓库包含一个功能规范,作为参考说明流程的构建方式。页面停留时间限制规范增加了强制学习者在继续前必须在页面上停留最短时间的功能。在理解流程后,你可以通过Kiro的规范驱动开发流程以相同方式扩展它。
演示:构建课程
以下操作指南将带您从一个空仓库开始,直至生成可上传的 SCORM 包。
先决条件
- 可访问 Kiro(IDE 或 kiro-cli)。
- 安装 Node.js 20+、Python 3.11+ 以及 zip 命令,并具有安装依赖包的权限(Kiro 在初始化时会自动安装项目所需的 npm 和 pip 包)。
- 需要转换的原始培训材料(幻灯片、操作手册和文档)。
打开仓库
在 Kiro 中打开仓库。.kiro/steering/ 目录下的工作流配置会自动加载,因此 Kiro 已经了解流水线命令、仓库布局和 SCORM 限制条件。
构建示例课程
构建课程只需一个指令。在 Kiro 的聊天面板中输入:
“Build the sample course.”(构建示例课程。)
Kiro 会执行代码检查、构建和验证操作,并返回可上传的 .zip 文件路径:courses/sample-course/scorm/dist/sample-course.zip。
将自有材料转换为课程
对于新课程,将源材料添加到 courses/<name>/ 目录,然后输入以下指令:
“Plan and build a course from <name> .”(根据 <name> 规划并构建一门课程。)
Kiro 会引导您完成 course.yaml 的规划、每个模块对应一个 lesson.md 的编写以及打包操作。
发布前验证
您已经看到 Kiro 对包执行了代码检查、构建和验证操作,内置测试还会验证课程进度跟踪功能。最后的检查是视觉验证。在上传前,通过 HTTP 本地运行已构建的课程进行预览:
cd scorm/build # 解压后的构建输出目录(内容与 .zip 文件相同)
python3 -m http.server 8080 # 然后在浏览器中打开 http://localhost:8080这会本地运行完整的构建课程。图 2 展示了学员视角的课程首页预览效果。
图 2:示例课程首页的本地预览
首页显示课程标题、简短描述,以及每个模块的卡片,包含模块编号、预估时长、简要说明和开始链接。
最后一步是将 .zip 文件上传至符合 SCORM 1.2 标准的 LMS 以验证全流程。不同学习管理系统存在差异。如果遇到问题,可请求 Kiro 协助排查并学习您 LMS 的具体细节。
清理
由于整个流水线完全以本地脚本和 Kiro 会话运行,因此无需清理任何云资源。如果您仅为了测试流水线而构建了示例课程,可以安全删除 courses/sample-course/scorm/dist/ 和 courses/sample-course/scorm/build/ 目录。这两个目录均为构建输出。
结论
在本文中,您了解了如何使用 Kiro 将原始培训材料转换为 LMS 可用的 SCORM 包。作者只需专注于课程内容,而 Kiro 负责打包工作。由于流水线以 Steering、Specs 和 Hooks 的形式存储在仓库中,这些专业知识可被版本控制,并在所有课程和团队中复用。
要立即开始,请克隆 aws-samples 仓库,将源材料放入课程文件夹,然后请求 Kiro 构建课程。了解更多内容,请访问 Kiro 官方网站。
作者简介
'"` /think