safaiyeh

Finance Skill

專業領域v0.1.2
作者:safaiyeh更新於 2026-05-11共 3 個版本 · 最新版本釋出於 2026-02-11finance-skill@clawhub_safaiyeh/finance-skill
金融分析#Personal

據 AlphaMoat 統計,截至 2026-09,Finance Skill 累計下載 3,882 次、獲 2 個星標,在全部 5,078 個 AI 技能中排名第 2,677 位,在「專業領域」分類(465 個)中排名第 219 位。

累計安裝
213
累計下載
3882
星標
2
全站排名
#2,677
全站前 53% · 「專業領域」前 48%
平台累計安裝累計下載星標評論
ClawHub ↗11234861-
SkillHub ↗21338822—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

管理個人財務記錄,將帳單轉為交易資料並支援支出查詢。銀行對帳單和解析出的交易屬於敏感財務資料;核對本機輸出權限,並在使用前檢查解析結果。

資料釋出於 2026-10-27

可以用來做什麼

  • 整理相關資訊或執行對應操作

什麼時候用

  • 使用者需要相關工作流時

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

請使用Finance Skill幫助處理這個任務

月度資料趨勢

累計下載3882
2163308640092026-03 · 累計下載 22902026-05 · 累計下載 28012026-06 · 累計下載 29552026-07 · 累計下載 32612026-08 · 累計下載 34192026-09 · 累計下載 388226-0326-09
星標2
1222026-03 · 星標 12026-05 · 星標 22026-06 · 星標 12026-07 · 星標 22026-08 · 星標 22026-09 · 星標 226-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-093882—2
2026-083419+4.8%2
2026-073261+10.4%2
2026-062955+5.5%1
2026-052801—2
2026-032290—1

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

3.3 KB · ClawHub v0.1.2
# Finance Skill

Personal finance memory layer. Parse statements, store transactions, query spending.

## Data Location
- Transactions: `~/.openclaw/workspace/finance/transactions.json`
- Raw statements: `~/.openclaw/workspace/finance/statements/`

*Storage convention: OpenClaw workspace (`~/.openclaw/workspace/`) is the standard location for persistent user data. This matches where session-memory and other hooks store agent data. Credentials/config would go in `~/.config/finance/` if needed.*
展開全部(共 108 行)
## Tools

### 1. Parse Statement
When user shares a statement (image or PDF):

**⚠️ IMPORTANT: Telegram/channel previews truncate PDFs!**
Always extract with pypdf first to get ALL pages:

```bash
python3 -c "
import pypdf
reader = pypdf.PdfReader('/path/to/statement.pdf')
for i, page in enumerate(reader.pages):
    print(f'=== PAGE {i+1} ===')
    print(page.extract_text())
"
```

Then parse the full text output:
1. Extract transactions from ALL pages
2. Return JSON array: `[{date, merchant, amount, category}, ...]`
3. Run `scripts/add-transactions.sh` to append to store
4. **Verify total matches statement** (sum of expenses should equal "Total purchases")

**Extraction format:**
```
Each transaction: {"date": "YYYY-MM-DD", "merchant": "name", "amount": -XX.XX, "category": "food|transport|shopping|bills|entertainment|health|travel|other"}
Negative = expense, positive = income/refund.
```

**Categories:**
- food: restaurants, groceries, coffee, fast food
- transport: Waymo, Uber, gas, public transit
- shopping: retail, online purchases
- bills: utilities, subscriptions
- entertainment: movies, concerts, theme parks
- health: pharmacy, doctors
- travel: hotels, flights

### 2. Query Transactions
User asks about spending → read transactions.json → filter/aggregate → answer

**Example queries:**
- "How much did I spend last month?" → sum all negative amounts in date range
- "What did I spend on food?" → filter by category
- "Show my biggest expenses" → sort by amount

### 3. Add Manual Transaction
User says "I spent $X at Y" → append to transactions.json

## File Format

```json
{
  "transactions": [
    {
      "id": "uuid",
      "date": "2026-02-01",
      "merchant": "Whole Foods",
      "amount": -87.32,
      "category": "food",
      "source": "statement-2026-01.pdf",
      "added": "2026-02-09T19:48:00Z"
    }
  ],
  "accounts": [
    {
      "id": "uuid",
      "name": "Coinbase Card",
      "type": "credit",
      "lastUpdated": "2026-02-09T19:48:00Z"
    }
  ]
}
```

## Usage Flow

1. User: *shares statement image*
2. Agent: extracts transactions via vision, confirms count
3. Agent: runs add script to store
4. User: "how much did I spend on food?"
5. Agent: reads store, filters, answers

## Dependencies
- `jq` — for JSON transaction storage and querying (`apt install jq` / `brew install jq`)
- `pypdf` — for full PDF text extraction (`pip3 install pypdf`)

## Lessons Learned
- **Telegram truncates PDF previews** — always use pypdf to get all pages
- **Verify totals** — sum extracted expenses and compare to statement total before importing
- **Coinbase Card** — no Plaid support, statement upload only

## Future: Plaid Integration
- Add `finance_connect` tool for Plaid OAuth flow
- Auto-sync transactions from connected banks
- Same query interface, different data source

「專業領域」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。