📚職涯停看聽・知識庫← 總部儀表板
📅最後更新:2026/06/11
📑 目錄

RCF-081:「月底結帳」SKILL 建立

日期:2026-06-11 | 觸發條件:4(新增 SKILL)| 狀態:已決策並執行

背景

財務月報(monthly-report.md)為實收制人類 SOT,每月底需收口。既有自動化只覆蓋部分:

  • A-04 monthly-reminder:25 日 LINE 提醒 Tim 準備月報(只提醒,不做事)
  • A-06 monthly-summary.py:次月 2 日產 auto-summary.md(只收入彙整呈現,無支出、無淨利、無實收確認

缺口:把「加支出 + 算淨利/年累計 + 實收確認 + 寫月報 + KPI」這層自動化做不到(實收制需 Tim 在迴路確認)→ 本 SKILL 補此層。

設計過程(全面盤點,非增量)

⚠️ 本 SKILL 查照經 3 輪「足夠嚴謹嗎」+ Tim 明示「全面盤點,不要想到什麼才做什麼」後,才做到真正窮盡。前兩輪(8 維+D1-3 / G1-G6)為增量擠缺口(IMP-156/166 反模式同日第二次復發),第三輪才把財務系統 7 個資料檔 + 3 個自動化全讀後一次盤完。→ 收尾記 IMP-156 升規後復發。

全面盤點成果:16 條資料品質鐵則(G1-G16)

源於實讀財務系統檔案發現的陷阱(檔案誤命名/欄位髒/三視角/多租戶/免費預約),全寫死進 SKILL 步驟:

# 鐵則摘要
G1 income-2026.json 是全史檔(含 2024-25)→ 年累計用歷史月報表非 JSON 加總
G2 expense recurring 欄位髒 → 用 subscriptions.json 當權威清單
G3 年費僅 renewal 月計,月費每月期望
G4 未收款 Tim 輸入非自動(實收制 JSON 只有 received)
G5 auto-summary 次月初才產 → 預設結上月,缺則 daily fallback
G6 重跑保護:更新非追加
G7 多租戶只計 tim-self
G8 免費預約不進 payment_by_date,只認實收
G9 daily 三視角用 payment_by_date(會計主視角)
G10 CRM 漏記核對(KPI 收入漏記率)
G11 三財務 KPI 月末報告
G12 稅務邊界(記 invoice_method 不算稅)
G13 S-code 定價異常檢查(防 C17)
G14 跨年年累計只加本年
G15 月報狀態進行中→已完成
G16 push 前 git stash→pull --rebase→pop(A-06 bot commit auto-summary)

決策(D1-D6,Tim 2026-06-11「執行」採全推薦)

# 決策 採用
D1 inventory.json 無財務欄位 不更新 inventory,改更新歷史月報表(等效)
D2 收入 SOT monthly-report.md 實收最終帳,三源並列 Tim 確認
D3 固定支出補入 subscriptions.json 當清單,問 Tim 實際金額(FX 浮動)
D4 觸發時機 預設結上月、次月初跑;缺 auto-summary 則 daily fallback
D5 KPI 範圍 納入三 KPI + CRM 漏記核對
D6 多租戶 僅 tim-self,SaaS 另案

影響檔案

  • 新建:.claude/skills/月底結帳.md、本 RCF
  • 修改:主 CLAUDE.md(⚙️ SKILL 表 + 情境偵測 + 修改記錄)、commands-reference.md、finance/CLAUDE.md(修改記錄)、decisions/README.md、dev/tasks.md(P3 [x])

後續

  • 首次實際執行後 ⏳→✅(建議結 2026-05 或 2026-06 驗證 G1-G16)
  • expense JSON 改動 → /api/summary 即時反映,無需 Vercel deploy
← 返回 決策記錄