Community研究與資料分析github.com

Yurieff/metrics-pack

將新創公司的營收數據轉換為 MRR(每月經常性收入)、同群分析、NRR(淨收入留存率)及一張投資人簡報。讀取每月更新檔案、客戶營收匯出檔案或合約登記簿。所有計算皆由經過測試的 Python 輔助程式處理,絕不使用文字描述進行運算。

metrics-pack 是什麼?

此技能專為 AI 代理(如 Claude Code、Cursor、Codex 等)設計,用於自動化新創公司營收指標報告的生成。它接受三種輸入格式:每月更新檔案、客戶層級營收 CSV 或合約登記簿,並透過一個經過嚴格測試的 Python 輔助程式 `metrics.py` 執行所有計算,確保數據的準確性與一致性,避免 AI 模型在文字中進行不精確的推論。輸出包含一份純文字說明(metrics.md)、四個 CSV 檔案(MRR、同群分析、NRR 及被排除的合約)以及一張 16:9 的投資人簡報圖片(metrics-slide.png)。此技能支援區分已開帳月份與已簽約但尚未開帳的月份,將低於三個月的合約標記為非經常性收入,並在沒有任何客戶營運滿十二個月時明確報告「12 個月 NRR 無法計算」。它會自動更新公司資訊卡,嚴格遵循以來源數據為基礎的原則,為 AI 代理提供一個可靠、可審計且高度專業化的財務分析工作流程,主要用於盡職調查或投資者溝通。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Yurieff/fundraising-skill-pack/tree/HEAD/skills/metrics-pack

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

指標包

您的任務

您被要求將新創公司的營收數據轉換為基金分析師最先閱讀的數字: MRR、同群分析、NRR – 全部放在一張簡報上。這些數字來自 metrics.py,絕非來自您的推測。 您選擇輸入、執行輔助程式、讀取其 CSV 檔案,並在這些數字周圍撰寫文字說明。

  輸入                      輔助程式 (metrics.py)            您
  ─────                    ───────────────────            ───
  updates/  (a)  ──┐
  客戶匯出 (b) ──┼──►  mrr.csv  cohorts.csv  ──►  metrics.md   (純文字說明)
  合約登記簿 (c) ┘    nrr.csv  excluded.csv      metrics-slide.png (一張簡報)

產出檔案位於目前工作目錄的 <company-slug>/metrics-pack/ 資料夾中:

  1. metrics.md – 說明文件。開頭為「用白話文來說明。」
  2. mrr.csv, cohorts.csv, nrr.csv(以及合約登記簿輸入的 excluded.csv)– 由輔助程式產生,您不需修改。
  3. metrics-slide.png – 一張 16:9 的簡報。

本檔案中使用的縮寫:MRR = 每月經常性收入;NRR = 淨收入留存率; CSV = 逗號分隔值檔案;PNG = 圖片檔案;ISO = 國際日期格式 (YYYY-MM-DD,或月份用 YYYY-MM);EUR = 歐元;USD = 美元;--as-of = 輔助程式中用以指定最後一個已開帳月份的選項。

輸入

來自 $ARGUMENTS 或對話:一家公司,以及一個選擇性檔案。三種輸入類型,依偏好順序如下:

輸入說明如何傳入輔助程式
(b) 客戶匯出CSV 檔案 customer_id,month,revenue,月份格式為 YYYY-MM--revenue <csv>
(c) 合約登記簿帶有標題列 Client, Contract value, Start month, Term (months) 的 CSV 檔案;標題列以上的行會被略過;月份格式如 May-26;數值格式如 "1,550,000"--contracts <csv>
(a) <company-slug>/updates/包含營收行的每月更新檔案,無客戶詳細資訊如同 revenue-chart 讀取(該處的第 2 步),寫入 customer_id,month,revenue,客戶為 total,然後使用 --revenue

對於輸入 (a),沒有客戶區分。輔助程式將會寫入只有標題列的 cohorts.csv 和 nrr.csv,並將 mrr.csv 中的 new、expansion、contraction 和 churned 欄位留空,因為對於單一客戶而言,這些欄位只會重述總增長。忽略這些欄位,不顯示熱力圖,並印出「12 個月 NRR:無法計算」(原因:無客戶詳細資訊)。這同樣適用於任何只有單一客戶 ID 的 --revenue 檔案。

如果公司名稱有歧義(兩家公司同名),請先詢問是哪一家,再開始讀取任何資料。


第 1 步 – 公司資訊卡與輸入

公司資訊卡

<company-slug>/company-profile.md – 首先讀取。如果檔案不存在,則建立它。如果某個欄位為空白,且您得知其資訊,請填入該值,並更新 updated / updated_by。絕不要覆蓋已填入的欄位:如果您發現不同的值,請在 ## Conflicts 區段新增一行,同時提供兩個值及其來源。資訊卡結尾為 ## Conflicts 區段(如果不存在則建立),其表格標題必須為 | Field | Card value | Card source | New value | New source | Found by | Date |。

欄位允許的值
為客戶完成的工作一句話,用公司自己的話來說,附上引號和 URL
誰付錢自由文字
商業模式B2B · B2C · B2G
營收模式subscription · transaction · ads · one-off · n.a.
市場僅限一個:Fintech & insurance · Health & bio · Commerce & retail · Logistics & supply chain · AI & data infrastructure · Enterprise software · Cybersecurity · Legal, compliance & governance · Sales & marketing · HR & talent · Education · Media, gaming & entertainment · Real estate & construction · Energy, climate & agriculture · Industrial & robotics · Consumer lifestyle & services · Other
垂直領域自由文字
階段pre-seed · seed · Series A · Series B+ · n.a.
地理位置總部所在國家;銷售國家
正在進行的募資輪金額 + 貨幣 + 工具,或「未說明」
可用指標位置(updates/、匯出檔案),或「無」

前置中繼資料:company、slug、website、updated(ISO 日期)、updated_by(技能名稱)。 資訊卡的表格有第三欄 Source,每個欄位都必須填入。

從資訊卡獲取公司名稱、商業模式、營收模式和地理位置;地理位置有助於推測預期的貨幣。將「可用指標」填入您使用的檔案。如果營收模式不是 subscription,請在說明文件中說明 MRR 是基於經常性收入的假設。

找到輸入(上表所述)並將其複製到 <company-slug>/metrics-pack/input/ 中,以便執行過程可供審計。除非擁有者同意公開,否則絕不提交或發布客戶層級的檔案。**貨幣:**從檔案中獲取;合約登記簿通常不註明貨幣。如果沒有註明,請在所有地方寫「未註明貨幣」,且絕不要自行選擇一種貨幣。

今天日期與 --as-of。 --as-of 是最後一個實際已開帳的月份 – 通常是從今天日期(ISO)算起的當月。此後的月份為 已簽約:已簽署,但尚未開帳。


第 2 步 – 執行輔助程式

使用 /usr/bin/python3 或任何 Python 3.9+ 版本;metrics.py 只需標準函式庫,且不進行任何網路呼叫。它位於此檔案的旁邊(skills/metrics-pack/metrics.py;在已安裝的外掛中,路徑為 ${CLAUDE_PLUGIN_ROOT}/skills/metrics-pack/metrics.py)。

python3 <path>/metrics.py --contracts <register.csv> --out-dir <company-slug>/metrics-pack \
        --as-of 2026-11 --min-term 3
python3 <path>/metrics.py --revenue <export.csv>     --out-dir <company-slug>/metrics-pack \
        --as-of 2026-11

其寫入的檔案:

檔案欄位意義
mrr.csvmonth, mrr, new, expansion, contraction, churned, status每個日曆月一行;status 在 --as-of 之前(含)為 billed,之後為 contracted
cohorts.csvcohort, month_offset, revenuecohort = 客戶首次產生營收的月份;offset = 自該月起的經過月數
nrr.csvstart_month, months, nrr每個起始月份,若可根據已開帳月份計算(--as-of 之後的月份一律不計),則提供其 12 個月 NRR;若無法計算,則僅有標題列。對於單一客戶的匯出檔案,以及沒有記錄續約的合約登記簿,也僅有標題列;對於登記簿,僅列出某些客戶有記錄續約的起始月份(規則見第 2 步)
excluded.csvclient, value, start, term期限短於 --min-term 個月(預設為 3)的合約

如果輔助程式停止並顯示 error:,它會指出錯誤的欄位或值。請在來源處修正輸入(或詢問擁有者) – 絕不要繞過它進行編輯。

輔助程式的假設(請在說明文件中逐條說明):

  • 合約價值是整個期限的總額,平均分攤:每個月價值 ÷ 期限,從起始月份開始。如果擁有者說是每月或每年,請停止詢問 – 答案會改變所有數字。
  • 只有當期限至少為 --min-term 個月時,合約才算經常性。期限較短的為 非經常性:回報於 excluded.csv,不計入 MRR。
  • 除非有新的一行記錄,否則不會有續約。當合約期限結束時,輔助程式會將離開的營收顯示為 churned。對於合約登記簿,這是 合約結束,而非已證明的流失 – 對於每個此類月份都必須如此說明。
  • 合約登記簿記錄的是合約,而非續約。 合約結束被解讀為營收損失,因此輔助程式僅針對某些客戶有記錄續約的起始月份,從登記簿計算 nrr.csv。規則:續約是同一客戶的後續經常性合約(期限至少為 --min-term),其起始月份至少比先前經常性合約的結束月份晚一個月(結束月份 = 起始月份 + 期限 - 1;因此,在結束後的下個月開始的無縫接軌合約視為續約,也允許有間隔)。與前一合約重疊的第二份合約(追加銷售或附加服務)不算續約。如果沒有任何客戶有續約,則 nrr.csv 僅有標題列,答案為「無法計算」。如果有些客戶有續約,則該數字僅反映 登記簿所記錄的續約,說明文件和簡報都必須如此說明。
  • 停止服務後又重新回來的客戶,將再次被視為 new。

第 3 步 – 讀取輸出

使用 csv 模組讀取 CSV 檔案。您撰寫的每個數字都來自這些檔案。不要在文字中進行計算;如果您需要 CSV 檔案中沒有的數字(例如某個佔比),請使用命令列計算,並引用命令的輸出。

  1. MRR。 最後一個已開帳月份的 mrr;峰值月份及其 status;已開帳與已簽約的拆分。指出數據中的第一個和最後一個月份。
  2. 合約期滿流失。 在最後一個合約起始月份之後的月份,營收只會流失,因為數據中沒有續約。將這些月份標記為無續約合約的合約期滿流失,絕不要標記為流失。
  3. 同群分析。 統計至少有兩個月已開帳營收的同群組。簡報上的熱力圖至少需要兩個這樣的同群組;否則跳過並說明原因。
  4. NRR。 首先檢查輸入。對於輸入 (a) 或單一客戶的匯出,請忽略 nrr.csv、cohorts.csv 和異動欄位:答案為「無法計算」。否則,如果 nrr.csv 有數據行,請引用它們;如果是合約登記簿,請加上「僅統計登記簿中記錄的續約」。如果它只有標題列,答案為 「12 個月 NRR 無法計算」:沒有任何客戶的營收月份距離其起始月份有十二個月。永遠不要估算它,也不要從更短的時間窗口填入。用一句話說明原因(例如「登記簿中的每份合約都開始於 2026 年,因此沒有任何一份已營運十二個月並完成續約」)。
  5. 被排除的合約。 被排除的合約數量、其總價值以及排除它們的規則。

第 4 步 – metrics-slide.png

需要 matplotlib 和 numpy(python3 -c "import matplotlib, numpy")。如果缺少,請先詢問再安裝任何套件;最乾淨的方法是使用一次性虛擬環境。圖表範本基於 revenue-chart(深色主題、標籤碰撞檢查)。

一張 16:9 的簡報,佈局如下:

 ┌─────────────────────────────────────────────────────────────┐
 │ <公司名稱> – 營收指標                       截至 <ISO 日期>       │
 ├──────────────────────────────┬──────────────────────────────┤
 │ MRR 線圖:實線 = 已開帳,    │ 同群熱力圖(僅已開帳月份     │
 │ 虛線 + 陰影區 = 已簽約 │ 的月份 0 百分比)– 或         │
 │                              │ 若無熱力圖則顯示 NRR 面板    │
 ├──────────────────────────────┴──────────────────────────────┤
 │ NRR:<數值>  或

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相關技能