我用 AI 做了四次番茄鐘程式,但前三次都失敗了。
不是卡在技術,而是我根本沒搞清楚自己想要什麼 —— 而 AI 則是很配合地幫我把錯的東西做得又快又好。
所以這三十天,我想要把這個故事從頭到尾和你分享。
初次碰到 vibe coding 時,覺得最奇幻都地方就是,好像「想到什麼都做得出來」,但實際動手才發現,這個看似魔法的能力才是最不受控制的。
我想用透過實際的紀錄來分享三個我遇到的問題:
1. 怎麼和 AI 說,才能許願成功?
我想分享當初開發的 prompt 原文——包含寫得不錯的,以及那些讓 AI 繞了兩天才完成的。我還讓 AI 反過來幫我的 64 則 prompt 打分數,最低的一項只有 1.5 分。
2. AI 說「完成了」,我該怎麼確認?
第四個版本有 10 個測試腳本、單一模組最多 70 項檢查,但它們看不到畫面。一個功能自動測試全過但我用了兩個月才發現不對。
3. 東西越做越快,品質怎麼辦?
第二個版本 103 個 commit,裡面有三次 revert 發生在同一天、一個 685 行的 C++ 擴充,還有一個我十二天後才發現被 commit 進 git 的 104MB 執行檔。
因為長時間在電腦前工作,久坐久盯著電腦是常態,但最困擾的是當我忙起來的時候,我會忘記停下來——連眨眼的次數都變少了,等到身體開始發出警訊才發現已經盯了兩三個小時。
市面上番茄鐘很多,我原本也在用網頁版 pomofocus.io 來控管自己的工作時間。然而當它盡責的告訴我時間到了,我卻是把提示關掉後又繼續工作,想著在一下下就好,一回神就半個小時過去了。
我當時想,我要的不是一個只會響的計時器,還要是一個我願意為它停下來的工具。
| 版本 | 時間 | 技術 | 結果 |
|---|---|---|---|
| pomodoro-extension | 2025-08-29 | React + Vite 網頁 | 1 個 commit,一天都沒用過 |
| Sproutimer | 2026-04-07 ~ 04-24 | Godot 4.6 桌面,原訂上架 Steam | 103 個 commit,測試幾次後放棄 |
| EyeFarm | 2026-06-12 | 只有一份 315 行的規劃文件 | 存檔後約三小時被我自己否決 |
| Pomofocus | 2026-06-12 ~ 08-10 | Godot 4.6 桌面 | 49 個 commit,現在每天在用 |
其中 Sproutimer 的功能最多——白噪音、LoFi 音樂、任務標籤、筆記視窗、會自動變色的 UI、系統匣圖示——它看起來更像一個完整的產品。
但定版後,我卻一次都沒有真的用起來。
而現在每天在用的 Pomofocus,雖然比起來功能少了許多,但它會在時間到的時候,全螢幕覆蓋畫面,讓我真的能短暫的喘口氣。
這裡就不得不提到前幾天讓我差點放棄參賽的發現。
因為在開發的時候,沒有想過會寫成文章,所以我沒有刻意記錄,想到什麼就下什麼指令。等到決定參賽翻 Claude Code 的對話紀錄時,才發現四月那批已經被預設保留 30 天的機制清光了。
但好在一些開發習慣和散落的紀錄,才將這三十天的素材像拼圖一樣慢慢拼湊出來:
• git log:兩個專案共 152 個 commit,每一筆都有時間戳和改了哪些檔案。唯一完整倖存的資料。
• ~/.claude/history.jsonl:這個檔案沒被清除機制掃到,留著我在 Sproutimer 打過的 22 則指令。
• 623 行的 HANDOVER.md:Pomofocus 的交接文件,我要求 AI 每完成一段就寫進去,現在有 31 個帶日期的小節。
• 一份 prompt 健檢報告:7 月讓 AI 分析我 64 則 prompt 的結果。
• 一段 claude.ai 的規劃對話:Sproutimer 開工前四天的討論,從「我想在 Steam 上賣東西」一路到產品命名。
所以接下來的故事都是我從這些碎片中拼出來的紀錄,不是單純的回憶。引用的 prompt 也都是原文,包含現在看起來很簡單的問題。
至於紀錄被自動刪掉這件事本身,我會在 Day 27 和大家聊聊。
我會跟著開發階段走,並且依序聊聊需求怎麼歪掉、工具怎麼選、功能怎麼做、卡在哪裡、欠了什麼債、怎麼測、怎麼上線,最後是成本和復盤。
明天先從最早也最短命的那一版開始——我用 Gemini 產生程式碼、複製貼上就完成,然後一天都沒用過的網頁番茄鐘。