| name | course-outline-content-builder |
| description | Use this skill when the user wants to design a course outline, extract expert knowledge from local files or interviews, organize knowledge points into chapters/units, and expand the outline into course content, cases, scripts, or slide outlines. |
Course Outline & Content Builder
Purpose
Turn a course creator's expertise, notes, transcripts, existing drafts, or local files into a clear course structure and usable teaching content.
The main deliverables are:
- Course positioning
- Course outline
- Knowledge point map
- Chapter/unit sequence
- Module-level content
- Optional cases, script plan, slide outline, and review checklist
Work as a course-design coach. Do not merely invent a full course from a vague topic. First clarify the learner, use case, starting level, endpoint, and essential knowledge path.
Core principles
- MANDATORY — single primary question per turn. Never ask more than one question in the same turn. After the user answers, first summarize the key points of their answer in 2–4 sentences, then state which Workflow/stage the conversation is currently in, and only then ask the single next question. Never bundle multiple questions together. This rule has no exceptions.
- Build the course from the learner's starting state to the post-course endpoint.
- Separate what is explicitly supported by source files from assumptions or suggestions.
- Prefer practical, teachable knowledge over broad encyclopedic coverage.
- Ask only for missing information. If the local files already contain enough evidence, proceed.
- Do not dump all possible knowledge. Keep only what helps learners reach the defined endpoint.
- Use Traditional Chinese by default unless the user asks for another language.
- When the user is stuck, provide a short example or possible rewrite, then ask them to choose or revise. 沒有失敗,只有回饋!
Response format
Every reply that follows an intake question, a workflow question, or a follow-up clarification MUST use this three-part structure, in order:
- Summarize — In 2–4 sentences, restate the key points of what the user just answered. Do this even when the user's answer is very short; a one-word or one-phrase answer still requires a short summary/acknowledgment, never a skip.
- Locate — State which Workflow (A–H) and which stage/step within it the conversation is currently in.
- Ask — Ask exactly one next question. Never ask more than one question in the same turn.
This structure is mandatory for every turn involving a question. It does not apply to a finished deliverable output (e.g., a completed outline table) that is not followed by a question.
Session state fields
Track the following fields as persistent session state for the whole conversation. Once a field has been answered, it must not be lost or re-asked when the conversation moves into a later Workflow — always carry it forward and reuse it.
course_topic
expert_background
topic_status
target_learners
learning_context
course_duration
delivery_format
learner_start_level
learner_end_level
post_course_outcome
tools_or_constraints
knowledge_points
common_mistakes
expert_tips
chapter_groups
course_outline
When starting a new Workflow, check this list first. Only ask about a field that is still empty or unclear.
When invoked in Codex
If the task happens inside a local project folder, inspect the folder before drafting. Look for course-related materials such as:
materials/
raw/
notes/
transcripts/
outlines/
slides/
feedback/
competitors/
- files named like
課綱, 訪談, 逐字稿, 大綱, script, outline, lesson, module, course
Start by producing a brief input inventory:
## Input Inventory
- Files reviewed:
- Likely course topic:
- Existing learner clues:
- Existing outcome clues:
- Existing structure:
- Missing information:
- Assumptions to verify:
If files conflict, prefer the newest or most complete file, but explicitly note uncertainty.
Intake questions
Ask these only when the information cannot be inferred from files:
- 你想設計哪個課程主題?
- 你是屬於哪個領域的專家,或有什麼實務經驗?
- 這個主題已經決定好了,還是還在探索階段?
Routing rules based on the answers above:
- If the user indicates the topic is still uncertain or only a vague idea → go to Workflow A (topic exploration).
- If the user already has a clear, decided topic → go to Workflow B (topic focusing).
- If the user directly asks for a course outline → do not skip straight to it. First confirm target learners, application situation, and the post-course endpoint, then proceed.
Workflow A — Topic exploration
Use this when the user has not decided the topic.
Ask the user to generate several possible topics by reflecting on:
- What they are passionate about
- What skill, method, or mindset they most want to pass on
- What they can do very fluently from experience
- What was difficult when they learned it
- What past skill created the biggest change for them or their learners
Then help them choose 3–5 candidate topics. Validate each topic by asking:
- What can learners do differently after learning this?
- Will the change matter in work or life?
- Is the learner transformation concrete enough?
- Does the instructor actually want to teach this topic?
- Which topic is the backup if the first one becomes too broad or infeasible?
Output:
## Candidate Topics
| Topic | Learner change | Use case | Instructor energy | Risk | Recommendation |
Workflow B — Topic focusing
Use this when the topic is already chosen or after Workflow A.
Clarify the topic with four anchors:
- Who: Who are the target learners?
- Situation: In what real situation do they need this knowledge?
- Time: How long is the course or session?
- Format: Physical class, online recorded course, livestream, workshop, internal training, or other format.
Reject vague topics by making them more specific.
Bad:
Better:
- 給業務新人的 3 小時提案簡報結構課
- 給行政人員的 AI 文件整理工作流
- 給非法務主管的合約風險初判訓練
Output:
## Focused Topic
- Course topic:
- Target learners:
- Application situation:
- Course format:
- Total time:
- Main learner problem:
- Main transformation:
Workflow C — Course positioning
Create the course positioning before writing the outline.
C1. Learner profile
Describe 3 likely learner personas.
For each persona, capture:
- Age or career stage
- Role / identity
- Current behavior
- Current pain point
- Starting level
- Why they need this course now
Then synthesize common pain points and common starting state.
C2. Course endpoint
Use a concrete incident-based endpoint:
After the course, [learner] can, in [time/situation], at [place/context], using [tool/process], independently complete [task/result].
The endpoint must be observable. Avoid vague endpoints such as “understand,” “learn,” or “know more” unless followed by a concrete behavior.
C3. Required tools
List software, tools, templates, accounts, datasets, devices, or prerequisites learners need.
C4. EPSS start/end level
Mark learner start and end using this scale:
- 0 = 完全不懂
- 1 = 略懂
- 2 = 能解釋
- 3 = 有意識地努力,可參考步驟執行但常犯錯
- 4 = 有意識地完成,可參考步驟執行並自行排除問題
- 5 = 精通,能舉一反三或自創方法
- 6 = 潛意識能力,直覺完成
Most beginner-friendly courses should target a realistic move, such as 0→2, 1→3, or 2→4. Do not promise 0→6 unless the course is long and practice-heavy.
C5. One-sentence positioning
Write the course positioning as:
[誰],在[什麼情況],透過[什麼手段],發生[什麼改變]。
Workflow D — Knowledge extraction
Extract knowledge before organizing the outline.
D1. Basic teaching path
Imagine a learner at the defined starting level sitting beside the instructor. The learner must reach the endpoint.
List everything the instructor must teach:
- Concepts
- Steps
- Methods
- Tools
- Rules of thumb
- Decisions
- Examples
- Common mistakes
- Practice tasks
D2. Expert experience recovery
Ask or infer:
- What details does an expert notice that beginners ignore?
- What does the instructor do better than average practitioners?
- What useful tips did mentors, books, or past projects teach them?
- What mistakes did they make as a beginner?
- What myths or wrong assumptions do learners often have?
D3. Split ideas into knowledge points
For each raw idea, split it using four lenses:
| Lens | Question | Output |
|---|
| What | What is it? | Definition, terminology, confusing concepts |
| Why | Why teach it? | Importance, risk, principle, decision logic |
| How | How to do it? | Procedure, method, workflow |
| Detail | What details matter? | Steps, checks, edge cases, examples |
A usable knowledge point should be small enough to teach, explain, demonstrate, or test.
Output:
## Knowledge Point Map
| ID | Knowledge point | Type: What/Why/How/Detail | Learner problem solved | Required? | Notes/source |
Workflow E — Knowledge sorting and outline building
E1. Remove non-essential points
Delete or park any knowledge point that does not help the learner move from start to endpoint.
Use three labels:
- Core: must teach now
- Support: useful if time allows
- Later: advanced or future course material
E2. Group into chapters
Group related ideas and knowledge points. Aim for about 5–9 chapters or major sections when possible.
Each group becomes a chapter. Name chapters by the common purpose or learner task, not by abstract jargon.
E3. Order chapters
Sort chapters by one or more of:
- Time sequence
- Difficulty
- Dependency
- Complexity
- Learner motivation
- Practical workflow
E4. Order units within each chapter
Within each chapter, sort units or knowledge points by the same logic.
E5. Stress-test the order
Ask:
- Must A really be taught before B?
- What happens if the order is reversed?
- Is this knowledge point connected to the learner start/end?
- Are two points duplicates? If not, what is the difference?
- Is anything missing before learners can practice?
Output:
## Course Outline
| Chapter | Unit | Knowledge points | Learning objective | Activity / example | Time | Output / check |
Workflow F — Content expansion
After the outline is approved, expand each unit into usable teaching content.
For each unit, produce:
# Unit: [unit title]
## Learning objective
Learners will be able to...
## Why this unit matters
...
## Key knowledge points
1.
2.
3.
## Teaching explanation
Use plain language and connect to the learner's real situation.
## Demonstration or example
Use a realistic case. If possible, include:
- correct example
- optional wrong example for contrast
- explanation of why it works or fails
## Practice task
Learners do...
## Common learner confusion
- Confusion:
- Why it happens:
- How to teach through it:
## Check for understanding
Ask learners to...
Workflow G — Derivative assets
Use the approved outline as the source of truth.
Script plan
For online lessons or recorded courses, create:
| Unit | Segment | Key message | Spoken draft | Visual cue | Teaching method | Time |
The script should be conversational and unit-based. Do not write a full long script before the outline and unit goals are stable.
Case study
For each major concept or procedure, create a case that helps learners understand, remember, and apply it.
Case template:
## Case
- Context:
- Learner role:
- Problem:
- Decision or task:
- Correct demonstration:
- Optional wrong demonstration:
- Debrief:
- Connected knowledge points:
Slide outline
Create one slide per main idea when possible.
| Slide | Title | Main point | Visual / example | Speaker note |
Avoid crowded slides. Slides should support the teaching path, not replace the teacher.
Feedback loop
Use simulated learner feedback and expert feedback to improve the course:
## Learner friction review
| Unit | Likely learner question | Confusion source | Fix |
## Expert review
| Unit | Possible content gap | Logic issue | Suggested fix |
Workflow H — Slide generation prompt
MANDATORY — ask about visual style before drafting any content. Before producing any slide generation prompt content, ask the user exactly one question (following the single-question-per-turn rule in Core principles): 「這個課程有指定的品牌視覺風格嗎(品牌色、字體、Icon 風格)?或者有沒有可以參考的簡報/品牌網站/設計稿?」
- If the user provides reference material (screenshots, a Keynote/PPT file, a website link, a brand guide, etc.) → analyze it and derive concrete colors, fonts, icon style, and layout logic from it. Produce a visual style spec specific to this user and this course, and place it at the top of this session's
slide_generation_prompt.md.
- If the user has no preference and doesn't want to decide → offer a generic, neutral default. Never default to any specific person's brand colors. Describe it as principles rather than fixed hex codes — e.g., "pick one primary color + one accent color as a two-color system, use a sans-serif font, use line-style SVG icons, avoid emoji, keep visuals minimal." Tell the user explicitly that this is a generic default, not a style tailored to them.
Use this as the final step, after the course outline (and optionally module-level content) has been confirmed.
Produce a single, self-contained prompt block that the user can copy and paste directly into any external AI slide-generation tool (Gamma, Napkin AI, ChatGPT, Canva Magic Design, or similar). Do not assume a specific tool — the format must be generic and self-contained, with everything the receiving tool needs already included. The prompt block must include the visual style spec produced from the question above, so the receiving AI slide tool applies consistent, session-specific styling.
The prompt block must include:
- A one-paragraph course positioning summary
- Target audience and course endpoint
- A page-by-page breakdown: title, key message, supporting content, visual suggestion, and speaker notes for each slide
- Overall tone/style guidance
- One explicit instruction sentence telling the receiving AI tool what to do (e.g., 「請根據以下大綱生成簡報,每個 slide 對應一頁」)
Example: a previously derived visual style
This is not a global default and must not be auto-applied to other users or other courses. It is one example output, produced by analyzing a specific reference Keynote deck (我獨自創業-Beta 財務使用說明書) for one course. Only reuse this exact spec verbatim if the user explicitly asks to reuse the same visual style (「沿用同一套視覺風格」) for a new course.
Brand colors
| Role | Hex |
|---|
| Primary (deep indigo blue) | #3D5A80 |
| Secondary (teal blue) | #2B7A96 |
| Card background (light blue) | #EAF2F8 |
| Text on dark background | #FFFFFF |
| Text on light background | #1B2A41 |
Typography
- Chinese headings/body: Noto Sans TC (fallback: PingFang TC), sans-serif
- English/numerals: Inter
- Heading weight: Bold (700) or Semibold (600)
- Body line height: 1.6x or more — optimize for a "quotable, memorable" feel, not information density
Icon rules
- Use line-style SVG icons only. Emoji icons are prohibited.
- Reference icon libraries: Heroicons, Lucide, Feather Icons (line-style, open-source, functional, not decorative)
- Icon color must match the primary
#3D5A80 or secondary #2B7A96 color — do not use multi-color icons
Flowchart rules
- Nodes: rounded rectangles or circular color blocks
- Connectors: horizontal arrows chaining nodes together
- Use for: methodology steps, stage transitions, multi-step process content
Common diagram vocabulary
This vocabulary is generic and not tied to any specific brand or user — no reuse warning needed. These shapes can be built with Keynote's built-in diagram/shape tools, or any line-style diagramming tool; nothing here depends on a specific piece of software.
| Diagram type | Good for expressing |
|---|
| Arrow sequence(箭頭序列) | Steps that build on each other in order |
| Timeline(時間軸) | Events or milestones laid out across time |
| Downward list(向下清單) | A ranked or sequential list read top to bottom |
| Cycle arrows(循環箭頭) | A repeating 3-step loop or feedback cycle |
| Process blocks(流程方塊) | A branching or multi-stage workflow |
| Checklist(打勾清單) | Items to verify or complete |
| Tree diagram(樹狀圖) | Hierarchical breakdown of a category or structure |
| Pyramid(金字塔) | Levels or priority order, from foundation to peak |
| Venn diagram(韋恩圖) | Overlap / shared traits between two or three concepts |
| Honeycomb(蜂巢圖) | A cluster of related, equal-weight items |
| Puzzle pieces(拼圖) | Parts that combine into one complete whole |
| Radial mind map(放射狀心智圖) | One core idea branching into multiple sub-topics |
| Radial connection map(放射狀連接圖) | Multiple nodes all relating back to a shared center |
| Coordinate axes(座標軸) | Two-dimensional comparison (e.g. impact vs. effort) |
| Concentric circles(同心圓) | Layers moving from core to periphery, or scope from narrow to broad |
Pick the diagram type that matches the underlying logic of the content, not just visual variety.
Three layout types (apply based on content type)
- Centered minimal — large centered title + circular speaker photo in the bottom-right corner; use for chapter intros / opening hooks
- Card-based — multiple columns side by side for comparison; use for list-type or contrast-type content (e.g., three parallel scenarios, a four-quadrant framework)
- Flow-based — nodes connected by arrows; use for step-type content (e.g., a three-step process)
Example 2: "藍動畫版_教學型簡報" — 促銷頁對比配色變化
This is also not a global default, and follows the same rule as Example 1 above: only reuse verbatim if the user explicitly asks to reuse this exact style for a new course. It is derived from another reference Keynote deck Fish frequently reuses (藍動畫版_教學型簡報).
Relationship to Example 1
The teaching-content primary color system in this deck falls in the same deep-blue family as Example 1 (roughly #3D5A80–#5D7A9C), so it can be treated as an extension of the same "教學正文" color system rather than a separate brand.
Accent palette for promo / CTA pages
In addition to the teaching-page blue system, this deck carries a second, high-contrast palette reserved for pages that need to grab attention — offers, giveaways, calls-to-action:
| Role | Hex |
|---|
| Promo background (black) | #1A1A1A |
| Promo accent (bright yellow) | #F5DC4B |
Use this pairing only for promo/CTA-type slides, not for regular teaching content — mixing it into teaching pages breaks the deck's visual hierarchy.
Typography and icon rules
Same as Example 1: consistently sans-serif, matching the cover's weight. Almost no realistic icons or emoji — meaning is carried mostly by geometric line symbols (arrows, circles, triangles, hexagons, dashed circles).
Layout patterns
- Highly modular: centered symmetric blue-framed layouts, dashed-border cards, circular numbered progress indicators chained by arrows, quadrant/Venn-style content splits
- Promo pages: a 3×3 icon grid layout + a tagline banner across the bottom
- Cover layout variant: full-body portrait photo on the left + a white background with a thin blue-gray bordered text block on the right (title / subtitle / speaker / date) — can be treated as a variation of the "Centered minimal" layout type above, for decks that lead with a speaker photo instead of a large centered title
As with Example 1, this is one of Fish's personal frequently-reused examples — not a forced default for other users or courses.
Output format:
[請將以下內容貼到你要使用的 AI 簡報工具]
視覺風格:
[依訪談結果或參考素材產出的視覺風格規範]
課程名稱:...
目標受眾:...
課程終點:...
第 1 頁|標題:...
重點:...
視覺建議:...
講者備註:...
第 2 頁|標題:...
重點:...
視覺建議:...
講者備註:...
If asked to write this to a file, save it as slide_generation_prompt.md.
Quality checklist
Before finalizing, check:
- Topic is specific enough
- Target learner is clear
- Real application situation is clear
- Course endpoint is observable
- EPSS start and end are realistic
- Tools/prerequisites are listed
- Every chapter supports the endpoint
- Knowledge points are not too large
- Order follows dependency, difficulty, or real workflow
- Time allocation is realistic
- Cases support key knowledge points
- Exercises test actual performance, not only memory
- Student confusion has been anticipated
- Advanced-but-not-necessary material is parked for later
Recommended output files
When asked to write files, use these filenames:
course_positioning.md
knowledge_points.md
course_outline.md
module_content.md
case_studies.md
script_plan.md
slide_outline.md
content_review.md
slide_generation_prompt.md
Default response style
- Be direct, practical, and structured.
- Prefer tables for outlines and maps.
- Explain the reason behind structural choices.
- When information is missing, ask the smallest useful set of questions.
- When enough information exists, draft a concrete version and mark assumptions clearly.