Files
fb/.claude/skills/auszug-import/SKILL.md
2026-07-19 15:06:27 +02:00

75 lines
2.7 KiB
Markdown

---
name: auszug-import
description: Workflow zur Betreuung von Kontoauszugs-Importen (Inbox scannen, Entwürfe prüfen, Vorschau zusammenfassen, bestätigen) sowie zum Beheben von Parser-Fehlern im Tool-Repo ~/bin/finance. Use when neue PDF-Kontoauszüge importiert werden sollen, ein Import in der Vorschau (draft) auf Bestätigung wartet, oder ein Import mit Fehlerstatus (error) fehlgeschlagen ist und der Parser angepasst werden muss.
---
# Auszug-Import betreuen
## 1. Status prüfen
```bash
KEY=$(grep '^FB_API_KEY=' $HOME/.local/share/finance_pod/.env | cut -d= -f2 | tr -d "'")
curl -s -H "Authorization: Bearer $KEY" http://127.0.0.1:8096/api/imports | jq
```
Falls neue PDFs in der Inbox liegen könnten (`~/.local/share/finance_pod/data/inbox/`),
zuerst neu einscannen:
```bash
curl -s -X POST -H "Authorization: Bearer $KEY" http://127.0.0.1:8096/api/imports/scan-inbox | jq
```
Auf Status `draft` (wartet auf Bestätigung) und `error` (Parser
fehlgeschlagen) filtern.
## 2. Drafts: Vorschau prüfen und bestätigen
```bash
curl -s -H "Authorization: Bearer $KEY" \
http://127.0.0.1:8096/api/imports/<id>/preview | jq
```
Dem Nutzer zusammenfassen: Zeitraum, Anzahl Buchungen, Saldo-Check
(`balance_ok`), Zahl der erkannten Duplikate. Erst nach ausdrücklicher
Bestätigung durch den Nutzer:
```bash
curl -s -X POST -H "Authorization: Bearer $KEY" \
http://127.0.0.1:8096/api/imports/<id>/confirm | jq
```
Nie blind übernehmen — auch bei `balance_ok: true` dem Nutzer die Eckdaten
vorlegen.
## 3. Parser-Fehler beheben
Bei Status `error` (`error_message` beachten) liegt die Original-PDF weiterhin
in der Inbox. Vorgehen im Tool-Repo `/home/wlfb/bin/finance`:
1. PDF-Text ansehen, um Regexe abzugleichen:
```bash
cd /home/wlfb/bin/finance && .venv/bin/python scripts/dump_pdf_text.py \
~/.local/share/finance_pod/data/inbox/<datei>.pdf
```
2. Regex-Konstanten im passenden Parser fixen — je nach Bank
`app/parsers/vr.py`, `app/parsers/hvb.py` oder `app/parsers/dkb.py`
(Bank-Erkennung in `app/parsers/detect.py`, gemeinsames Interface in
`app/parsers/base.py`).
3. Tests laufen lassen:
```bash
cd /home/wlfb/bin/finance && .venv/bin/python -m pytest -q
```
4. Image neu bauen und Pod neu aufsetzen, damit die Parser-Änderung im
laufenden Container wirksam wird:
```bash
cd /home/wlfb/bin && ./create_pod_finance.sh
```
5. Import erneut anstoßen (`scan-inbox` bzw. erneuter Upload) und Vorschau
wie unter Schritt 2 prüfen.
## Grundregeln (siehe auch CLAUDE.md)
- Importe immer über die Vorschau bestätigen lassen, nie blind übernehmen.
- Echte, bereits bestätigte Buchungen nicht anfassen — nur Entwürfe/Importe
in diesem Workflow bearbeiten.