2026 冬季賽的配對總表:每組自動編號、進度條與招募卡展開(除了我之外的成員名字與頭像已打霧)
第一季,我在留言串裡手動配對了 16 組
2026 年 8 月,我在讀家攻略辦了第一次「夥伴組隊」。規則很簡單:兩人一組,每個人寫下四件事,分別是目標、祭品(沒做到要獻給夥伴什麼)、獎勵(做到了希望夥伴送你什麼),以及我能提供的協助,然後在接下來的 8 週互相督促。
那時候的做法非常陽春。我在社群的動態牆發一篇貼文,想組隊的人在底下留言,想跟誰組隊,就在對方的留言底下再留言。誰跟誰一組、誰還在等,全靠我手動整理。每更新一次名單要花好幾十分鐘,前後更新了 10 次以上。開跑那天,為了讓大家一眼看懂分組,我還另外做了一頁配對名單:16 組、32 位夥伴、1 位等待組隊。
第一梯次開跑時,我另外手工做的配對名單頁(只截上半部,成員的個人目標不公開)
花了很多時間嗎?確實花了。但我不覺得那是浪費。第一季的目的,是先確認這個活動真的對大家有幫助,我也想親自讀過每個人的需求。這不是浪費時間,而是第一次必要、也值得的測試營運。
結果活動非常成功,大家的回饋也很好。問題也跟著浮現:夥伴組隊兩個月一季,每一季大家都可以換不同的夥伴、認識更多人,這正是它凝聚社群的地方。可是如果每一季都要我在留言串裡手動撮合、更新十幾次名單,這個活動很難長久辦下去。
| 項目 | Before:貼文+留言 | After:夥伴組隊外掛 |
|---|---|---|
| 怎麼報名 | 在貼文底下留言寫四題 | 在社群裡填「招募卡」,四題各有說明和例子,也有字數上限 |
| 怎麼配對 | 在對方的留言底下再留言,由我手動整理 | 三條入口:公開徵隊友、在招募牆一鍵加入、邀請特定夥伴(對方同意才成隊) |
| 誰配了誰 | 翻完 81 則留言才知道,開跑時另外做一頁名單 | 配對總表自動編號「第 N 組」,依成隊時間排序 |
| 每週進度 | 沒辦法回報 | 隊伍頁一週一列,一顆「我完成了」,兩個人都勾才亮綠 |
| 8 週結算 | 原本沒有結算機制;還好外掛趕在第一季最後一週上線,大家改用新的「夥伴組隊」功能結算 | 補登期一過自動結算,標出達標或部分達標 |
| 心得與回顧 | 散在留言和聊天群組裡 | 最後一週寫 300 字組隊心得,跟著招募卡留存,歷史賽季隨時展開回顧 |
| 我要花的時間 | 每次更新名單好幾十分鐘,前後 10 次以上 | 在賽季管理開一個新賽季、選好三個日期,配對、總表、結算都交給系統 |
這件作品用到的課程內容
| 課程內容 | 這次怎麼用 |
|---|---|
| 一頁式報告 | 把課程的一頁式網頁報告 skill 跟我原本的 skill 結合,改成自己的 html-report,畫了六版示意圖跟 AI 溝通 |
| GitHub 版控 | team-up 從第一天就是獨立的 private repo,每一版都有 commit 和 Release,另一台電腦也能直接拉到最新的外掛檔案 |
| 刪檔防呆 | 要刪任何東西都得先問我,而且一律走回收桶;這次刪掉兩支用不到的舊檔案,也是我點頭後才送進回收桶 |
| 記錄踩坑 | 把 lessons learned 的習慣延伸成介面通則 FC-PLUGIN-GUIDE.md |
第一次寫外掛,我把 Claude Code 當成整個開發團隊
2026 年 9 月,是我第一次開發 WordPress 外掛,同一個月平行做了兩支:記錄社群活動的 playbook-ladder,以及這支夥伴組隊 team-up。
team-up 從 09/22 開 repo,到 10/08 發佈 v0.12.2,前後 17 天。這段時間我沒有寫任何一行程式。我做的事情是:把我要什麼講清楚、看示意圖、做決定、實際用手機點點看,然後挑毛病。
| 工作 | 誰做 | 用了什麼 |
|---|---|---|
| 定義問題、拍板每一條規則 | 我 | 對話、在示意圖上逐區塊回饋 |
| 研究市面上的配對與組隊產品 | Claude Code | 網路搜尋,借鏡 Hinge、Supporti、Discord LFG 三種模式 |
| 介面溝通 | Claude Code 畫、我改 | html-report skill 做的單頁示意圖,共六版 |
| 架構與規格 | Claude Code | docs/ARCHITECTURE.md、docs/API.md,我看過才開始寫程式 |
| 寫程式 | Claude Code | WordPress 外掛(PHP+原生 JS),嵌進 Fluent Community 的單頁應用 |
| 介面美感與易用性檢查 | Claude Code | ui-ux-pro-max skill,並對齊 playbook-ladder 的風格 |
| 測試 | Claude Code 自動測、我手動點 | 本機沙盒+dev/smoke.py(0.8.0 時 107 個檢查點全過)、staging 測試站 |
| 部署與版本 | Claude Code | dev/deploy-staging.py 一條龍部署、GitHub Release 打包 zip |
| 匯入第一季真實資料 | Claude Code 先唯讀盤點、我確認後才寫入 | dev/teamup.py(先 plan 再 apply) |
先畫圖,不寫程式
這次最值得分享的決定,是我在第二輪對話就跟 Claude Code 說:「我們繼續用示意圖來溝通,先不要去做程式。示意圖溝通清楚,你會更好做程式。」
先畫圖再動手,其實是我一直以來的習慣。不同的是,這次我手上多了一個工具。我在雷蒙的 AI Agent 課程裡學到製作一頁式網頁報告的 skill,把它跟我原本的 skill 結合,改成我自己的版本 html-report。有了它,我可以很清楚地用示意圖跟 AI 溝通,一路修正到設計細節。
一開始,我請 Claude Code 查市面上類似交友、配對的產品。它給了三個參考對象:Hinge 的「三題 prompt 卡」、Supporti 的「梯次配對」、Discord 的 LFG 徵人卡。我說光看描述聽不太懂,它就畫了一頁三個方案並排的示意圖,每個方案三個畫面。
AI 先把三種方案畫出來,我才做得了決定(成員名字已換成代稱)
看到畫面之後,討論的速度完全不一樣。我可以指著某一格說「這個按鈕改名」「這裡不要『收到邀請』,直接『加入組隊』」「黃色頭像代表發起者、藍色代表加入者,綠色留給進度條」。從選方案到定案,總共來回六版。賽季、四題卡、三條成隊入口、鎖鏈卡、隊伍頁回報、八週結算,全部是在圖上定下來的。
第四版設計稿,「改」「新」標籤標出每一輪修改的地方(成員名字已換成代稱)
卡關:它跳出一個獨立頁面,而且顏色不對
第一版上測試站的時候,我點進「夥伴組隊」,結果它跳出一個獨立的網頁。功能都在,但感覺像是離開了社群,跑到另一個網站。我請它參考 playbook-ladder 的活動紀錄,改成直接嵌在 Fluent Community 的頁面框架裡,網頁和手機都一樣。
接著是外觀。說實話,原本的 HTML 示意圖做得很漂亮,真正做出來的版本卻有點粗糙:沒有返回鍵、間距太擠、配色怪怪的,而且完全沒考慮深色模式。後來查出原因,它把顏色設定掛錯了位置,讀不到 Fluent Community 定義好的顏色,只好自己發明顏色。
這一輪我提了十幾項修改,從返回箭頭、13px 的篩選按鈕、載入動畫,到把「卡」統一改稱「招募卡」、「牆」統一改稱「招募牆」,讓整個功能更有讀家攻略的遊戲感。
改完之後,我做了一件我覺得比修 bug 更重要的事。我請它把我在 team-up 和 playbook-ladder 兩次開發中提過的介面要求,整理成一份通則 FC-PLUGIN-GUIDE.md,寫進我的 AI 分身資料夾 waki-ai-agent。之後日期選擇器要用哪一種、頭像滑過去要跳出社群原生的小名片,也都陸續補進這份指南。
用 81 則留言,還原每一組真正的組隊日期
第一季的資料是匯入的,所以每一組的組隊日期都被設成 08/01。問題來了:第 14 組是第三週才組隊,進度條卻顯示 5/8,看起來像沒做完。
我先調整了規則:晚組隊的人,進度條的分母跟著變少。第一週組隊的人要完成 8 週,第三週組隊的人只要完成 6 週就算 100%。但要套用這條規則,得先知道每一組「真正」是哪一天組隊的。
這些日期,其實就藏在第一季那篇招募貼文的 81 則留言裡:誰回覆了誰、哪一天回覆,就是他們配對成功的日期。我請 Claude Code 去讀這篇貼文,把每一組的組隊日期比對出來。因為動的是正式站,我特別交代它:「先用 read-only 把每一組都盤點出來,讓我做初步確認。」它先交出盤點表,我確認後才寫入,寫完再讀回來核對一次。
碰正式環境的資料,先唯讀盤點,再由人確認,寫完再讀回驗證。AI 動作很快,所以更需要在「寫入」之前留一道人的關卡。
上線之後:陽春的留言串,長成一套完整的功能
| 項目 | 數字(2026-10-12 從正式站唯讀查詢) |
|---|---|
| 開發期間 | 09/22 開 repo → 10/08 v0.12.2,共 17 天、42 個 commit、10 個 Release 版本 |
| 外掛規模 | PHP、JS、CSS 約 6,200 行,我一行都沒有手寫 |
| 第一季「2026 秋季」 | 從留言串匯入 17 組、34 張招募卡,補登期到 10/14 |
| 第二季「2026 冬季」 | 10/15 才正式開跑,10/08 開放報名到現在第 5 天,已經有 18 張招募卡、7 組成隊、4 位等待中 |
冬季賽開放報名之後,很多成員陸續加入,大家也覺得很新鮮。原本那麼陽春的做法,竟然演化出這麼完整的功能,可以從頭到尾支援、記錄大家的組隊過程。
實際用起來是這樣:管理者開一個新賽季,開始日前 7 天就開放填卡。成員進「夥伴組隊」填招募卡,可以公開徵隊友、在招募牆直接加入別人,也可以私下邀請有默契的夥伴。成隊之後,每週到隊伍頁按一下「我完成了」。賽季結束再給 7 天補登期,系統自動結算。最後一週寫下的組隊心得會跟著招募卡留存,以後點開歷史賽季,就能看到每一組當初的目標,和最後的心得。
課程學習心得與評價
對我來說,這門課的學習體驗非常棒。
它讓我更熟悉跟 GitHub 互動的機制。team-up 從第一天就是一個獨立的 private repo,每一版都有 commit、有 Release,在另一台電腦也能直接拉到最新的外掛檔案。
它也讓我替 AI 建了一些防呆輔助,例如不要任意刪除檔案:要刪任何東西都得先問我,而且一律走回收桶。這次開發要刪掉兩支用不到的舊檔案,也是我點頭之後才動手,而且是送進回收桶。
還有,我學會記錄 lessons learned,把踩過的坑留存下來。這次開發的介面通則 FC-PLUGIN-GUIDE.md,就是同一個精神的延伸。
這門課帶給我最大的改變,是讓我更有信心去做以前以為自己做不到的事。原來現在的 AI,已經有能力幫我們把這些想法真的做出來。
留言與交流
使用 GitHub 帳號回覆作者,分享你的想法。


