Claude Code · 鮮乳坊企業內訓

能看
能用

Day 2:全端 · 部署 · 知識庫
3 小時後,你的儀表板有網址,Claude Code 開始懂你。

2026-04-22 · v2.0
熱身 · 別看手冊

Karpathy 4 原則你記得幾條

想 · ?

Think Before ???

簡 · ?

??? First

準 · ?

??? Changes

驗 · ?

???-Driven Execution

為何要背

今天最後一段會把這 4 條「封裝」成一個檔案——永久設定。沒背熟的話,那一段的感動你會感受不到。

Day 2 · 180 分鐘

今日四段

20 分鐘
回顧 + 從單檔到全端
70 分鐘
全端實作 · 後端 + DB + API 串接
40 分鐘
Zeabur 部署 · Git + GitHub + Volume + 環境變數
30 分鐘
個人知識庫 · CLAUDE.md + memory + MCP 預告
20 分鐘
離場任務 · 一週分享會邀請
跟 Day 1 不同

今天 70% 時間在實作,只有 20% 講解。你會一直在打字、貼 prompt、看 build log。

1
單檔 HTML → 全端應用
差在哪

Day 1 單檔 vs Day 2 全端

Day 1

🌐
瀏覽器
打開 .html
📄
單檔 HTML
資料寫死

Day 2

🌐
瀏覽器
fetch API
⚙️
Node Server
Express
💾
SQLite
資料持久
你會獲得的

新增待辦後重整頁面,它還在——這是「能用」的起點。

為什麼選這組

技術棧 · 三件武器

Node.js + Express

Server 框架最小最穩,30 行就能起一個 server。企業常見,學了不浪費。

better-sqlite3

單檔 DB,不用裝伺服器。檔案複製=備份。部署到 Zeabur 也能跑。

原生 HTML/CSS/JS

延續 Day 1 的不要框架原則。未來要轉 React/Vue 都行,但今天先穩。

這是「可以改」還是「不能改」

主線不能改。支線 C 組想換 Postgres / Prisma / tRPC 下課後自己玩,不要拖班級進度。

Day 2 的最大挑戰

Surgical Changes 變超級重要

Day 1Day 2
全部在一個 .html 裡。Claude 改錯也只是那個檔案。 至少 4–5 個檔案:server.js / db.js / index.html / public/app.js / package.json
5 分鐘肉眼 diff 檢查 一次改壞 3 個檔案,你會花 20 分鐘找哪裡錯
「只改 X 區塊」 「只改 server.js,不要動 public/ 下的任何檔案」
反面教材

Claude 最會過度修改的 prompt 是:「請整理一下專案結構」——禁止今天說這句

全端實作 · 70 分鐘

5 個 Step

1
初始化 Node 專案 npm init + 安裝 express/better-sqlite3 + 寫 .gitignore
15'
2
GET API + 前端 fetch /api/todos 回傳 DB 資料,前端改 fetch 取代寫死資料
15'
3
POST API + 新增待辦表單 新增 & 刪除 & 切換完成狀態
20'
4
整合 + 拆檔 把前端資源搬到 public/,server 提供 static
10'
5
Smoke test curl /api/todos,重整頁面,資料還在
10'
Step 1 第一個 prompt

延續 Day 1 的 雙層結構

【Layer 1:需求】 - 角色:資深 Node.js 後端工程師 - 脈絡:延續 Day 1 的儀表板,要加後端讓待辦清單能真正存下來 - 限制:Node 18+ / Express / better-sqlite3 / 單檔 server.js,DB 檔 data.sqlite - 格式:一個 Node 專案,`npm start` 跑起來 - 範例:結構類似 express 官方 hello-world 【Layer 2:開發約定】(同 Day 1 四條) 【本輪任務】 只初始化專案架構: 1. 建 package.json (含 start script) 2. 建 server.js(最小 express,回 hello) 3. 建 .gitignore(擋 node_modules + data.sqlite) 4. 告訴我怎麼跑起來驗證

注意:「只初始化」= Simplicity First。不要一次叫他把 DB 連完,那 Step 2 要做什麼?

人人必會的 30 秒技能

Chrome DevTools · Network 分頁

打開方式

  • 按 F12 開 DevTools
  • 切到「Network」分頁
  • 重整頁面 · 看瀏覽器發了哪些請求
  • 點一個請求 · 看 Request/Response

看什麼

  • 200 成功
  • 404 URL 錯
  • 500 server 爆了,看 terminal log
  • CORS 同 port 不會發生,若你分 port 才處理
為什麼今天教這個

你看不到 Network 就只能猜「為什麼儀表板空白」。看得到,你能直接跟 Claude 說「POST /api/todos 回 500,response body 是 XXX」。能描述錯誤就能修錯誤

2
Zeabur 部署 · 40 分鐘

localhost:3000
https://your-dashboard.zeabur.app

為什麼挑這個平台

Zeabur · 台灣團隊

平台適合這堂課不選的原因
Vercel前端框架(Next/Nuxt)Node backend + SQLite 撐得很勉強
Netlify靜態同上
Railway類似 Zeabur新用戶免費額度少
Render成熟免費方案冷啟動慢
ZeaburNode + DB 全支援中文介面 · 月 $5 USD 免費額度
部署 · 5 步驟

從本機到公開網址

1
Git init + commit 本機 repo + .gitignore
5'
2
推到 GitHub Private repo + git push
5'
3
Zeabur 接 repo 第一次自動部署,拿到 *.zeabur.app 網址
15'
4
Volume + 環境變數 DB 檔持久化,資料不再消失
10'
5
驗收 + 自訂 domain(選用) 互點彼此網站
5'
故意讓你踩的坑

為什麼資料會消失

現象

  1. 部署成功 · 打開網址新增一筆待辦
  2. 在 Zeabur 按「Restart」
  3. 重整網址 · 剛才的待辦不見了

原因

Zeabur 每次 deploy / restart 會開新容器,data.sqlite 跟著消失。

解法

Volume(持久化儲存)+ DB_PATH 環境變數指到 volume 裡。

教學設計

Step 3 先讓你體驗資料消失,Step 4 再教 Volume 修掉。這樣你一輩子記得這個坑。

部署後三問 · AI 治理最小常識

做得出來 ≠ 能上線

1. 這部署在哪?

Zeabur 機房在哪個國家?repo Private 還是 Public?你知道自己的資料去了哪。

2. 誰看得到?

公開網址 = 有網址的人都看得到。放機密資料前要加登入。本堂課的假資料沒關係。

3. 資料安全嗎?

Zeabur 會備份嗎?SQLite 單檔壞了怎辦?敏感資料是否該放別的地方?

本課結論

假資料 / 公開資料 → 直接上線沒問題。真實客戶資料 → 下課後要加登入 + 備份 + 機密管理,擴充包有指引。

4:00 社交驗收

把你的網址貼到 Slack

每位學員把自己的 *.zeabur.app 貼到 #ai-workshop 頻道。

全班繞一圈互點彼此網站 30 秒——這個社交驗收比任何打勾都有教學價值。

看見別人的成品會發生三件事
  1. 「原來他做這個方向,我下次也可以」
  2. 「我的居然也能跑,我其實行」
  3. 「他那個顏色好好看,我下課去問他」——社群種子
3
個人知識庫 · 高潮

Karpathy 4 原則 · 終於不用再手寫

Claude Code 的三層記憶

讓 Claude 懂你

1
專案層 CLAUDE.md
這個專案的規矩、術語、禁忌 · 隨 repo 走
今天做
2
個人層 ~/.claude/CLAUDE.md
跨所有專案 · 你個人的工作偏好
簡單 demo
3
整合層 MCP Server
連 Google Drive / Notion / Obsidian / DB
只預告
4:10 現場 demo

Karpathy 4 原則 → 永久設定

# 鮮乳坊門市日報|開發約定 ## Think Before Coding - 開工前複述需求一次給我確認 - 模糊字眼(簡單做一下、優化、弄好看)要反問 - 多種作法時列出選項讓我選 ## Simplicity First - 不加未要求的功能 - 最小改動達成目標即可 ## Surgical Changes - 只改與本次需求直接相關的行 - 無關的廢代碼只告知、不動手 ## Goal-Driven Execution - 模糊任務先轉成可驗證條件 - 改完跑驗證通過才算完工 ## 專案術語 - 「日報」= 首頁 `/`,顯示當日三張 KPI - 「豐樂」= 鮮乳坊主力商品,不要自動改成「風樂」
魔法時刻

存檔 → 關掉 Claude Code → 重開 → 問任何需求。Claude 的回覆會自動套用 4 原則,你完全沒寫提示。

個人層 · 跨所有專案

你的工作偏好

檔案位置:~/.claude/CLAUDE.md(Windows: C:\Users\<你>\.claude\CLAUDE.md)

# 我的個人工作偏好 ## 我是誰 - 職務:鮮乳坊 ___部門 主管 - 使用習慣:繁體中文為主,程式碼註解可英文 - 工作時區:GMT+8 ## 我的偏好 - 給建議時請先說「建議」再說「原因」,不要反過來 - 長篇回覆用標題分段,我看不下大段落文字 - 不確定時明說「我不確定」,不要硬答 ## 常見任務模板 - 「幫我整理會議紀錄」= 抽出決策、待辦、下次會議時間 - 「幫我回信」= 語氣比我原稿再專業一點但別太硬
進階 · memory 自動記憶

Claude Code 會自己累積你的偏好

在哪

~/.claude/projects/<專案>/memory/

存什麼

  • user.md 你是誰
  • feedback_*.md 你糾正過的
  • project_*.md 專案狀態
  • reference_*.md 外部資源指引

今天不手動建

Claude 在你跟它對話的過程自動累積。用久了,它會越來越像你公司的同事。

你不用學怎麼寫,只要用就會長出來。

最後 2 分鐘 · 點火不實作

MCP · 連接你的工作世界

📁 Google Drive

「找上週那份提案」

📝 Notion

「整合會議記錄寫月報」

🔒 Obsidian

「問我的個人 vault」

💾 DB / CRM

「這個客訴的歷史」

今天不實作

MCP 安裝有學問,30 分鐘不夠。課後擴充包有「第一個 MCP Server」step-by-step。推薦第一個裝 Filesystem,最簡單有感。

首尾呼應 · 全課學習軸

從手寫到永久設定

DAY 1 · 心法
Karpathy 4 原則
當 prompt 心法
DAY 1 · 實作
儀表板踩坑
驗證 4 原則有效
DAY 2 · 全端
4 原則跨檔案
更重要了
DAY 2 · 部署
延伸到工程品質
(可驗證、最小改動)
DAY 2 · 封裝
4 原則寫進
CLAUDE.md
課後 7 天
Claude 越用越懂你
個人助理成型
課程設計秘密

Day 1 教你「會用」,Day 2 教你「用得久」。沒有 CLAUDE.md 的 Claude Code,就像一個每天都是第一天上班的新同事。

4
離場任務 · 一週後再見
4:40 每人領一張紙

未來 7 天 · 你要試做一件事

我的姓名:________________
我的部門:________________

選一個(或自訂):
☐ 把今天的儀表板改成我部門的版本(KPI 標籤+顏色)
☐ 把我常用的一份 SOP 丟進 Obsidian,用 Claude Code 問它
☐ 為我的部門寫一份 CLAUDE.md(術語+禁忌+偏好)
☐ 裝第一個 MCP Server(自選一個)
☐ 自訂題目:________________________________

一週後 2026-04-28(二) 分享會我會準備 3 分鐘分享
一週後 · 分享會

2026-04-28 · 15:00–16:00

形式

  • 每人 3 分鐘
  • 共約 40 分鐘
  • 線上 Teams / 實體會議室擇一(現場舉手表決)
  • 講師 + 課主主持

獎勵(選用)

  • 票選「最讓人驚豔」一名
  • 送一本 AI 書
  • 下期工作坊優先報名權
為什麼要一週後

不是檢查作業。是給你一週的消化期,加上一個要交差的壓力——這是你真正把這 6 小時轉成肌肉的機會。

課後擴充包

你的下一步

  • Claude Code 官方文件 claude.com/claude-code
  • MCP 官方 servers 清單 modelcontextprotocol.io/servers
  • Karpathy skill 原始 repo github.com/forrestchang/andrej-karpathy-skills
  • 本次教材 GitHub (講師開課前填入)
  • 問題反映 Slack #ai-workshop
挑一個,今晚就做

擴充包裡任何一條都比完美規劃更重要。今晚動手 5 分鐘 >> 下週想完整再開始。

End of Day 2

你的 Claude Code
認識你了

6 小時前你對它說話像陌生人。
現在你們有共同語言、
共同的檔案、共同的規矩。

下週再見。

2026-04-28 · 15:00 分享會
Slack #ai-workshop
1 / 28
← → 切換 · F 全螢幕 · N 顯示講者備註