這個 Cloudflare Worker 是兩人工作群的低摩擦入口:
tracking/inbox.md,不會直接改變 critical path。09:00 天氣使用中央氣象署臺北市信義區鄉鎮預報。降雨機率達 30%,或天氣文字包含雨/雷時,bot 會提醒帶傘並附上「今日 00:00 至最新時間」的全臺累積雨量觀測圖;該圖是已觀測雨量,不是未來降雨預測。最高溫達 33°C 時會提醒防曬補水。手動 /today 與「今天」按鈕不載入天氣或圖片。
工作早報使用 Telegram Rich Message;Ryan、Phoebe、共同三個佇列都以原生 unordered list 呈現。若 Telegram 暫時拒絕 Rich Message,bot 會自動退回傳統 sendMessage,確保早報仍能送達。
| 指令 | 用途 |
|---|---|
/today |
顯示 Ryan、Phoebe、共同三個本週任務佇列與最大風險 |
/status |
顯示 Ryan、Phoebe、共同三個佇列的目前狀態 |
/review |
顯示 Inbox、critical path、本週結果與現有承諾 |
/done A-003 |
將行動設為完成 |
/defer A-003 |
延後可操作的本週任務,並由同一責任類型自動補位 |
/blocked A-003 等房東提供使用執照 |
設為等待並保存原因 |
/undo A-003 |
復原該行動最近一次 bot 狀態變更 |
按鈕與指令都會更新 private GitHub repo,並觸發 HQ 網站重建。
| 檔案 | 用途 |
|---|---|
tracking/milestones.md |
開幕里程碑、Area、critical path 與目標日 |
tracking/actions.md |
責任類型、Driver、Area、所服務里程碑、本週承諾、重啟點與成果證據 |
tracking/inbox.md |
Telegram 自然語言、照片與整理結果 |
tracking/check-ins.md |
完成、延後、系統替補、原因與 undo 前狀態 |
每件行動的責任類型固定為 Ryan、Phoebe 或共同,並保留一位 Driver。個人佇列每週最多三件,共同佇列最多一件且不占個人額度。個人任務只有本人可更新;共同任務兩人皆可更新。系統依 Critical、最早里程碑、硬期限與行動順序在同一責任類型內補位,排除同週已延後、等待、需整理及 Post-launch 任務。若沒有合格 backlog,bot 會明說而不虛構任務。
/setprivacy 將這個 bot 設為 Disable。這是自然語言與照片能進 Inbox 的必要條件;群組不應用於私人閒聊。chat.id 與兩位成員的 from.id。cd telegram-bot
npx wrangler secret put TELEGRAM_BOT_TOKEN
npx wrangler secret put TELEGRAM_CHAT_ID
npx wrangler secret put TELEGRAM_WEBHOOK_SECRET
npx wrangler secret put ALLOWED_USER_IDS
npx wrangler secret put GITHUB_TOKEN
npx wrangler secret put CWA_AUTHORIZATION
ALLOWED_USER_IDS 格式:
123456789:Ryan,987654321:Phoebe
顯示名稱必須是 Ryan、Phoebe,才能符合 Driver 驗證。
wrangler secret put CWA_AUTHORIZATION 寫入 Worker secret。缺少或失效時,bot 仍會送出工作早報,只會省略天氣。npx wrangler deploy
https://api.telegram.org/bot<TELEGRAM_BOT_TOKEN>/setWebhook
送出的設定需包含 Worker /telegram URL 與 TELEGRAM_WEBHOOK_SECRET 對應的 secret_token。
/today:確認 Ryan、Phoebe、共同三個佇列及延後按鈕,且不包含天氣或雨量圖。/review 僅查看、不換週。cd telegram-bot
npm test
測試涵蓋 schema、推薦排序、WIP/承諾上限、早晚與週檢視內容、天氣正規化、雨具/防曬門檻、條件式雨量圖、失敗回落、狀態事件、undo、Inbox 去重及照片選擇邏輯。