Guardrails für Windsurf, nach Ihren eigenen Regeln.
Die Regeln Ihres Unternehmens erreichen Windsurf, bevor eine Datei geschrieben wird. Was gegen sie verstößt, landet nie in der Datei.
npx -y @cybedefend/vibedefend@latest install
Windsurf schreibtbilling/refund.ts
export async function refund(req: Request) { const { id, amount } = await req.json(); const invoice = await db.invoices.find({ id, tenant: req.tenant, }); if (amount > 500) await approvals.second(invoice); return payments.refund(invoice, amount); }
Jede Abfrage ist auf den Tenant begrenzt.
rules/data-access.mdErstattungen über 500 € brauchen eine zweite Freigabe.
Einmal freigegeben von Sofia M.Vor dem Commit geprüft: sauber
Startklar in vier Schritten.
- Einen Befehl ausführenIn jedem Terminal, unter macOS, Linux oder Windows. Node 18.17 oder neuer.
- Region wählen, anmeldenEU oder USA. Ihr Browser öffnet die Anmeldung, kein Schlüssel zum Einfügen.
- Windsurf anhakenDer Installer findet die Agenten auf Ihrem Rechner und hakt sie für Sie an.
- Wie gewohnt programmierenÖffnen Sie Windsurf: VibeDefend läuft mit.
Das bringt VibeDefend in Windsurf.
Bereitgestellte Regeln
Nur beim SchreibenNur beim Schreiben von Dateien: pre_write_code ist der Moment, den Windsurf bereitstellt.
Windsurf schreibtsrc/billing/cart-checkout.ts
const total = new Decimal128(cart.sum); const rows = await db.query( "SELECT * FROM carts WHERE id = $1", [id] );
Geldbeträge nutzen Decimal128, nie Number.
Aus src/billing.ts:14 gewonnenJede Abfrage mit Nutzereingaben wird parametrisiert.
OWASP Top 10Vor der Änderung bereitgestellt
Live-Findings
Findings aus SAST, SCA, Secrets, IaC und CI/CD, live in der Sitzung.
Windsurf
SAST
src/db/users.repo.ts:42SQL injection
SCA
package.jsonlodash 4.17.20, CVE-2021-23337
Secrets
config/prod.ymlAWS access key
IaC
infra/main.tfS3 bucket public-read
CI/CD
.github/workflows/deploy.ymlpull_request_target
Im Kontext des Agenten, live
Grenzen in Windsurf
- Secret-WächterÜber .windsurfrules
- Aktions-WächterNur beim Schreiben
Ihre Fragen.
Ändert VibeDefend die Konfiguration von Windsurf?
~/.codeium/windsurf/hooks.json, ~/.codeium/windsurf/mcp_config.json, .windsurfrules. Ihre eigenen Hooks bleiben erhalten: Ein erneuter Lauf des Installers ersetzt nur die Einträge von VibeDefend.Welche Daten verlassen meinen Rechner?
Welche Version von Windsurf brauche ich?
Muss ich jedes Repository einzeln verknüpfen?
vibedefend link aus. Der Befehl schreibt .cybedefend/config.json mit der Projekt-ID.Wie entferne ich VibeDefend wieder?
vibedefend uninstall aus: Der Befehl entfernt jede Datei, die VibeDefend installiert hat. Wenn Sie das Paket global installiert haben, führen Sie danach npm uninstall -g @cybedefend/vibedefend aus.Warum sind die Action Guards in Windsurf eingeschränkt?
pre_write_code von Windsurf kann Dateischreibvorgänge blockieren, aber keine Lesezugriffe, Shell-Befehle oder Netzwerkabrufe. Dafür ergänzt VibeDefend in .windsurfrules ein Snippet, das den Agenten bittet, zuerst cybe_guards_check über MCP aufzurufen. Das greift, sofern das Modell seiner Regeldatei folgt.Technische Details zu Windsurf
- MCP-Server
- Verfügbar
~/.codeium/windsurf/mcp_config.json - Regeln vor jeder Änderung
- Nur beim Schreiben
pre_write_codeNur beim Schreiben von Dateien: pre_write_code ist der Moment, den Windsurf bereitstellt. - Gefährliche Aktionen blockiert
- Nur beim Schreiben
pre_write_code.windsurfrulesSchreibvorgänge werden hart blockiert. Für Lesezugriffe, Shell-Befehle und Netzwerkabrufe bittet ein Snippet in .windsurfrules den Agenten, zuerst cybe_guards_check aufzurufen: Das greift, sofern das Modell seiner Regeldatei folgt. - Regeln ab Sitzungsstart
- Bei jedem Prompt
pre_user_promptWindsurf hat kein Ereignis für den Sitzungsstart. VibeDefend nutzt pre_user_prompt, das bei jedem Prompt auslöst; die Prüfung ist leichtgewichtig und sofort fertig, wenn nichts ansteht. - Prüfung am Sitzungsende
- Verfügbar
post_cascade_responseLäuft am Ende jeder Antwort, sobald die Schwelle an Änderungen überschritten ist. - Prüfung langer Sitzungen
- Nicht verfügbarKeine EntsprechungWindsurf hat keinen Hook vor der Kontextkomprimierung.
- Erinnerung bei jedem Prompt
- Nicht verfügbarKeine EntsprechungIn Windsurf nicht verfügbar.
Was für Windsurf geschrieben wird
~/.codeium/windsurf/hooks.json~/.codeium/windsurf/mcp_config.json.windsurfrules
Dazu der Hook-Runner in ~/.cybedefend/. Ihre eigenen Hooks bleiben erhalten: Ein erneuter Lauf des Installers ersetzt nur die Einträge von VibeDefend.
Starten Sie den Installer im Stammverzeichnis Ihres Repositorys: Das Snippet für .windsurfrules landet in dem Ordner, aus dem Sie ihn starten.
Windsurf stellt weniger Momente bereit als die anderen Agenten. Dateischreibvorgänge werden hart blockiert; die übrigen Aktionen setzen darauf, dass der Agent .windsurfrules befolgt.
Stimmt etwas nicht? vibedefend status zeigt den Zustand, ohne etwas zu ändern, und vibedefend doctor behebt, was sich beheben lässt.