Rentenversicherer/README.md
Kenearos 3c669fb003 feat: AcroForm-Fill via Claude CLI, Multi-Source, Kanagawa, Docker-Deploy
Komplettes Rework der AI-Studio-Vorlage zu einem produktiven Werkzeug fuer
deutsche AcroForm-Formulare (Reha-Antraege, Arzt-Befundberichte):

- Backend: Express spawnt headless Claude CLI ('claude -p --output-format json'
  via stdin-Pipe). Prompt enthaelt die Feldnamen als Ziel-Schema plus die
  Arbeitsregeln (Stichwortstil, feste Zeichen-Kaestchen ohne Leerzeichen,
  Vordrucke respektieren, keine geratenen Werte, nur medizinisch).
- PDF-Handling: pdfjs-dist statt pdf-lib — pdf-lib scheitert an verschluesselten
  Object-Streams in DRV-Formularen. annotationStorage + saveDocument, kein
  Flatten. Worker-Patch zur Laufzeit forciert Auto-Size und schwarze Schrift.
- Multi-Source-Upload: beliebig viele PDFs/Bilder + optional Freitext.
- Design: Kanagawa Design System (Preset aus ../kanagawa-design-system),
  Tailwind lokal gebaut statt CDN, Dark/Light-Toggle, Progress-Indicator.
- Deployment: Multi-Stage-Dockerfile, docker-compose in matrix_default-Netz,
  Claude-Credentials vom Host per Volume. PLAN.md + AGENTS.md (Alex-Schema).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 22:48:32 +02:00

58 lines
2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Rentenversicherer
Halbautomatisches Ausfüllen von deutschen AcroForm-PDFs (Reha-Anträge,
ärztliche Befundberichte, etc.) mit der Claude Code CLI als Subprozess.
- Original-PDF bleibt strukturell unverändert — Felder sind nach dem
Ausfüllen im PDF-Reader weiter editierbar (kein Flatten).
- Claude zieht die Werte aus beliebig vielen Quelldateien (PDF/Bild) und
optionalem freiem Text.
- Browser-UI im Kanagawa-Design-Schema, Review-Panel mit Live-Preview.
## Voraussetzungen
- Node.js 20+
- Claude Code CLI im `PATH`, gültiges Claude-Login
- Windows: Git Bash (`CLAUDE_CODE_GIT_BASH_PATH` wird auf dem
Scoop-Standard-Pfad gesetzt — falls du Git anders installiert hast,
in der Shell vorher setzen oder `server/claudeRunner.ts:GIT_BASH_FALLBACK`
anpassen)
## Start
```bash
npm install
npm run dev
```
- Browser-UI: <http://localhost:5173>
- Backend-Health: <http://127.0.0.1:3001/api/health>
## Workflow
1. **Ziel-Formular** (PDF mit AcroForm-Feldern) in die linke Spalte ziehen.
Die App zeigt an, wie viele Felder erkannt wurden.
2. **Quelldokumente** rechts hochladen — beliebig viele PDFs/Bilder, plus
optional ein Freitext-Feld.
3. **„Analysieren & Ausfüllen"** — kann 30120 Sekunden dauern, je nach
Umfang. Claude-CLI läuft headless im Backend.
4. **Review-Panel** — Werte prüfen, bei Bedarf korrigieren, mit Haken
bestätigen.
5. **„PDF runterladen"** — das Original-PDF mit gesetzten Feldern.
Im Acrobat/Reader können die Felder weiter bearbeitet werden.
## Arbeitsregeln für die Verarbeitung
Im Prompt an Claude fest eingebaut (siehe `server/claudeRunner.ts`):
- Stichwortstil, kein Gutachten
- Feste Zeichen-Kästchen (VSNR, IBAN, BIC, IK) ohne Leerzeichen
- Vordrucke respektieren (kein doppeltes "DE", kein "€")
- Nur medizinisch; Sozialbereich bleibt leer
- Keine geratenen Werte — bei Unsicherheit leer + WARNING
- PDF nie flatten
## Dokumentation
- [`PLAN.md`](./PLAN.md) — Zweck, Scope, Architektur
- [`AGENTS.md`](./AGENTS.md) — Commands, Code-Style, Architektur-Regeln