invoicebeaglelisted
Install: claude install-skill rf-leon/invoicebeagle
# InvoiceBeagle
Fetch invoices from a billing portal, capture PDF bytes inside Chrome, and dispatch them to the configured destination. Reuse existing browser logins instead of asking for credentials.
## Prerequisites
1. **A controllable signed-in Chrome is available.** Read [browser-runtimes.md](references/browser-runtimes.md), select the current harness, and follow its browser-control skill.
2. **Use the right Chrome profile.** If multiple profiles or connected browsers are available, use the provider file's session note or ask the user before continuing.
3. **A user config exists.** Resolve it in this order: `INVOICEBEAGLE_CONFIG`, `~/.config/invoicebeagle/config.md`, then `config.md` beside this skill for backward compatibility. See [first-run setup](#first-run-setup).
The OS download manager is a **fallback only** — the main path is in-browser fetch via [interceptor.js](references/interceptor.js). Chrome's "Ask where to save each file" setting only matters if the in-browser path fails.
## Argument Parsing
`$invoicebeagle [target...] [--month YYYY-MM] [--since YYYY-MM] [--destination paperless|local] [--dry-run]` in Codex, or `/invoicebeagle ...` in Claude Code.
Determine mode from target:
- **Named provider** (`hetzner`) — resolve `hetzner.md` from the user provider directory first, then bundled `providers/` → follow its steps.
- **Multiple providers** (`hetzner vodafone`) — process each sequentially.
- **All** (`--all`) — merge user and bundled provider files by