KI-Tools & -Skripte
Prüfung von Prisma-Schemas
Prüfe Prisma-Projekte vor der Auslieferung: Datenbankpasswörter im Schema oder in prisma.config.ts, aus Strings aufgebautes $queryRawUnsafe, migrate reset oder db push --accept-data-loss beim Deployment, req.body als data und Schemafehler.
Das bekommst du: 1 Datei · 42.42 KB · ZIP
Kaufoptionen ansehenProduktbeschreibung
prisma.$queryRawUnsafeSELECT * FROM "Order" WHERE status = '${status}') sieht aus wie das sichere Tagged Template, setzt den Wert aber direkt in SQL ein. Ein Build-Skript mit prisma db push --accept-data-loss löscht beim nächsten Deployment Spalten. Dieser Skill findet diese und zwölf weitere Prisma-Fehler vor der Auslieferung und erklärt dir, wie du jeden davon behebst.
Dein Agent führt einen Scanner für dein Prisma-Schema (schema.prisma oder einen mehrteiligen prisma/schema-Ordner), prisma.config.ts, den JavaScript- und TypeScript-Code mit Prisma Client und die Skripte in package.json aus. Er überspringt Kommentare, unterscheidet das getaggte $queryRaw-Template von einem an $queryRawUnsafe übergebenen Template-String, verfolgt eine SQL-Variable bis zu ihrer Erstellung in der Datei zurück, folgt npm run von einem Skript zum nächsten und liest relationMode aus der Schemadatei mit dem datasource-Block. Er führt weder Prisma noch deinen Code aus und verbindet sich mit keiner Datenbank. Das Ergebnis lautet BLOCK, REVIEW oder NOT FLAGGED, jeweils mit Datei, Zeile, Begründung und einem sichereren Vorgehen. Passwörter und API-Schlüssel werden nie ausgegeben.
Was geprüft wird
BLOCKIEREN (vor der Auslieferung beheben)
P01: ein Datenbankpasswort oder Accelerate-api_key für einen entfernten Host im Schema, in prisma.config.ts oder einer Verbindungszeichenfolge von PrismaClient oder einem Treiberadapter
P02: $queryRawUnsafe oder $executeRawUnsafe mit SQL aus ${...}, + oder += sowie Prisma.raw() mit zusammengesetzten Strings oder Werten aus Anfragen
P03: prisma migrate reset, db push --force-reset oder db push --accept-data-loss in einem Build-, Start-, Deployment- oder Installationsskript
P04: req.body, req.query oder await request.json(), vollständig als data, where, orderBy, include oder select in einer Route ohne Validator übergeben
PRÜFEN (vor der Veröffentlichung prüfen)
P11: als Float gespeicherte Geldfelder (price, amount, total, balance)
P12: Passwortfelder, deren Name nicht erkennen lässt, dass sie einen Hash enthalten
P13: Relationsfelder ohne Index bei relationMode = "prisma"
P14: String-IDs ohne @default
P15: email ohne @unique in Benutzer-, Konto- und Kundenmodellen
P16: onDelete: Cascade von einem Benutzer oder einer Organisation auf Bestellungen, Rechnungen, Zahlungen oder Audit-Einträge
P17: direktes SQL aus einem Wert, der in der Datei nicht als fester String erkennbar ist, oder zusammengesetztes SQL, dessen Werte als $1-Parameter übergeben werden
P18: prisma migrate dev oder db push in einem Deployment-Skript
P19: ein vollständiges Anfrageobjekt in einer Datenbankabfrage innerhalb einer Route, die zuvor einen Validator ausführt (prüfe, ob die Abfrage das validierte Ergebnis nutzt)
P20: ein in einer Datei gespeichertes Datenbankpasswort für localhost, etwa als DATABASE_URL-Fallback
Im Lieferumfang
Der Scanner (Python 3.9+, nur Standardbibliothek)
Ein Regelhandbuch mit Begründung und sichererem Vorgehen für jede Regel
Ein riskantes und ein sicheres Prisma-7-Beispielprojekt (Schema, prisma.config.ts, Express-Routen, package.json) sowie der tatsächliche Scannerbericht zum riskanten Projekt
Grenzen
Er liest jede Datei so, wie sie vorliegt: In einer Datei aufgebautes und in einer anderen ausgeführtes SQL, .env-Dateien, Migrations-SQL, Dockerfiles und CI-Dateien werden nicht nachverfolgt. Testdateien, Seed-Skripte und generierte Prisma-Client-Ordner werden übersprungen. Die laufende Datenbank wird nicht geprüft. NOT FLAGGED ist keine Garantie.
Inhalt
Ein ZIP-Archiv mit 18 Dateien: SKILL.md, der Scanner unter scripts/ (5 Python-Dateien), references/rules.md (jede Regel mit Begründung und sichererem Vorgehen) und examples/ (10 Beispieldateien sowie report.md, die tatsächliche Scannerausgabe zum riskanten Beispiel).
Anwendung: Dies ist ein Agenten-Skill: ein Ordner mit einer SKILL.md-Datei und Python-Skripten, die ein KI-Programmieragent wie Claude Code, Cursor oder Codex CLI ausführen kann. Entpacke das Archiv in den Skills-Ordner deines Agenten (für Claude Code: ~/.claude/skills/). Bitte deinen Agenten anschließend, dein Projekt zu prüfen. Die Skripte lassen sich auch eigenständig mit Python 3.9 oder neuer ausführen, ohne zusätzliche Installation. Sie lesen ausschließlich deine Dateien: kein Netzwerkzugriff und keine Datenübertragung.
Das bekommst du
1 Datei · 42.42 KB
- prisma-schema-check-1.0.0.zipZIP · 42.42 KB
KI-Tools & -Skripte
Prüfung von Prisma-Schemas
Prüfe Prisma-Projekte vor der Auslieferung: Datenbankpasswörter im Schema oder in prisma.config.ts, aus Strings aufgebautes $queryRawUnsafe, migrate reset oder db push --accept-data-loss beim Deployment, req.body als data und Schemafehler.
In Getly Pro enthaltenPro holen
Tags
Häufige Fragen
Erhalte ich sofort Zugriff?
Ja. Dies ist ein digitales Produkt - du kannst es direkt nach dem Kauf aus deiner Bibliothek herunterladen.
Darf ich es für kommerzielle Projekte nutzen?
Ja. Kommerzielle Nutzung ist erlaubt: im eigenen Business und in dem, was du verkaufst. Die Datei selbst darfst du nicht weiterverkaufen oder verbreiten.
Wie sind die Rückerstattungsbedingungen?
Du kannst innerhalb von 30 Tagen eine Rückerstattung anfordern. Stimmt etwas nicht, fordere sie bei deiner Bestellung an - das Getly-Team prüft sie.
Welche Dateiformate und -größen erhalte ich?
Du lädst 1 Datei herunter - ZIP - insgesamt 42.42 KB.
Erhalte ich kostenlose Updates?
Ja - wenn der Verkäufer eine neue Version veröffentlicht, kannst du die aktuellen Dateien kostenlos erneut aus deiner Bibliothek herunterladen. Aktuelle Änderungen findest du im Changelog.
Preis
$5.00



