Zum Inhalt springen
IntegrationAgent SkillsClaude Code

E-Rechnung aus dem KI-Agenten: drei Agent Skills für Claude – installierbar auch in Cursor, Codex & Co.

Drei Open-Source-Skills machen Claude zum Rechnungsschreiber und lassen sich auch in Cursor, Codex & Co. installieren: ZUGFeRD und XRechnung erstellen, E-Rechnungen prüfen, das eigene Layout als Vorlage nachbauen. Wie eine Rechnung durchläuft, wie du installierst und wo die Grenzen liegen.

Patrick Jerominek

Patrick Jerominek

Co-founder of xhub.io

24. Oktober 20265 Min Lesezeit
E-Rechnung aus dem KI-Agenten: drei Agent Skills für Claude – installierbar auch in Cursor, Codex & Co.

Viele von uns haben den KI-Agenten ohnehin den ganzen Tag offen: im Terminal, im Editor, im Chat. Die Rechnung am Monatsende schreiben wir trotzdem woanders – in einer Rechnungssoftware, in einer Vorlage oder über ein eigenes Skript gegen eine API.

Seit heute geht das auch im Agenten. Wir haben drei Agent Skills veröffentlicht, die über invoice-api.xhub E-Rechnungen erzeugen und prüfen. Sie sind Open Source (MIT), liegen auf GitHub und sind mit einem Befehl installiert:

bash
1npx skills add xhubio/invoice-api.xhub-skills

Die drei Skills

SkillWas er tut
invoice-createSammelt die Rechnungsdaten aus dem Gespräch, rechnet Positionen, Umsatzsteuer und Summen, erzeugt ZUGFeRD oder XRechnung mit Prüfung und speichert Datei, JSON und Prüfbericht.
invoice-readLiest eine E-Rechnung als PDF oder XML, zieht Nummer, Beteiligte, Positionen und Summen heraus und meldet Validierungsfehler und Warnungen.
invoice-template-from-pdfBaut dein bestehendes Rechnungs-PDF als invoice-api-Vorlage nach und vergleicht das Ergebnis Seite an Seite mit dem Original, bis es passt.

Zum Benutzen brauchst du keinen Befehl: Du schreibst dem Agenten wie einem Kollegen. Ein Satz reicht für den Start, den Rest fragt der Skill nach. Drei typische Einstiege:

  • „Erstelle eine Rechnung an die Beispiel Handel GmbH über 12 Stunden Entwicklung zu 95 € netto, Leistungszeitraum Oktober.“
  • „Ist diese XRechnung gültig? Was steht drin?“
  • „Mach aus unserer aktuellen Rechnung (rechnung.pdf) eine invoice-api-Vorlage.“

Ein Durchlauf von Anfang bis Ende

So sieht eine Rechnung mit invoice-create aus, gekürzt und mit Beispieldaten. Der Agent formuliert je nach Modell anders, die Schritte bleiben dieselben. Deine eigenen Firmendaten liegen hier schon in einer invoice-seller.json, deshalb fragt der Agent nicht nach dem Absender.

Du: Rechnung an die Beispiel Handel GmbH, 12 Stunden Entwicklung à 95 € netto, Leistungszeitraum Oktober.

Agent: Mir fehlen noch drei Angaben: die Anschrift der Beispiel Handel GmbH, die nächste freie Nummer aus deinem Nummernkreis und das Zahlungsziel.

Du: Musterstraße 1, 10115 Berlin. RE-2026-10-001, 14 Tage. Rechnungsdatum 31.10.

Agent: Bevor ich erzeuge, die Zusammenfassung:

  • Käufer: Beispiel Handel GmbH, Musterstraße 1, 10115 Berlin
  • Entwicklung: 12 Std. × 95,00 € = 1.140,00 € netto
  • USt 19 % (Regelsatz): 216,60 € · brutto 1.356,60 €
  • Rechnungsdatum 31.10.2026, Leistungszeitraum 01.10.–31.10.2026, zahlbar in 14 Tagen

Als ZUGFeRD erzeugen?

Du: Ja.

Jetzt ruft der Agent das Skript des Skills auf. Es rechnet die Beträge, lässt die Rechnung erzeugen und prüfen und liest sie zurück. Seine Ausgabe, gekürzt:

json
1{
2 "ok": true,
3 "http": 200,
4 "document": "./invoices/RE-2026-10-001.pdf",
5 "subtotal": 1140.0,
6 "total": 1356.6,
7 "readBack": { "http": 200, "matches": true }
8}

ok: true heißt: erzeugt, gegen Schema und Schematron geprüft und zurückgelesen, Nummer und Summen stimmen. Daraus macht der Agent seinen Bericht:

Agent: Die Rechnung RE-2026-10-001 liegt unter invoices/RE-2026-10-001.pdf, daneben das JSON und der Prüfbericht. Netto 1.140,00 €, brutto 1.356,60 €. Sie hat die Prüfung bestanden, das Zurücklesen ergibt dieselbe Nummer und dieselben Summen. Versendet habe ich nichts.

Hätte die Prüfung einen Fehler gemeldet, stünde hier ok: false mit den Regelcodes. Der Agent erklärt sie dann in Klartext, korrigiert die Daten und erzeugt mit derselben Nummer neu – ausgestellt war die Rechnung ja noch nicht.


Warum der Ablauf so gebaut ist

Bei einer Rechnung zählt jede Zahl. Deshalb ist invoice-create so geschrieben, dass der Agent möglichst wenig selbst entscheidet:

  1. Fehlendes erfragen, nichts erfinden. Der Skill fragt nur nach, was fehlt: Käufer, Positionen, Zahlungsziel, Leistungszeitraum. Die Rechnungsnummer kommt aus deinem eigenen Nummernkreis; kennt der Agent sie nicht, fragt er.
  2. Erst zeigen, dann erzeugen. Vor dem API-Aufruf bekommst du eine kurze Zusammenfassung mit Käufer, Positionen, Netto, Umsatzsteuer, Brutto und Daten. Erzeugt wird erst nach deinem Go – außer du hast vorher gesagt, er soll direkt erzeugen.
  3. Ein Skript rechnet, nicht das Sprachmodell. Positionsbetrag = Menge × Einzelpreis, die Steuer je Satz auf die summierten Nettobeträge, auf Cent gerundet. Das erledigt ein Python-Skript im Skill, nicht das Sprachmodell aus dem Kopf.
  4. Erzeugen, prüfen, zurücklesen. Die API erzeugt ZUGFeRD (PDF mit eingebettetem XML) oder XRechnung und prüft das Ergebnis gegen Schema und Schematron. Danach liest der Skill die Datei zurück und vergleicht Nummer und Summen mit dem, was er geschickt hat.
  5. Berichten, nicht versenden. Am Ende stehen Dateipfad, Summen und Prüfergebnis im Chat, Warnungen inklusive. Verschickt wird nichts, das bleibt dein Schritt.

In welchen Agenten?

Geschrieben sind die Skills für Claude Code und Claude Desktop. Für Claude Code gibt es zusätzlich einen Plugin-Weg:

bash
1/plugin marketplace add xhubio/invoice-api.xhub-skills
2/plugin install invoice-api@xhubio

Die skills-CLI installiert dieselben Skills auch in andere Agenten. Mit -a wählst du den Agenten, zum Beispiel -a cursor oder -a codex. Am 24.10.2026 haben wir die Installation in einem leeren Projekt für Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot, Windsurf, Cline, Roo Code, OpenCode, Goose, Zed, Junie, Amp und Kiro geprüft.

Ehrlich dazu: Geprüft haben wir dort die Installation, nicht die Ausführung. Voraussetzung ist überall ein Agent, der Python-Skripte ausführen darf. Wenn du die Skills in einem dieser Agenten benutzt, freuen wir uns über eine Rückmeldung, ob es läuft.


Einrichtung

  1. API-Key holen. Konto anlegen, Key kopieren. Einen Key gibt es auch im kostenlosen Free-Tarif.
  2. Key hinterlegen, als Umgebungsvariable oder in einer .env im Arbeitsverzeichnis:
bash
1INVOICE_XHUB_API_KEY=sk_live_...
  1. Python 3.8 oder neuer. invoice-create und invoice-read kommen mit der Standardbibliothek aus. invoice-template-from-pdf braucht zusätzlich pip install pdfplumber pillow.

Die Skripte geben den Key nie aus und schreiben ihn in keine erzeugte Datei. Die .env gehört nicht ins Repository.


Grenzen, die du kennen solltest

  • Jeder Aufruf zählt. Die Skills rufen die API auf wie jede andere Anbindung. Eine Rechnung mit Prüfung zählt als mindestens zwei Einheiten, denn die Prüfung ist eine eigene Einheit. Der Layout-Nachbau rendert zum Vergleich mehrmals, und jeder Render ist ein Aufruf. Was dein Tarif enthält, steht unter Preise.
  • Die Daten gehen an die API. Rechnungsdaten und hochgeladene PDFs gehen wie bei jedem API-Aufruf an invoice-api.xhub.io. Wie wir damit umgehen, steht unter Sicherheit.
  • Skills laufen mit den Rechten deines Agenten. Schau sie dir vor dem ersten Einsatz an; der Quellcode liegt offen.
  • Formate. Getestet sind ZUGFeRD (EN 16931) und XRechnung (UBL). Eine XRechnung braucht die Leitweg-ID des Käufers und einen Ansprechpartner beim Verkäufer mit Name, Telefon und E-Mail.

Weiter

Claude ist eine Marke von Anthropic, PBC; Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot, Windsurf und die übrigen genannten Agenten sind Marken ihrer jeweiligen Inhaber. invoice-api.xhub ist mit keinem dieser Anbieter verbunden.

Artikel teilen

Ähnliche Artikel

Bereit, E-Rechnungen zu meistern?

Starte in unter 5 Minuten mit Invoice-api.xhub. Keine Kreditkarte erforderlich.