一句話產生自主測驗網頁快速教學

Module 2 教學帶你把考古題 PDF 變成「一題一張乾淨圖片 + 正確答案」的問題集資料夾。Module 3 接著帶你練習:不套用任何現成工具,自己一句一句跟 Codex 描述想要的學生自我測驗網頁。如果你還沒走完 Module 3、或想跳過「自己描述需求」這個練習,這份教學是給你的快速版:請 Codex 套用工作坊講師事先寫好的 build-quiz-app custom skill(位於專案根目錄的 .agents/skills/,不是 Codex 原生內建功能),一句話把問題集轉成不用架站、雙擊就能打開的學生自我測驗網頁,並額外附上 Module 3 沒有做的教師端成績彙整頁。

本教學對應 module4/ 資料夾,裡面只有 app/ 這個輸出成品;問題集資料本身跟 Module 3 共用同一份,都放在 module3/repo/ 底下,不用另外準備一份。目前 module3/repo/ 有兩組問題集:數學(A) 已經在 module4/app/ 裡有可直接打開的成品;電機與電子群資電類 專業科目(一)(二) 則還沒加入,可作為下一份要加進測驗清單的資料來源。差別只在教學方式:Module 3 讓你練習自己描述需求,這裡示範用一句清楚的需求,直接請 Codex 套用現成工具完成。

一句話生成測驗網頁、雙擊作答並驗收、彙整全班成績的流程
快速流程總覽
範例測驗問題集資料夾(輸入,跟 Module 3 共用)config.json 的 examLabel雙擊即用成品(輸出)
115 學年度
電機與電子群資電類
專業科目(一)(二),共 100 題
module3/repo/115/由 Codex 新增,且不得與既有名稱重複尚未產生;可依本教學加入既有測驗程式
115 學年度
數學(A)
共同科目,共 25 題
module3/repo/math-115a/Formative_Assessment_115_MathAmodule4/app/dist/Formative_Assessment_115_MathA_quiz.html
(目前已有,約 2.5 MB)

目前 module3/repo/ 沒有額外的原始 PDF。若要再加入第三份測驗,請先依 Module 2 的流程準備好新的問題圖片與答案 JSON,再放入 module3/repo/ 下的新資料夾(跟 Module 3 共用同一份問題集資料,不用在 module4/ 底下另外準備)。

學習目標

做完這份教學,你應該能夠:

先備條件

這份教學刻意不用 Module 3 教的「自己一句一句描述需求」練習方式,而是直接請 Codex 套用工作坊講師寫好的現成工具,把整件事一次做完 你完全不用自己想該怎麼描述、也不用管背後實際發生了什麼。下方提示語會直接講清楚工具位於 .agents/skills/build-quiz-app/,讓 Codex 能讀取並依說明執行。由於 module4/app/ 已有數學(A)測驗,skill 會先要求你確認;請選擇「加入既有 app,不覆蓋」。如果專案裡還沒有 .agents/ 資料夾,可以下載 module4-agents-skills.tar,解壓後把 .agents/ 資料夾放到專案根目錄(跟 module4/ 同一層)。如果想練習「不套用現成工具、自己把需求講清楚」這件事,請見 Module 3。

一句話生成測驗網頁

把「找路徑、分析資料夾、寫設定、打包」這一整條流程,濃縮成一句話請 Codex 做:

請對 module3/repo/115 套用本專案內 .agents/skills/build-quiz-app/ 的 skill,
將它加入既有 module4/app/,不要覆蓋現有的數學(A)測驗。

Codex 會依 skill 的說明分析問題集、在既有 module4/app/config.json 新增一筆設定,並在 module4/app/dist/ 產生新測驗。因為目前已經有數學(A)測驗,Codex 應先詢問你是否要加入既有 app;確認選擇加入後,再跳到下面「驗收重點」確認結果。

驗收重點

教師端成績彙整

學生在測驗頁面送出作答後,畫面上有一顆「下載成績單 (CSV)」按鈕,會把這次作答的逐題結果存成一個 CSV 檔。module4/app/report-aggregator.html(跟 Module 3 產出的是同一份引擎)就是給老師用來把全班這些 CSV 檔合併起來看的工具 一樣雙擊即可開啟,不需要架站、不會把資料上傳到網路上。把收到的 CSV 檔拖曳到頁面上的拖放區,就會自動彙整出每位學生的成績、跟每一題全班的答對率。

說明學生完成作答並下載成績單後,教師將多份成績單拖曳到教師彙整頁,得到每位學生的成績與每一題的答對率,且全部在本機處理不上傳資料的圖解
教師端本機成績彙整流程

動手做:加入另一份測驗

目前資料夾沒有第三份尚未處理的原始試題。請先依 Module 2 準備一組完整問題集:每題一張 PNG 圖片,加上一份題號與正確答案相符的 keys.json。把它放入 module3/repo/<新資料夾名稱>/(跟 Module 3 共用同一份問題集資料)後,再用下方提示加入既有測驗程式。

說明將新的試題與答案整理成問題集後,新增一筆設定及測驗頁,同時保留既有測驗,只新增不覆蓋既有成果的圖解
安全加入新測驗的流程

一句話疊加進測驗網頁

module3/repo/<新資料夾名稱> 已經是一組完整問題集,包含每題圖片與 keys.json。
請套用 .agents/skills/build-quiz-app/,將它新增到既有 module4/app/ 的測驗清單,
不要覆蓋已完成的測驗。

完成後,module4/app/config.json 應多出一筆 assessments 設定,module4/app/dist/ 也會多一個新的測驗檔案;原有的數學(A)測驗與先前加入的測驗都應維持不變。驗收方式跟上面「驗收重點」一樣:雙擊打開、作答、送出。

什麼時候該回頭看 Module 3

大多數情況,這裡的一句話就夠了;但下面這些狀況,回頭看 Module 3:從問題集資料夾產生自主測驗網頁實作教學 會清楚得多:

不管走哪一條路,遇到問題時的處理方式都一樣:把你實際看到的狀況描述給 Codex,請它幫你檢查、修好,不用自己猜是哪裡出了問題。

下一步

之後每多一組問題集資料,重複「Module 2 切題清理 → 一句話疊加進 app/」這個循環就好,app/ 引擎本身不需要重建。

正式交給學生前,記得請 Codex 幫你確認清楚兩種產出的差別:dist/*.html 是要交出去的成品,雙擊即用;report-aggregator.html 是另外單獨交給老師的彙整工具,跟學生端的檔案是不同用途。

如果問題集內容是有版權疑慮的考古題(例如技專校院入學測驗中心的試題),交付雙擊即用的 HTML 之前,記得再次確認自己有沒有合法散布這些內容的權利。