跳到主要內容
resoluna.
上線中期間:2026-04 – 2026-08

地球日 × 六頂思考帽

把六頂思考帽嵌進課堂流程的小組思辨工具,依現場回饋邊上課邊迭代

我的角色
產品規劃、教學設計、需求定義;與 Claude 協作開發
技術
HTML/CSS/JSFirebase FirestoreFirebase AuthAzure OpenAINode.js
AI 協作
Claude CodeAzure OpenAI GPT
87
實際使用學生 · 約 87 位,國中七年級
3
班級 · 704、708、717
6
綠行動 · 選自台灣地球日「百萬綠行動」42 項
6
思考帽 · 白→紅→黃→黑→綠→藍循序解鎖

01問題

地球日當週,我想讓國中七年級學生針對台灣地球日「百萬綠行動」做小組討論,最後選出一項真的要去做的行動。問題是一般的分組討論很容易變成少數人講、其他人放空,而市面上的課堂互動工具(Mentimeter、Kahoot、Pear Deck 這一類)擅長問答與投票,不擅長「一步一步把思考走完」。

我要的不是搶答,而是把「六頂思考帽」這個批判性思考框架直接嵌進流程:白帽事實 → 紅帽直覺 → 黃帽價值 → 黑帽風險 → 綠帽創意 → 藍帽決定,讓學生照著順序,從資料一路走到具體行動方案。

02使用者與情境

  • 學生:國中七年級,704、708、717 三個班,累計約 87 位。用平板分組作答,一組數人。
  • 教師(我自己):要在課堂中掌握各組進度,課後能編輯、檢視、匯出成果,並評估學生的思考品質。
  • 情境:地球日當週的實際課堂,時間有限、網路與裝置條件不一、學生程度落差大。行動清單從官方 42 項中選出 6 項,分成減塑力、減碳力、節約力三類。

03限制條件

  • 沒有後端工程團隊:我負責教學設計與需求,程式由我與 Claude 協作完成,架構必須夠簡單——純 HTML/JS 加 Firebase。
  • 上課中就在用:系統一邊被學生使用一邊修正,任何改動都不能讓課堂中斷。
  • 學生資料:後台可以編輯、刪除學生作答,入口必須有真正的身分驗證;對外展示不能出現學生個資。
  • 成本:課後分析用 Azure OpenAI 批次跑,不做即時 AI 互動。

04方案與取捨

  • 六帽循序解鎖:組內該存檔的人都存檔,下一頂帽子才解鎖,避免有人偷跑或漏答。
  • 小組行動鎖定:同一組被鎖定討論同樣選出的行動,確保討論聚焦。
  • 從「指定角色」改成「開放參與 + Pass」:最初每人固定一頂帽子,帶班後發現沒被分到的學生容易放空,於是改成全組共同作答,不想答的欄位用 Pass 明確略過。
  • 綠帽看得到黑帽:綠帽題目是「針對黑帽點出的困難找解法」,所以在綠帽頁即時帶出本組黑帽答案。
  • 藍帽共識:最終方案需要全組共識,但只讓意見不一致的成員重選,減少來回。
  • 後台改用 Firebase Authentication:取代早期寫死在程式碼裡的管理員密碼。
  • 評分看連貫性,而不是 AI 偵測:與其判斷答案是不是 AI 寫的,不如看前後帽子是否呼應。

關鍵決策

05人機合作方式

我的角色是定義問題與規則,Claude 負責實作與除錯。幾個典型的分工:

  • 我觀察、它定位:改成開放參與後,「儲存」按鈕被鎖死。我回報症狀,Claude 追到 subscribeHatReadiness 的判斷問題與 hatKey 的 race condition。
  • 我定義教學目標、它做成介面:我要「綠帽回應黑帽」,Claude 在綠帽頁加上即時訂閱的黑帽困難點區塊。
  • 我定義分析框架、它寫工具:課後分析我只定三件事——白→黃有沒有引用事實、黑→綠有沒有回應困難、藍帽是不是具體行動。Claude 寫了分析腳本:統計數字用程式先算好,再把統計與原文交給 Azure OpenAI 做質性解讀。

人機合作關鍵時刻

  1. 修正同步狀態 bug

    我判斷了什麼

    改成全組開放作答後,學生端的「儲存」按鈕被鎖死。我把這個症狀交給 Claude 處理。

    AI 做了什麼

    Claude 追到 subscribeHatReadiness 在 open-to-all 模式下的判斷問題,以及 hatKey 的 race condition,一併修正。

    結果

    開放參與模式下的儲存按鈕恢復正常,修正寫進 commit 紀錄。

    一句話 流程規則一改,同步狀態的假設就要重新驗一次

  2. 把教學目標變成介面

    我判斷了什麼

    我要的是「綠帽回應黑帽提出的困難」,所以要求綠帽作答時直接看得到同組黑帽寫了什麼。

    AI 做了什麼

    Claude 在綠帽頁新增即時訂閱的「本組黑帽的困難點」區塊,組員一存檔就更新。

    結果

    黑→綠的回應從靠記憶變成有畫面可對照,之後也成為課後分析的一個維度。

    一句話 想評量什麼,就先在介面上讓學生做得到

  3. 依課堂觀察改產品規則

    我判斷了什麼

    帶班後我決定放棄「一人一頂帽子」,改成全組作答、可 Pass;白帽要拆成具體欄位,老師後台也要能直接改學生答案。

    AI 做了什麼

    Claude 修復作答按鈕、把白帽改成三個欄位、實作 Pass 機制,並在後台加入作答編輯功能。

    結果

    流程變成每個人每頂帽子都有事做;不想答的欄位有明確出口,而不是空著卡住。

    一句話 原型的角色設計要讓真實課堂來檢驗

  4. 課後 AI 分析

    我判斷了什麼

    我定義分析框架:不判斷是不是 AI 寫的,而是看白→黃有沒有引用事實、黑→綠有沒有回應困難、藍帽是不是具體行動。

    AI 做了什麼

    Claude 寫了 analyze-708.js:從 Firestore 讀資料,用程式先算好填寫率、藍帽一致性、行動分布,再把統計與原文交給 Azure OpenAI 做質性分析。

    結果

    產出 708 班 28 筆作答的分析報告,含各組連貫度與三項教學建議。

    一句話 數字交給程式算,模型只負責解讀

06成果

  • 實際用在三個班級、約 87 位學生的地球日課堂。
  • 708 班課後分析(28 筆作答):
    • 各帽子完整填寫率:白帽 36%、紅帽 57%、黃帽 46%、黑帽 50%、綠帽 54%。白帽需要找數據與出處,最常被部分略過。
    • 最終行動:行動 1「隨身攜帶購物袋、環保餐具及水杯」13 人、行動 32「多走樓梯、少搭電梯」10 人,為多數選擇。
    • 8 組中有 6 組藍帽達成一致。
    • 報告提出三項教學建議:白帽資料模板、藍帽計畫模板、同伴互評。
  • 框架本身與地球日主題無關,可延伸到 SWOT、文本批評、公民議題思辨等討論情境。

畫面

地球日 × 六頂思考帽 – 1
地球日 × 六頂思考帽 – 2
地球日 × 六頂思考帽 – 3
地球日 × 六頂思考帽 – 4
地球日 × 六頂思考帽 – 5
地球日 × 六頂思考帽 – 6

07如果重來

  • 白帽要給鷹架:白帽完整填寫率只有 36%,是六帽中最低。下次會一開始就提供數據模板與出處格式,而不是等分析報告指出來。
  • 藍帽計畫要有格式:部分組別的藍帽偏口號。下次會讓藍帽直接填「做什麼、什麼時候、怎麼檢核」。
  • AI 報告要更多在程式裡算:分析報告裡「整體連貫度分布」一段,模型自己算的組數前後對不上。數字類的結論應該全部由程式算好,模型只做解讀。
  • 金鑰管理從第一天做好:分析腳本早期是從本機文件解析金鑰,之後才改成環境變數。這件事應該在寫第一行 API 呼叫時就定好。