← Back to Skills Marketplace
hohobohan

Expense Tracker

by Hobohan · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
28
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install hobohan-expense-tracker
Description
Log daily expenses via check-in prompts; dedup, categorize, sync to local ledger and Google Sheets.
README (SKILL.md)

Expense Tracker

Track daily spending via Telegram check-ins. Three prompts per day; cron-driven. All data flows to local .md ledger + Google Sheet.

Ledger format

Each file at ledger/YYYY-MM-DD.md:

# Ledger — 2026-06-03

- Food & Drinks $1.80 | Coffee
- AI $11.53 | Netlify

Format: - Category $Amount | Notes

Categories

Allowed: Food & Drinks | Groceries | Transportation | Household/Utilities | Pet | Shopping | Entertainment | Other | AI

  • Bakery bread → Food & Drinks (NOT Groceries)
  • Groceries = supermarket bulk/household runs
  • Unsure → ask Hobo or default to Other with note

Check-in schedule

Time Prompt
10am Morning spend (coffee, breakfast, transport)
1:30pm Afternoon spend (lunch, transport)
10pm End-of-day recap

Each check-in runs as an isolated cron agentTurn with model: deepseek/deepseek-v4-flash and timeoutSeconds: 300.

Transport check-in (9am, previous day)

Separate cron asks: "Any transport yesterday?" Pinned to deepseek/deepseek-v4-flash.

Dedup rules

Before writing to today's ledger file:

  1. Read today's ledger file first.
  2. Time qualifiers (morning/afternoon/evening coffee): always ADD new entry, never replace.
  3. Same category + amount: assume repeat purchase → ADD new entry.
  4. Only REPLACE if Hobo explicitly says "change X to Y".
  5. When in doubt → ask Hobo to confirm.

Expense sync

Daily at 9:30am via scripts/sync-ledger-to-sheet.py:

  • Reads all ledger/*.md files
  • Parses entries per format above
  • Generates dedup key: (normalized_date|normalized_amount|notes) where normalize_amount() strips trailing zeros
  • Compares against existing sheet rows → appends only new ones
  • Uses Google Sheets API with service account at /home/hobopi/.openclaw/secrets/google-service-account.json
  • Sheet ID: 1Ikbydh-Xzc6F3pk1Q5lbCTbdEERSb4Hq8obzbABVZbU, tab: Sheet1

Historical backfill

To backfill missing days (e.g., April 18-26 reconstructed from sheet data):

  1. Query sheet for all rows with dates not in ledger
  2. Parse each row as Date, Category, Amount, Notes
  3. Create ledger/YYYY-MM-DD.md with entries in correct format
  4. Verify count matches between ledger and sheet

Scripts

  • scripts/sync-ledger-to-sheet.py — main sync engine
  • scripts/gen-expense-data.py — dumps all entries to JSON for dashboard

Cron notes

  • All expense crons MUST pin model to deepseek/deepseek-v4-flash (time-sensitive)
  • Timeout: 300s minimum (600s for 10pm check-in)
  • Use absolute paths only in payload messages — no cd && python3 chains
Usage Guidance
Install only if you intend your expense ledger, including notes, to be stored locally and synced to the referenced Google Sheet. Before use, confirm the sheet ID and service-account credential belong to you, limit the credential permissions, and remove or disable the sync instructions if you want local-only tracking.
Capability Assessment
Purpose & Capability
Tracking expenses, categorizing entries, deduplicating them, and syncing to a ledger and spreadsheet all match the stated purpose.
Instruction Scope
The instructions require syncing all ledger entries, including free-form notes, to a specific Google Sheet ID rather than a user-configured destination or an explicit local-only mode.
Install Mechanism
The artifact contains only Markdown skill instructions and a changelog; no executable script files, dependencies, or install hooks are present.
Credentials
The allowed tools include cron, file read/write/edit, and exec, which are plausible for scheduled expense logging, but broad for a skill that handles sensitive personal financial notes and references an external API sync.
Persistence & Privilege
The skill intentionally persists daily expense data to local ledger files and instructs scheduled sync to Google Sheets using a service account at an absolute secrets path.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install hobohan-expense-tracker
  3. After installation, invoke the skill by name or use /hobohan-expense-tracker
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release. Check-in prompts, category rules, dedup logic, ledger format, Google Sheet sync.
Metadata
Slug hobohan-expense-tracker
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Expense Tracker?

Log daily expenses via check-in prompts; dedup, categorize, sync to local ledger and Google Sheets. It is an AI Agent Skill for Claude Code / OpenClaw, with 28 downloads so far.

How do I install Expense Tracker?

Run "/install hobohan-expense-tracker" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Expense Tracker free?

Yes, Expense Tracker is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Expense Tracker support?

Expense Tracker is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Expense Tracker?

It is built and maintained by Hobohan (@hohobohan); the current version is v1.0.0.

💬 Comments