Loading...
Loading...
Compare original and translation side by side
Schema authority: all primitive field names (unit / concept / prompt / task / material / quiz / faq / illustration) and the canonical project layout come from. When dispatching to any sub-skill, expect the agent to consult that file first._shared/domain-primitives.mdFilename convention (English-first): all generated files use English names (,course-package/,day{n}/outline.md, etc.). Trigger phrases users say in chat may stay Chinese, but anything written to disk is English. Seematerials/§0 for the full mapping._shared/domain-primitives.mdReference implementation:is the production reference (4-day workshop, 4125-line index.html, 1728-line course-data.js). Use it as visual + render-pattern reference; do not copy course-specific content from it.d:/GitHub/ai-workshop/
Schema 权威来源:所有原始字段名称(unit / concept / prompt / task / material / quiz / faq / illustration)以及标准项目布局均来自。调度至任何子技能时,需先让Agent查阅该文件。_shared/domain-primitives.md文件名约定(英文优先):所有生成的文件均使用英文名称(、course-package/、day{n}/outline.md等)。用户在聊天中使用的触发短语可以是中文,但写入磁盘的所有内容必须是英文。详见materials/第0节的完整映射规则。_shared/domain-primitives.md参考实现:是生产环境参考示例(4天工作坊,4125行index.html,1728行course-data.js)。将其用作视觉效果和渲染模式参考;请勿复制其中的课程特定内容。d:/GitHub/ai-workshop/
teaching-sitecourse-ebook-publishingteaching-sitecourse-ebook-publishing[Stage 1] outline (.md)
↓ produces: meta, day list, unit skeleton, learning goals, shared scenario
[Stage 2] content authoring (.md / .csv / .yaml)
↓ produces: lecture notes, sample materials, quiz items, optional prompt templates
[Stage 3] SPA conversion (.js + .html)
↓ produces: course-data.js (data) + index.html (renderers), local serve setup
[Stage 4] interactions (.js + .css inside index.html)
↓ produces: progress persistence, sidebar/scrollspy, theme, RWD, quiz UX
[Stage 5] visual assets (.png / .svg / scraping scripts)
↓ produces: illustrations, screenshots, QR codes, maps
▼
─── site is now feature-complete ─── (optional derivatives below)
▼
[Stage 5b] Corporate Edition branch ← optional, parallel to ebook
↓ produces: corporate-editions/ folder, condensed units, inlined COURSE, asset fallback chain
[Stage 6] Ebook Publishing ← optional, ALWAYS after site is stable
↓ produces: dist/{name}.pdf + .docx via single composed master.md[阶段1] 大纲 (.md)
↓ 产出:元数据、每日列表、单元框架、学习目标、共享场景
[阶段2] 内容创作 (.md / .csv / .yaml)
↓ 产出:讲义、示例素材、测验题目、可选提示词模板
[阶段3] SPA转换 (.js + .html)
↓ 产出:course-data.js(数据)+ index.html(渲染器)、本地服务配置
[阶段4] 交互功能 (.js + .css 内嵌于index.html)
↓ 产出:进度持久化、侧边栏/滚动监听、主题、响应式设计(RWD)、测验用户体验
[阶段5] 视觉资产 (.png / .svg / 爬取脚本)
↓ 产出:插图、截图、二维码、地图
▼
─── 网站功能已完整 ───(以下为可选衍生层)
▼
[阶段5b] 企业版分支 ← 可选,与电子书并行
↓ 产出:corporate-editions/文件夹、精简单元、内嵌COURSE、资产 fallback 链
[阶段6] 电子书发布 ← 可选,必须在网站稳定后进行
↓ 产出:dist/{name}.pdf + .docx(通过组合后的master.md生成)Skillskillactivate_skill| Stage | Sub-skill | Trigger phrases |
|---|---|---|
| 1 | | "規劃課程", "課程大綱", "幾天怎麼排", "學習目標" |
| 2 | | "寫講義", "補素材", "出測驗題", "提示詞範本" |
| 3 | | "做成網頁", "轉成 SPA", "course-data.js", "render 函式" |
| 4 | | "加進度勾選", "響應式", "暗色模式", "縮放", "scrollspy" |
| 5 | | "插圖", "工具截圖", "QR", "講師卡", "地圖" |
| 5b | | "企業包班", "濃縮版", "客製化", "壓縮成一天" |
| 6 | | "做電子書", "產 PDF", "印給學員", "DOCX 交付" |
| ╳ | | "驗證網頁", "RWD 驗證", "Playwright 測試", "截圖比對" |
| ╳ | | "盤點內容", "稽核資產", "找缺圖", "三處同步檢查" |
| ╳ | | "視覺風格", "設計系統", "色票", "字體", "玻璃卡片" |
Skillskillactivate_skill| 阶段 | 子技能 | 触发短语 |
|---|---|---|
| 1 | | "規劃課程", "課程大綱", "幾天怎麼排", "學習目標" |
| 2 | | "寫講義", "補素材", "出測驗題", "提示詞範本" |
| 3 | | "做成網頁", "轉成 SPA", "course-data.js", "render 函式" |
| 4 | | "加進度勾選", "響應式", "暗色模式", "縮放", "scrollspy" |
| 5 | | "插圖", "工具截圖", "QR", "講師卡", "地圖" |
| 5b | | "企業包班", "濃縮版", "客製化", "壓縮成一天" |
| 6 | | "做電子書", "產 PDF", "印給學員", "DOCX 交付" |
| ╳ | | "驗證網頁", "RWD 驗證", "Playwright 測試", "截圖比對" |
| ╳ | | "盤點內容", "稽核資產", "找缺圖", "三處同步檢查" |
| ╳ | | "視覺風格", "設計系統", "色票", "字體", "玻璃卡片" |
overview.md對象總時數每日主題day1/outline.mdShared scenario () is optional — it's a downstream decision handled byshared-scenario.md's Completion Gate, not an entry requirement here.course-outline-design
course-outline-design「我看到還沒有完整的課程綱要 — 直接跳到 Stage N 會讓後面每改一次 outline 就連動多個檔案重做。先用把 outline 鎖定,大概 10 分鐘決策,省下後續數小時 rework。」course-outline-design
overview.md對象總時數每日主題day1/outline.md共享场景()是可选的——这是shared-scenario.md完成阶段的下游决策,并非此处的准入要求。course-outline-design
course-outline-design「我看到还没有完整的课程大纲——直接跳到第N阶段会导致后续每次修改大纲都要联动多个文件重做。先用确定大纲,大约10分钟的决策时间,能节省后续数小时的返工。」course-outline-design
overview.md<!-- stub created via Stage 1 Gate override on YYYY-MM-DD -->course-outline-designoverview.md<!-- stub created via Stage 1 Gate override on YYYY-MM-DD -->course-outline-designstatic-spa-conversionday{n}/content.mdoverview.mdcontent.md## u-{id}day{n}/outline.md任務 (tasks)素材需求**圖片需求 (illustrations)**course-content-authoring「outline 在,但 Day {n} 的{缺/空殼/單元 u-{id} 沒寫}。直接做網頁會生出薄薄的殼 — 學員看到的只是標題清單,沒有實質教學內容。先用content.md把每個單元的 lecture / tasks / 圖片需求補完,比之後重做整套網頁省好幾倍時間。」course-content-authoring
static-spa-conversionday{n}/content.mdoverview.mdcontent.md## u-{id}day{n}/outline.md任務 (tasks)素材需求**圖片需求 (illustrations)**course-content-authoring「大纲已存在,但Day {n}的{缺失/为空/单元u-{id}未填写}。直接做网页会生成一个空壳——学员看到的只是标题列表,没有实质教学内容。先用content.md补全每个单元的讲稿/任务/图片需求,比之后重做整套网页节省数倍时间。」course-content-authoring
<div>day{n}/content.md<!-- thin-demo stub: Stage 2 bypassed on YYYY-MM-DD — re-enter course-content-authoring before any real student sees this -->course-data.js__thinDemo: truecourse-content-authoring<div>day{n}/content.md<!-- thin-demo stub: Stage 2 bypassed on YYYY-MM-DD — re-enter course-content-authoring before any real student sees this -->course-data.js__thinDemo: truecourse-content-authoringcourse-data.jsillustrations[]illustration: 'foo.png'illustrations: [{ name: 'foo.png', kind: 'hero' }]assets/illustrations: [{ kind: 'waived', reason: '...' }]assets/illustrations/web-visual-assets「目前有 N 個單元沒插圖(或全站只有封面)。學員一打開會覺得內容很空、像草稿。建議先用跑一輪批次生圖(每單元 1–3 張,搭配 PNG-first / SVG-fallback),再進入電子書/企業包班分支 — 否則 PDF 一印出來就是大片留白。」web-visual-assets
course-data.jsillustrations[]illustration: 'foo.png'illustrations: [{ name: 'foo.png', kind: 'hero' }]assets/illustrations: [{ kind: 'waived', reason: '...' }]assets/illustrations/web-visual-assets「目前有N个单元没有插图(或全站只有封面)。学员打开后会觉得内容空洞、像草稿。建议先用批量生成图片(每个单元1-3张,优先PNG/SVG占位),再进入电子书/企业包班分支——否则PDF打印出来会有大片留白。」web-visual-assets
.mdday{n}/content.mdcourse-content-authoring.mdcourse-data.jsstatic-spa-conversioncourse-data.jsindex.html<div>web-visual-assets.mdday{n}/content.mdcourse-content-authoring.mdcourse-data.jsstatic-spa-conversioncourse-data.jsindex.html<div>web-visual-assetsoutline.mdcourse-data.jsnpm run servehttp://localhost:3000file://outline.mdcourse-data.jsnpm run servehttp://localhost:3000file://references/consistency-checklists.mdreferences/scenarios.mdreferences/troubleshooting.mdreferences/design-rationale.mdreferences/consistency-checklists.mdreferences/scenarios.mdreferences/troubleshooting.mdreferences/design-rationale.mdstatic-spa-conversionstatic-spa-conversion