Vibe Coding 實戰課 — Stage 1 · 用 AI
你的第一個對外服務 — 有網頁、有 AI、有通知
按 → 或空白鍵開始
故事線
一張飲料菜單(M1-3)→ 團購表單 → 自動統計 → AI 分析 → TG 通知老闆去買
今天做完,就是一條完整服務
M1-1 只能自己看 → M1-3 背景自動跑 → 今天:任何人都能用的服務
ROUND 1 · 0:00–0:25
從「自己電腦看得到」到「全世界看得到」
M1-3 的對話可能在不同視窗或斷掉了
新任務從零開始,順便複習怎麼跟 AI 講清楚
幫我寫一個 Google Apps Script 做一個網頁,顯示 Google Sheet 裡的飲料訂購資料 我的 Sheet 裡有這些欄位(自己貼上 Sheet 的欄位) [姓名 / 飲料 / 冰塊 / 甜度 / 數量] 請用 doGet 和 HtmlService 寫 做成讓任何人都能打開的公開網址
關鍵:把你 Sheet 的欄位貼給 AI
AI 才知道要讀哪些資料
程式碼貼好了 請告訴我怎麼部署成網頁 讓任何人都能打開 存取權限要設成所有人
AI 會教你「部署 → 新增部署 → 網頁應用程式」
你照做,拿到一個 https 網址
完成這一步的同學請舉手,等大家都到位再繼續
只能在自己電腦看
分享要傳檔案
沒有公開網址
有公開網址
任何人都能打開
手機也能看
關鍵差異:部署(Deploy)= 上架
從「本機檔案」跳到「公開服務」
新建專案預設叫「無標題的專案」
累積幾個之後完全分不出哪個是哪個
幾個月後在 Apps Script 列表還認得出來
別人打開看到「需要登入」或「沒有權限」
任何人都能直接打開,不需要 Google 帳號
部署完跳出的網址沒複製到,回頭找的方法
每次都能回來找 — 不用怕網址不見
互相打開同學的網頁
版面設計、資料呈現方式、手機版面是否正常
這個網頁只能「看」— 訪客能不能「填資料」進來
下一輪:讓訪客可以填資料進來,存到 Google Sheet
ROUND 2 · 0:25–0:50
讓訪客不只能看,還能填資料進來
把這個網頁升級成意見收集頁 訪客可以填姓名和意見 送出後寫入 Google Sheet 網頁下方顯示已提交的意見列表
AI 會在原本的 doGet 加 doPost
觀察 doPost 怎麼接收表單、怎麼 appendRow 寫入 Sheet
GAS 部署是「快照」概念 — 改完要重新部署,網址才會跑新邏輯
會產生另一組新網址
之前分享出去的舊網址跑舊程式
同一個 Bot 被你拆成兩個
版本選「新版本」
網址不變,程式碼更新
之前分享的網址也跟著更新
完成這一步的同學請舉手,等大家都到位再繼續
在自己手機上填寫表單,送出
看到 A 的意見出現在列表中
只有前端(用餐區)
資料存在瀏覽器裡
關掉就沒了
前端(網頁)+ 後端(GAS + Sheet)
資料存在雲端
不同裝置都能存取
前端 = 用餐區(訪客看到的畫面)
後端 = 廚房 + 倉庫(GAS 處理邏輯 + Sheet 存資料)
客人(訪客)在用餐區(網頁)點菜(填表單)
廚房(GAS)接單處理 → 存進倉庫(Sheet)
加上輸入驗證 姓名和意見都不能空白 送出後顯示「已提交」確認訊息 按鈕送出後變灰避免重複送
對外服務一定會遇到空白提交和重複送,會留下垃圾資料
現在的網頁:能看、能填、能存、有驗證
但資料進來之後,要靠人去看 — 能不能讓 AI 自動分析
下一輪:串接 AI API,讓收到的意見自動被分析
ROUND 3 · 0:50–1:15
Groq + Llama — 免費、不需信用卡、速度快
用 Google 帳號登入
不用綁卡 / 不用付費
專門做推理的硬體
回應比一般 API 快數倍
以 console limits 為準
課堂選當天額度足夠的模型
console.groq.com → 用 Google 登入 → API Keys → Create Key
用 Python / Node.js / 自己的伺服器
免費額度可用
不用綁卡也能跑
GAS 屬於 Google Workspace 服務
從 Workspace 呼叫外部 API
必須啟用 GCP Billing 才能跑
Google 給「綁卡送 $300 試用額度」聽起來划算
但 $300 用完會自動扣款,新手很容易忘了關掉
課堂用 Groq 完全免費不用綁卡,沒有這個風險
console.groq.com → 用 Google 帳號登入
取個名字(例如 vibe-coding-class)
視窗關掉就看不到了,先存到記事本
完成這一步的同學請舉手,等大家都到位再繼續
升級系統:新意見送出時呼叫 Groq API 優先用當天 console 顯示可用且額度足夠的模型 讓 AI 自動分類成正面 / 中性 / 負面 分類結果寫回 Sheet 同一列的下一欄
有主動提醒「放 Script Properties」= 好 AI
直接寫死在程式碼 = 你要會自己看出問題
觸發 → 處理 → 儲存 → 展示
四元素已經到齊三個,只差「通知」
三個元素到齊 — 最後一個「通知」在下一輪補上
const KEY = "gsk_abc123..."
Key 寫在程式碼裡
任何能看到程式碼的人
都能拿走你的 Key
PropertiesService .getScriptProperties() .getProperty('GROQ_KEY')
Key 存在 Script Properties
程式碼裡只有取用邏輯
密碼不能寫在程式碼裡 — 這個概念到 Stage 2 會變成 .env / Secrets
客戶留言進來
→ AI 自動分類:
退款 / 技術問題 / 建議
→ 分到不同 Sheet 頁籤
外國客戶留言
→ AI 自動翻譯成中文
→ 翻譯結果寫回 Sheet
→ 中文團隊即時處理
同樣的架構(表單 + AI + Sheet),套到不同場景
差異只在 AI 的指令和 Sheet 的欄位設計
ROUND 4 · 1:15–1:35
四元素最後一塊拼圖 — 推播通知
在 Telegram 搜尋 @BotFather → 對話按 /newbot → 取得 Token
完成這一步的同學請舉手,等大家都到位再繼續
升級系統:有人提交意見時自動推 Telegram 給我 通知內容:意見原文 + AI 情緒標籤 Bot Token 和 Chat ID 我會放 Script Properties (叫 TG_TOKEN 和 TG_CHAT_ID) 如果我還不知道 Chat ID,請教我怎麼取得 也請提醒我第一次要先對 Bot 按 /start
把常見坑寫進 prompt → AI 會主動引導你,不用事後修
填一個意見 → 手機收到 TG 推播
推播內容包含:意見內容 + AI 分析結果
全自動,零人工介入
這四個元素組合在一起,就是一個完整的自動化服務
幾乎所有 SaaS 產品的核心邏輯都是這四步
有人填表單(事件)
→ AI 分析 + 寫 Sheet
→ TG 主動推播給你
GitHub 有 push(事件)
→ 自動跑測試
→ 自動部署
收到付款(事件)
→ 更新庫存
→ 發出貨通知
事件驅動是所有自動化的共同模式 — 今天用的是 GAS 觸發器 + API 主動推送
多了空格或少了字元
→ 用 M1-3 學的「整段執行記錄貼給 AI」
Telegram 30 秒內取一次新訊息
→ 自己對 Bot 發一則訊息再執行
大部分問題已經在 Step 2 的 prompt 預埋好了
剩下的小問題用 M1-3 的除錯流程就能搞定
四元素全部到齊
你有了一個完整的對外自動化服務
ROUND 5 · 1:35–1:55
技術相同,差異在「你解決了什麼問題」
大家有彼此的意見收集頁網址
每個人去填其他同學的網頁
系統自動在跑 — 你寫的服務真的有人在用
收到至少 3 筆通知的同學請舉手
留言 → AI 分類 → TG 通知對應客服
定時掃 Sheet → AI 判斷不足 → TG 推採購
18:00 觸發 → AI 摘要 → TG 推主管
回覆累積 → AI 歸納主題 → TG 推研究者
技術都一樣(網頁 + AI + Sheet + 通知),差別只在「你解決什麼問題」
從一張飲料菜單開始
到一個完整的自動化對外服務
這就是 Stage 1 的終點
用這六個維度評估自己和同學的作品
差距來自哪裡 — 指令品質、架構理解、還是除錯速度
ROUND 6 · 1:55–2:05
四堂課的升級線,和下一階段的方向
從「完全不會寫程式」到「有一個公開的自動化服務」
中間只靠 AI 聊天 + 正確的操作流程
Stage 1 用到的四種「記住設定」的方式
ChatGPT 的自定義指令
每次對話自動帶入
Gemini 的系統指令
角色 + 限制 + 格式
GAS 的安全儲存
API Key / Token
Claude.ai 的專案設定
跨對話保留指示與知識
| # | 常見問題 | 學到什麼 |
|---|---|---|
| 1 | 部署權限選錯 | 權限管理 |
| 2 | 新增部署 vs 管理部署搞混 | 網址不變要選「管理部署」 |
| 3 | 沒驗證收到空白提交 | 對外服務要防呆 |
| 4 | API Key 寫在程式碼裡 | Script Properties |
| 5 | TG Token 貼錯 | 整段執行記錄貼給 AI |
不只學了什麼,是想法怎麼變了
從「我是服務的使用者」→ 我能組裝自己的服務
從「零基礎」到「有公開服務」
Stage 1 的核心:用 AI 做事,不用自己寫程式
別人的 AI
別人的伺服器
別人的通訊管道
平台規則改了,你就被影響
能不能有「自己的地盤」
不再依賴 GAS 的超長網址
.env / Secrets — API Key 的正式管理方式
從瀏覽器操作進入開發環境
Stage 1 = 用 AI → Stage 2 = 串 AI → Stage 3 = 造 AI
把今天的意見收集系統改成你工作中的實際場景
例如:客戶回饋收集 / 內部建議箱 / 日報通知
記錄你改了什麼、遇到什麼問題、怎麼解決
這些素材在 Stage 2 會用到
下一階段 — Stage 2
Stage 2:用 GitHub 建你自己的網站
學會安全管理,用 IDE 做更強的工具
M1-4 / Stage 1 完成