技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
billclaw【数据与研究】This skill should be used when managing financial data, syncing bank transactions via Plaid/GoCardless, fetching bills from Gmail, or exporting to Beancount/Ledger formats. Provides local-first data sovereignty for OpenClaw users.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Complete financial data management skill for OpenClaw with local-first architecture. Sync bank transactions, fetch bills from email, and export to accounting formats.
Use this skill when:
@fire-zu/billclaw-core, @fire-zu/billclaw-cli, @fire-zu/billclaw-openclaw# Core package (framework-agnostic)
npm install @fire-zu/billclaw-core
# CLI application
npm install @fire-zu/billclaw-cli
# OpenClaw plugin
npm install @fire-zu/billclaw-openclaw
pnpm add @fire-zu/billclaw-core
pnpm add @fire-zu/billclaw-cli
pnpm add @fire-zu/billclaw-openclaw
billclaw setup
Interactive wizard for:
# Sync all accounts
billclaw sync
# Sync specific account
billclaw sync --account <account-id>
# Sync with date range
billclaw sync --from 2024-01-01 --to 2024-12-31
# View account status
billclaw status
# List all accounts
billclaw config accounts
# View storage statistics
billclaw status --storage
# Export to Beancount
billclaw export --format beancount --output transactions.beancount
# Export to Ledger
billclaw export --format ledger --output transactions.ledger
# Export with date filter
billclaw export --from 2024-01-01 --format beancount
When installed in OpenClaw, this skill provides:
plaid_sync - Sync bank transactions from Plaidgmail_fetch - Fetch bills from Gmailbill_parse - Parse bill documentsconversational_sync - Natural language sync interfaceconversational_status - Check sync statusconversational_help - Get help with commands/billclaw-setup - Configure accounts/billclaw-sync - Sync transactions/billclaw-status - View status/billclaw-config - Manage configuration| Source | Description | Regions |
|---|---|---|
| Plaid | Bank transaction sync | US, Canada |
| GoCardless | European bank integration | Europe |
| Gmail | Bill fetching via email | Global |
~/.billclaw/ (configurable)Configuration is stored in ~/.billclaw/config.yaml:
accounts:
- id: plaid-checking
type: plaid
name: "My Checking Account"
enabled: true
syncFrequency: daily
- id: gmail-bills
type: gmail
name: "Bill Email Fetcher"
enabled: true
syncFrequency: daily
storage:
path: "~/.billclaw"
format: json
sync:
defaultFrequency: daily
retryOnFailure: true
maxRetries: 3
The core package is framework-agnostic and uses runtime abstractions:
This allows BillClaw to work across different environments (CLI, OpenClaw plugin, future platforms).
BillClaw emits events for important operations:
transaction.added - New transactions addedtransaction.updated - Existing transactions updatedsync.started - Sync operation startedsync.completed - Sync operation completedsync.failed - Sync operation failedaccount.connected - Account successfully connectedaccount.disconnected - Account disconnectedaccount.error - Account error occurredRun validation before publishing:
./skills/billclaw/scripts/validate-skill.sh skills/billclaw
This checks:
Solution: Ensure Plaid credentials are configured:
billclaw config plaid --client-id <id> --secret <secret>
Solution: Check Gmail filters and sender whitelist:
billclaw config gmail --filters "from:billing@service.com"
Solution: Verify account mappings:
billclaw export --format beancount --show-mappings
Contributions are welcome! Please see CONTRIBUTING.md in the repository.
MIT License - See LICENSE file for details.
Initial release: