AgentStack
SKILL verified MIT Self-run

Shop Check

skill-waldo-van-der-code-deutsches-recht-mit-claude-shop-check · by waldo-van-der-code

This skill should be used when the user asks to "check my online shop", "audit my e-commerce site", "is my shop legal", "Impressum prüfen", "Button-Lösung", "zahlungspflichtig bestellen", "Widerrufsbelehrung prüfen", "AGB prüfen", "PAngV", "Preisangaben MwSt", "Versandkosten angeben", "Widerrufsformular", "shop-recht", "e-commerce compliance Germany", "online shop German law", "§ 312j BGB", or as…

No reviews yet
0 installs
13 views
0.0% view→install

Install

$ agentstack add skill-waldo-van-der-code-deutsches-recht-mit-claude-shop-check

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Shop Check? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

/shop-check — E-Commerce Rechtsprüfung (Deutschland)

Prüft Online-Shops auf Konformität mit deutschen E-Commerce-Pflichten: Impressum, Button-Lösung, Preisangaben, Widerrufsrecht und AGB. Stützt alle Befunde auf aktuelle Gesetzestexte via rechtsinformationen-bund-de MCP.

Rechtsrahmen: DDG § 5, BGB §§ 305–306, 312g, 312j, 355–357, PAngV. Gilt für B2C-Online-Shops mit Sitz oder Zielpublikum in Deutschland.


Step 0 — Route & Setup

Parse invocation args or user intent:

| Pattern | Modus | |---|---| | scan oder URL gegeben | → URL-Scan (Live-Shop prüfen) | | audit oder Dateipfad | → Code-Audit (Checkout-Implementierung) | | draft | → Textbausteine (Widerrufsbelehrung, AGB-Hinweise, Button-Texte) | | Keine Args oder Freitext | → Vollprüfung (URL-Scan + Befund-Report + Angebot für Textbausteine) |

Check MCP availability: attempt intelligente_rechtssuche with query BGB Fernabsatz Widerrufsrecht § 355. If it responds, use it for every law lookup. If unavailable, fall back to built-in knowledge — note which source was used in each finding.

Display: > shop-check | Modus: [X] | Ziel: [Y] | Gesetzesquelle: [MCP / Trainingsdaten]


Modus A — URL-Scan

Prüft den Live-Shop gegen alle sieben Pflichtbereiche.

A1 — Abruf

WebFetch auf die Ziel-URL (Startseite). Dann zusätzlich abrufen (als Footer-Links oder direkte Pfade):

  • /impressum — Impressum
  • /widerruf oder /widerrufsbelehrung oder /widerrufsrecht — Widerrufsbelehrung
  • /agb oder /allgemeine-geschaeftsbedingungen — AGB
  • Eine Produktdetailseite (Preisangaben prüfen)
  • Checkout / Warenkorb / Bestellseite, falls öffentlich erreichbar (Button-Lösung prüfen)

Notiere alle gefundenen URLs. Extrahiere relevante Textpassagen für jeden Prüfbereich.

A2 — Prüfmatrix

Klassifizierung: 🔴 Verstoß / 🟡 Risiko / 🟢 Konform / ⚪ Nicht automatisch prüfbar


1. Impressum (DDG § 5)

| Pflichtangabe | Rechtsgrundlage | Klassifizierung | |---|---|---| | Impressum-Seite vorhanden und erreichbar | DDG § 5 Abs. 1 | 🔴 falls fehlt | | Vollständiger Name / Firmenname | DDG § 5 Abs. 1 Nr. 1 | 🔴 falls fehlt | | Ladungsfähige Anschrift (kein Postfach) | DDG § 5 Abs. 1 Nr. 1 | 🔴 falls nur Postfach | | E-Mail-Adresse | DDG § 5 Abs. 1 Nr. 2 | 🔴 falls fehlt | | Handelsregisternr. + zuständiges Gericht (nur falls eingetragen) | DDG § 5 Abs. 1 Nr. 4 | 🔴 falls GmbH/AG ohne Angabe | | USt-IdNr. oder Steuernummer (falls steuerpflichtig) | DDG § 5 Abs. 1 Nr. 6 | 🟡 falls nicht angegeben | | Impressum maximal 2 Klicks erreichbar | BGH-Rechtsprechung | 🟡 falls tief vergraben |

Lookup: gesetz_per_abkuerzung_abrufen("DDG") → § 5


2. Button-Lösung (BGB § 312j)

| Prüfpunkt | Rechtsgrundlage | Klassifizierung | |---|---|---| | Bestellbutton mit gesetzlich konformem Wortlaut | BGB § 312j Abs. 3 | 🔴 falls falscher Text | | Erlaubte Formulierungen (vollständige Liste in references/shop-check-requirements.md) | BGH I ZR 86/21 (2022) | 🔴 falls "Weiter", "Bestellung abschicken", "Jetzt anmelden" o.ä. | | Unmittelbar vor Button: Zusammenfassung nach § 312j Abs. 2 | BGB § 312j Abs. 2 | 🔴 falls Zusammenfassung fehlt | | Zusammenfassung enthält: wesentliche Waren-/Dienstleistungsmerkmale | BGB § 312j Abs. 2 Nr. 1 | 🔴 falls fehlt | | Zusammenfassung enthält: Gesamtpreis inkl. aller Steuern und Abgaben | BGB § 312j Abs. 2 Nr. 2 | 🔴 falls fehlt | | Checkout-Seite öffentlich zugänglich für Prüfung | — | ⚪ falls Login/Session erforderlich |

Lookup: intelligente_rechtssuche("BGB § 312j Button-Lösung zahlungspflichtig bestellen")


3. Preisangaben (PAngV)

| Prüfpunkt | Rechtsgrundlage | Klassifizierung | |---|---|---| | Gesamtpreis inkl. USt. ausgewiesen | PAngV § 3 Abs. 1 | 🔴 falls nur Netto-Preis | | Hinweis auf USt. ("inkl. MwSt." oder "inkl. 19% MwSt.") | PAngV § 3 Abs. 1 | 🟡 falls kein MwSt.-Hinweis | | Grundpreisangabe bei Waren nach Gewicht/Volumen/Länge/Fläche | PAngV § 4 | 🔴 falls fehlt (z.B. €/kg) | | Streichpreise: niedrigster Preis der letzten 30 Tage als Referenz | PAngV § 11 | 🔴 falls UVP ohne 30-Tage-Basis |

Lookup: intelligente_rechtssuche("PAngV Gesamtpreis Umsatzsteuer Grundpreis § 3")


4. Versandkosten und Lieferzeit (PAngV + BGB)

| Prüfpunkt | Rechtsgrundlage | Klassifizierung | |---|---|---| | Versandkosten klar angegeben auf Produktseite | PAngV § 3 Abs. 2 | 🔴 falls erst im Checkout | | Lieferzeit angegeben (z.B. "3–5 Werktage") | BGB § 308 Nr. 1 | 🟡 falls fehlt | | "Kostenloser Versand" — Bedingungen klar kommuniziert (ab €X) | PAngV § 3 | 🟡 falls Schwellenwert unklar | | Versandeinschränkungen (nur DE, nur EU etc.) kommuniziert | PAngV | 🟡 falls unklar |


5. Widerrufsbelehrung (BGB §§ 355–357)

| Prüfpunkt | Rechtsgrundlage | Klassifizierung | |---|---|---| | Widerrufsbelehrung vorhanden und erreichbar | BGB § 312g, § 355 | 🔴 falls fehlt | | Widerrufsfrist: 14 Tage klar angegeben | BGB § 355 Abs. 2 | 🔴 falls falsche Frist oder fehlt | | Fristbeginn korrekt (bei Waren: Erhalt; bei Dienstl.: Vertragsschluss) | BGB § 355 Abs. 2 Satz 2 | 🔴 falls falsch | | Empfänger des Widerrufs angegeben (Name, Adresse, ggf. E-Mail) | BGB § 355 Abs. 1 | 🔴 falls fehlt | | Rechtsfolgen erläutert (Rückgewähr innerhalb 14 Tage; Rücksendekosten) | BGB §§ 355, 357 | 🔴 falls fehlt | | Ausnahmen vom Widerrufsrecht angegeben (z.B. verderbliche Waren, Digitales) | BGB § 312g Abs. 2 | 🟡 falls relevant aber fehlt |

Lookup: intelligente_rechtssuche("BGB Widerrufsrecht Fernabsatz § 355 Widerrufsfrist 14 Tage")


6. Muster-Widerrufsformular (BGB § 356 Abs. 1, Anlage 2)

| Prüfpunkt | Rechtsgrundlage | Klassifizierung | |---|---|---| | Muster-Widerrufsformular vorhanden (als Teil der Widerrufsbelehrung oder separat) | BGB § 356 Abs. 1 i.V.m. Anlage 2 | 🔴 falls fehlt | | Formular enthält: Unternehmensanschrift als Empfänger | Anlage 2 zu § 356 BGB | 🔴 falls fehlt | | Formular enthält: Erklärungsformel ("Hiermit widerrufe(n) ich/wir...") | Anlage 2 zu § 356 BGB | 🔴 falls fehlt | | Formular enthält: Felder für Name, Anschrift, Datum des Vertrags, Datum | Anlage 2 zu § 356 BGB | 🟡 falls Felder fehlen |

Lookup: intelligente_rechtssuche("BGB Anlage 2 § 356 Muster-Widerrufsformular")


7. AGB (BGB §§ 305–306)

| Prüfpunkt | Rechtsgrundlage | Klassifizierung | |---|---|---| | AGB vorhanden und erreichbar | BGB § 305 | 🔴 falls fehlt | | AGB in Kaufprozess einbezogen — Hinweis vor Bestellabschluss + Zustimmung | BGB § 305 Abs. 2 | 🔴 falls kein Hinweis oder Zustimmung fehlt | | AGB für Kunden speicherbar und druckbar (kein reines Popup) | BGB § 312f Abs. 1 | 🔴 falls nicht speicherbar | | AGB-Checkbox nicht vorausgefüllt (kein Pre-check) | BGB § 308 Nr. 5 — analog | 🟡 falls vorausgefüllt |

Lookup: intelligente_rechtssuche("BGB § 305 AGB Einbeziehung Fernabsatz")


A3 — Gesetzestext nachschlagen

Für jeden 🔴 Befund den Gesetzestext via MCP einholen und wörtlich zitieren:

| Gesetz | MCP-Abfrage | |---|---| | DDG § 5 | gesetz_per_abkuerzung_abrufen("DDG") | | BGB § 312j | intelligente_rechtssuche("BGB § 312j Button-Lösung Bestellbutton") | | BGB §§ 355–357 | intelligente_rechtssuche("BGB § 355 Widerrufsrecht Frist 14 Tage") | | BGB § 356 Anlage 2 | intelligente_rechtssuche("BGB § 356 Muster-Widerrufsformular Anlage 2") | | PAngV § 3 | intelligente_rechtssuche("PAngV § 3 Gesamtpreis Umsatzsteuer Versandkosten") | | BGB § 305 | intelligente_rechtssuche("BGB § 305 Allgemeine Geschäftsbedingungen Einbeziehung") |

Falls MCP nicht verfügbar: (Gesetzestext aus Trainingsdaten — verifizieren auf gesetze-im-internet.de)

A4 — Ausgabeformat

## Shop-Check — [url]  |  [Datum]  |  Gesetzesquelle: [MCP/Trainingsdaten]

🔴 Verstöße — [N]

  [Bereich] [Prüfpunkt]
  Fundstelle: [URL / HTML-Beschreibung / "nicht gefunden"]
  Rechtsgrundlage: [Gesetz + §]
  Wortlaut: "[zitierter Gesetzestext aus MCP]"
  Behebung: [konkrete Maßnahme in einem Satz]

🟡 Risiken — [N]
  [Bereich] [Prüfpunkt] — [Empfehlung]

🟢 Konform — [N]
  [Bereich]: [Kurzbegründung]

⚪ Manuelle Prüfung erforderlich
  - Button-Lösung: Checkout-Seite nicht öffentlich zugänglich
  - AGB-Einbindung: Zustimmungs-Checkbox im Kaufprozess manuell prüfen
  [weitere nicht prüfbare Punkte]

Prüfbereiche-Übersicht:
  1. Impressum (DDG § 5):            [✓ / ⚠ / ✗]
  2. Button-Lösung (§ 312j BGB):     [✓ / ⚠ / ✗ / ⚪]
  3. Preisangaben (PAngV):           [✓ / ⚠ / ✗]
  4. Versandkosten/Lieferzeit:       [✓ / ⚠ / ✗]
  5. Widerrufsbelehrung (§§ 355 BGB):[✓ / ⚠ / ✗]
  6. Widerrufsformular (§ 356 BGB):  [✓ / ⚠ / ✗]
  7. AGB (§ 305 BGB):                [✓ / ⚠ / ✗]

Gesamtbewertung: [konform / mit Mängeln / kritische Verstöße]
Abmahnrisiko: [gering / mittel / hoch] — [Begründung]

Sofortmaßnahmen (🔴 nach Priorität):
1. [Konkrete Maßnahme — höchste Abmahngefahr]
2. [...]

*Dieser Bericht dient der technischen Orientierung und ersetzt keine Rechtsberatung.*

Modus B — Code-Audit

Prüft die Checkout-Implementierung auf rechtskritische Anti-Patterns.

B1 — Grep-Patterns

# Bestellbutton-Text (Button-Lösung § 312j BGB)
grep -rEi "(bestellung|checkout|order|cart|payment|buy|submit)" \
  --include="*.tsx" --include="*.jsx" --include="*.html" . | \
  grep -iE "( *Dieser Text wurde mit KI-Unterstützung auf Basis des geltenden deutschen Rechts erstellt. Lassen Sie wichtige Shoprechtstexte von einem zugelassenen Rechtsanwalt prüfen. Kein Ersatz für Rechtsberatung.*

---

## Modus D — Vollprüfung

1. URL-Scan (Modus A) — alle sieben Bereiche
2. Falls Codebase-Pfad angegeben: Code-Audit (Modus B)
3. Konsolidierter Befundbericht — alle 🔴 Verstöße nach Abmahnrisiko sortiert
4. Angebot: "Soll ich rechtskonforme Textbausteine für die erkannten Lücken generieren? (`/shop-check draft widerrufsbelehrung`)"

---

## Ausgabestandards

- **Schweregrad:** 🔴 Verstoß (Abmahn-/Bußgeldrisiko — sofort beheben) / 🟡 Risiko (empfohlen) / 🟢 Konform / ⚪ Manuell prüfen
- **Abmahnrisiko:** Jeder 🔴-Befund öffnet Abmahnrisiko durch Mitbewerber und Verbände (IDO Verband, Verbraucherzentrale, wettbewerbsrechtliche Abmahnung nach UWG § 3a)
- **Gesetzeszitate:** Immer direkt aus MCP-Abfrage. Falls nicht verfügbar: *(Gesetzestext aus Trainingsdaten — verifizieren auf gesetze-im-internet.de)*
- **Haftungsausschluss:** Jeder Bericht endet mit — *Dieser Bericht dient der technischen Orientierung und ersetzt keine Rechtsberatung.*

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [waldo-van-der-code](https://github.com/waldo-van-der-code)
- **Source:** [waldo-van-der-code/deutsches-recht-mit-claude](https://github.com/waldo-van-der-code/deutsches-recht-mit-claude)
- **License:** MIT
- **Homepage:** https://waldo.vanderlore.de/blog/german-legal-compliance-for-small-websites/

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.