Firefly III CLI
Firefly III Befehlszeile basierend auf CLI-Anything Spezifikation. Wandelt MCP-Modus in zustandslosen CLI-Modus um, um Node-Ressourcenprobleme zu vermeiden.
Installation
pip install cli-anything-firefly-iii
Voraussetzungen
- Python 3.10+
- Laufende Firefly III Instanz
- Persönlicher Zugriffstoken (PAT)
Konfiguration
Umgebungsvariablen (empfohlen)
export FIREFLY_III_BASE_URL="https://firefly.yourdomain.com"
export FIREFLY_III_PAT="your-personal-access-token"
Befehlszeilenargumente
cli-anything-firefly-iii --base-url https://firefly.yourdomain.com --pat your-token
Befehlsgruppen
| Befehlsgruppe | Beschreibung | Entsprechende API |
|---|---|---|
accounts | Kontenverwaltung (CRUD) | /api/v1/accounts |
transactions | Transaktionsverwaltung (CRUD) | /api/v1/transactions |
budgets | Budgetverwaltung (CRUD + Limits) | /api/v1/budgets |
categories | Kategorieverwaltung (CRUD) | /api/v1/categories |
tags | Tag-Verwaltung (CRUD) | /api/v1/tags |
bills | Rechnungsverwaltung (CRUD) | /api/v1/bills |
piggy-banks | Sparschweinverwaltung (CRUD + Ereignisse) | /api/v1/piggy-banks |
autocomplete | Autovervollständigung für verschiedene Entitäten | /api/v1/autocomplete/* |
currencies | Währungsverwaltung (CRUD) | /api/v1/currencies |
recurrences | Wiederkehrende Transaktionsverwaltung (CRUD) | /api/v1/recurrences |
rules | Regelverwaltung (CRUD + Test/Ausführung) | /api/v1/rules |
rule-groups | Regelgruppenverwaltung (CRUD + Ausführung) | /api/v1/rule-groups |
summary | Finanzzusammenfassungen | /api/v1/summary/* |
webhooks | Webhook-Verwaltung (CRUD + Auslösen) | /api/v1/webhooks |
insights | Einblicke und Berichte | /api/v1/insight/* |
search | Suche | /api/v1/search/* |
export | Datenexport | /api/v1/data/export/* |
info | Systeminformationen | /api/v1/about |
Verwendungsbeispiele
Kontenverwaltung
# Alle Konten auflisten
cli-anything-firefly-iii --json accounts list
# Anlagekonten auflisten
cli-anything-firefly-iii --json accounts list --type asset
# Kontodetails abrufen
cli-anything-firefly-iii --json accounts get --id 123
# Konto erstellen
cli-anything-firefly-iii --json accounts create --name "Cash" --type asset --currency-code USD
# Konto aktualisieren
cli-anything-firefly-iii --json accounts update --id 123 --name "New Name"
# Konto löschen
cli-anything-firefly-iii accounts delete --id 123
Transaktionsverwaltung
# Transaktionen auflisten
cli-anything-firefly-iii --json transactions list --limit 10
# Transaktionen mit Datumsbereich auflisten
cli-anything-firefly-iii --json transactions list --start 2024-01-01 --end 2024-01-31
# Transaktion erstellen
cli-anything-firefly-iii --json transactions create \
--description "Grocery" \
--amount 50.00 \
--source-account 1 \
--category "Food"
# Transaktion aktualisieren
cli-anything-firefly-iii --json transactions update --id 456 --description "Updated"
# Transaktion löschen
cli-anything-firefly-iii transactions delete --id 456
Budgetverwaltung
# Budgets auflisten
cli-anything-firefly-iii --json budgets list
# Budgetdetails abrufen
cli-anything-firefly-iii --json budgets get --id 1
# Budget erstellen
cli-anything-firefly-iii --json budgets create --name "Monthly Budget"
# Budget aktualisieren
cli-anything-firefly-iii --json budgets update --id 1 --name "New Budget Name"
# Budget löschen
cli-anything-firefly-iii budgets delete --id 1
# Budgetlimits auflisten
cli-anything-firefly-iii --json budgets limits --budget-id 1
# Budgetlimit erstellen
cli-anything-firefly-iii --json budgets limit-create --budget-id 1 --amount 1000 --start 2024-01-01 --end 2024-01-31
# Budgetlimit aktualisieren
cli-anything-firefly-iii --json budgets limit-update --id 1 --amount 1500
# Budgetlimit löschen
cli-anything-firefly-iii budgets limit-delete --id 1
Kategorieverwaltung
# Kategorien auflisten
cli-anything-firefly-iii --json categories list
# Kategorie abrufen
cli-anything-firefly-iii --json categories get --id 1
# Kategorie erstellen
cli-anything-firefly-iii --json categories create --name "Food"
# Kategorie aktualisieren
cli-anything-firefly-iii --json categories update --id 1 --name "Food & Dining"
# Kategorie löschen
cli-anything-firefly-iii categories delete --id 1
Tag-Verwaltung
# Tags auflisten
cli-anything-firefly-iii --json tags list
# Tag abrufen
cli-anything-firefly-iii --json tags get --id "uuid-here"
# Tag erstellen
cli-anything-firefly-iii --json tags create --tag "important"
# Tag aktualisieren
cli-anything-firefly-iii --json tags update --id "uuid-here" --tag "important-updated"
# Tag löschen
cli-anything-firefly-iii tags delete --id "uuid-here"
Rechnungsverwaltung
# Rechnungen auflisten
cli-anything-firefly-iii --json bills list
# Rechnung abrufen
cli-anything-firefly-iii --json bills get --id 1
# Rechnung erstellen
cli-anything-firefly-iii --json bills create \
--name "Netflix" \
--amount-min 15.99 \
--amount-max 15.99 \
--frequency monthly
# Rechnung aktualisieren
cli-anything-firefly-iii --json bills update --id 1 --amount-min 19.99
# Rechnung löschen
cli-anything-firefly-iii bills delete --id 1
Sparschweinverwaltung
# Sparschweine auflisten
cli-anything-firefly-iii --json piggy-banks list
# Sparschwein abrufen
cli-anything-firefly-iii --json piggy-banks get --id 1
# Sparschwein erstellen
cli-anything-firefly-iii --json piggy-banks create \
--name "Vacation Fund" \
--account-id 1 \
--target-amount 5000
# Sparschwein aktualisieren
cli-anything-firefly-iii --json piggy-banks update --id 1 --name "New Name"
# Sparschwein löschen
cli-anything-firefly-iii piggy-banks delete --id 1
# Sparschwein-Ereignisse auflisten
cli-anything-firefly-iii --json piggy-banks events --id 1
# Geld zum Sparschwein hinzufügen
cli-anything-firefly-iii --json piggy-banks add-money --id 1 --amount 100
Autovervollständigung
# Autovervollständigung für Konten
cli-anything-firefly-iii --json autocomplete accounts --query "bank"
# Autovervollständigung für Kategorien
cli-anything-firefly-iii --json autocomplete categories --query "food"
# Autovervollständigung für Tags
cli-anything-firefly-iii --json autocomplete tags --query "important"
# Autovervollständigung für Transaktionen
cli-anything-firefly-iii --json autocomplete transactions --query "grocery"
# Autovervollständigung für Budgets
cli-anything-firefly-iii --json autocomplete budgets --query "monthly"
# Autovervollständigung für Rechnungen
cli-anything-firefly-iii --json autocomplete bills --query "netflix"
# Autovervollständigung für Sparschweine
cli-anything-firefly-iii --json autocomplete piggy-banks --query "vacation"
# Autovervollständigung für Währungen
cli-anything-firefly-iii --json autocomplete currencies --query "dollar"
# Autovervollständigung für Regeln
cli-anything-firefly-iii --json autocomplete rules --query "auto"
# Autovervollständigung für Regelgruppen
cli-anything-firefly-iii --json autocomplete rule-groups --query "finances"
# Autovervollständigung für wiederkehrende Transaktionen
cli-anything-firefly-iii --json autocomplete recurring --query "rent"
# Autovervollständigung für Objektgruppen
cli-anything-firefly-iii --json autocomplete object-groups --query "group"
# Autovervollständigung für Transaktionstypen
cli-anything-firefly-iii --json autocomplete transaction-types --query "with"
Währungsverwaltung
# Währungen auflisten
cli-anything-firefly-iii --json currencies list
# Währung abrufen
cli-anything-firefly-iii --json currencies get --id 1
# Währung erstellen
cli-anything-firefly-iii --json currencies create \
--code "CNY" \
--name "Chinese Yuan" \
--symbol "¥"
# Währung aktualisieren
cli-anything-firefly-iii --json currencies update --id 1 --symbol "元"
# Währung löschen
cli-anything-firefly-iii currencies delete --id 1
# Wechselkurse abrufen
cli-anything-firefly-iii --json currencies exchange-rates --from USD --to EUR
Verwaltung wiederkehrender Transaktionen
# Wiederkehrende Transaktionen auflisten
cli-anything-firefly-iii --json recurrences list
# Wiederkehrende Transaktion abrufen
cli-anything-firefly-iii --json recurrences get --id 1
# Wiederkehrende Transaktion erstellen
cli-anything-firefly-iii --json recurrences create \
--title "Rent Payment" \
--type withdrawal \
--amount 1500 \
--source-account 1 \
--destination-account 2 \
--frequency monthly
# Wiederkehrende Transaktion aktualisieren
cli-anything-firefly-iii --json recurrences update --id 1 --amount 1600
# Wiederkehrende Transaktion löschen
cli-anything-firefly-iii recurrences delete --id 1
Regelverwaltung
# Regeln auflisten
cli-anything-firefly-iii --json rules list
# Regel abrufen
cli-anything-firefly-iii --json rules get --id 1
# Regel erstellen
cli-anything-firefly-iii --json rules create \
--title "Auto-tag groceries" \
--trigger "description_contains" \
--value "grocery" \
--action set_category \
--action-value "Food"
# Regel aktualisieren
cli-anything-firefly-iii --json rules update --id 1 --title "New Title"
# Regel löschen
cli-anything-firefly-iii rules delete --id 1
# Regel testen
cli-anything-firefly-iii --json rules test --id 1
# Regel ausführen
cli-anything-firefly-iii --json rules execute --id 1
Regelgruppenverwaltung
# Regelgruppen auflisten
cli-anything-firefly-iii --json rule-groups list
# Regelgruppe abrufen
cli-anything-firefly-iii --json rule-groups get --id 1
# Regelgruppe erstellen
cli-anything-firefly-iii --json rule-groups create --title "Finance Rules"
# Regelgruppe aktualisieren
cli-anything-firefly-iii --json rule-groups update --id 1 --title "New Title"
# Regelgruppe löschen
cli-anything-firefly-iii rule-groups delete --id 1
# Regelgruppe ausführen
cli-anything-firefly-iii --json rule-groups execute --id 1
Zusammenfassungsberichte
# Standard-Zusammenfassung
cli-anything-firefly-iii --json summary default-set --start 2024-01-01 --end 2024-01-31
# Kontozusammenfassung
cli-anything-firefly-iii --json summary account-summary --start 2024-01-01 --end 2024-01-31
# Verfügbare Budgetzusammenfassung
cli-anything-firefly-iii --json summary available-budget --start 2024-01-01 --end 2024-01-31
# Rechnungszusammenfassung
cli-anything-firefly-iii --json summary bill-summary --start 2024-01-01 --end 2024-01-31
# Budgetzusammenfassung
cli-anything-firefly-iii --json summary budget-summary --start 2024-01-01 --end 2024-01-31
# Kategoriezusammenfassung
cli-anything-firefly-iii --json summary category-summary --start 2024-01-01 --end 2024-01-31
# Tag-Zusammenfassung
cli-anything-firefly-iii --json summary tag-summary --start 2024-01-01 --end 2024-01-31
# Transferzusammenfassung
cli-anything-firefly-iii --json summary transfer-summary --start 2024-01-01 --end 2024-01-31
Webhook-Verwaltung
# Webhooks auflisten
cli-anything-firefly-iii --json webhooks list
# Webhook abrufen
cli-anything-firefly-iii --json webhooks get --id 1
# Webhook erstellen
cli-anything-firefly-iii --json webhooks create \
--title "My Webhook" \
--trigger create \
--url "https://example.com/webhook" \
--secret "my-secret"
# Webhook aktualisieren
cli-anything-firefly-iii --json webhooks update --id 1 --title "New Title"
# Webhook löschen
cli-anything-firefly-iii webhooks delete --id 1
# Webhook manuell auslösen
cli-anything-firefly-iii --json webhooks trigger --id 1
Einblicke und Berichte
# Ausgabenbericht (nach Kategorie)
cli-anything-firefly-iii --json insights expense \
--start 2024-01-01 \
--end 2024-01-31 \
--group-by category
# Einkommensbericht
cli-anything-firefly-iii --json insights income \
--start 2024-01-01 \
--end 2024-01-31
# Transfereinblicke
cli-anything-firefly-iii --json insights transfer \
--start 2024-01-01 \
--end 2024-01-31
# Kontoübersicht
cli-anything-firefly-iii --json insights overview \
--start 2024-01-01 \
--end 2024-01-31
Suche
# Transaktionen durchsuchen
cli-anything-firefly-iii --json search transactions --query "grocery"
Datenexport
# Transaktionen exportieren
cli-anything-firefly-iii --json export transactions \
--start 2024-01-01 \
--end 2024-01-31
# Konten exportieren
cli-anything-firefly-iii --json export accounts
# Budgets exportieren
cli-anything-firefly-iii --json export budgets
# Kategorien exportieren
cli-anything-firefly-iii --json export categories
Systeminformationen
# Systeminformationen
cli-anything-firefly-iii --json info about
# Verbindungsstatus
cli-anything-firefly-iii info status
Voreinstellungen (Presets)
Verwenden Sie den Parameter --preset, um verfügbare Befehle zu filtern:
# Standard-Preset
cli-anything-firefly-iii --preset default accounts list
# Vollständiges Preset
cli-anything-firefly-iii --preset full accounts list
# Budget-Preset
cli-anything-firefly-iii --preset budget budgets list
# Berichts-Preset
cli-anything-firefly-iii --preset reporting insights expense --start 2024-01-01 --end 2024-01-31
Verfügbare Presets:
default: Kernfunktionen (Konten, Transaktionen, Kategorien, Tags, Rechnungen, Suche)full: Alle Funktionenbasic: Basisfunktionen (Konten, Transaktionen, Kategorien, Tags, Suche)budget: Budgetbezogen (Konten, Budgets, Transaktionen, Zusammenfassung, Einblicke)reporting: Berichtsbezogen (Konten, Transaktionen, Kategorien, Einblicke, Zusammenfassung, Suche)admin: Admin-Funktionen (Über, Konfiguration, Währungen, Benutzer, Einstellungen)automation: Automatisierung (Regeln, Wiederkehrende, Webhooks, Transaktionen)
Agentenrichtlinien
Grundlegende Verwendung
- Verwenden Sie
--jsonfür strukturierte Ausgabe: Alle Befehle unterstützen das--json-Flag und geben JSON-formatierte Daten zurück - Rufen Sie zuerst
info statusauf, um die Verbindung zu prüfen: Bestätigen Sie, dass die Firefly III-Verbindung normal ist, bevor Sie Operationen ausführen - Verwenden Sie Presets, um die Befehlsanzahl zu reduzieren: Filtern Sie unnötige Befehle über
--preset
Häufige Arbeitsabläufe
Kontostände anzeigen
# 1. Verbindung prüfen
cli-anything-firefly-iii info status
# 2. Anlagekonten auflisten
cli-anything-firefly-iii --json accounts list --type asset
# 3. Kontodetails anzeigen (Saldo abrufen)
cli-anything-firefly-iii --json accounts get --id <account_id>
Ausgabe erfassen
# 1. Ausgabenkonten finden
cli-anything-firefly-iii --json accounts list --type expense
# 2. Transaktion erstellen
cli-anything-firefly-iii --json transactions create \
--description "Supermarkt" \
--amount 75.50 \
--source-account <Expense-Konto-ID> \
--destination-account 1 \
--category "Lebensmittel"
Budgetlimit verwalten
# 1. Budgets auflisten
cli-anything-firefly-iii --json budgets list
# 2. Budgetdetails anzeigen
cli-anything-firefly-iii --json budgets get --id <budget_id>
# 3. Budgetlimit für diesen Monat erstellen
cli-anything-firefly-iii --json budgets limit-create \
--budget-id <budget_id> \
--amount 500 \
--start 2024-01-01 \
--end 2024-01-31
Regel für wiederkehrende Ausgaben erstellen
# 1. Regel erstellen
cli-anything-firefly-iii --json rules create \
--title "Täglichen Kaffee automatisch kennzeichnen" \
--trigger "description_contains" \
--value "Coffee" \
--action set_category \
--action-value "Getränke"
# 2. Regel testen
cli-anything-firefly-iii --json rules test --id <rule_id>
# 3. Regel auf vorhandene Transaktionen anwenden
cli-anything-firefly-iii --json rules execute --id <rule_id>
Bericht erstellen
# 1. Standard-Zusammenfassung anzeigen
cli-anything-firefly-iii --json summary default-set --start 2024-01-01 --end 2024-01-31
# 2. Detaillierte Ausgabenaufschlüsselung nach Kategorie
cli-anything-firefly-iii --json insights expense \
--start 2024-01-01 \
--end 2024-01-31 \
--group-by category