Guardrails per Devin Desktop, costruiti sulle tue regole.

Le regole della tua azienda arrivano a Devin Desktop, l'ex Windsurf, prima di ogni scrittura su file. Una scrittura che le viola non finisce mai nel file.

npx -y @cybedefend/vibedefend@latest install

Crea un account gratuitoQualsiasi versione recente di Devin DesktopLeggi la documentazione

Devin Desktop sta scrivendobilling/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);
}

Ogni query è limitata al tenant.

rules/data-access.md

I rimborsi sopra i 500 € richiedono un secondo approvatore.

Approvata una volta da Sofia M.

Verificato prima del commit: pulito

Pronto in quattro passi.

  1. Esegui un comandoIn qualsiasi terminale, su macOS, Linux o Windows. Node 18.17 o successivo.
  2. Scegli la regione e accediUE o USA. Il browser si apre per l'accesso, nessuna chiave da incollare.
  3. Spunta Devin DesktopL'installer trova gli agenti sul tuo computer e li spunta per te.
  4. Scrivi codice come sempreApri Devin Desktop: VibeDefend lavora al suo fianco.

Verifica quando vuoi: vibedefend status

Cosa aggiunge VibeDefend a Devin Desktop.

Regole servite

Solo scritture

Solo le scritture su file: pre_write_code è il momento che gli hook di Windsurf espongono.

Devin Desktop sta scrivendosrc/billing/cart-checkout.ts

const total = new Decimal128(cart.sum);
const rows = await db.query(
  "SELECT * FROM carts WHERE id = $1", [id]
);

Gli importi usano Decimal128, mai Number.

Estratta da src/billing.ts:14

Ogni query che mescola input dell'utente va parametrizzata.

OWASP Top 10

Servite prima della modifica

Protezione dei segreti

Le letture dirette dei segreti sono rifiutate; Devin Desktop riceve il riferimento gestito.

Devin Desktopwebhooks.ts

  1. cat .env | grep STRIPE

    Bloccato: lettura diretta di un segreto

  2. Al suo postoprocess.env.STRIPE_WEBHOOK_SECRET

  3. npm test -- webhooks

    I test passano

Registrato per il team

Protezione delle azioni

Comandi distruttivi, drop di schema e percorsi protetti vengono bloccati prima dell'esecuzione.

Devin Desktop

  1. rm -rf dist/

    Consentito: output della build

  2. rm -rf .cache/

    Consentito: cache

  3. rm -rf ./storage/uploads

    Bloccato: percorso protetto, file degli utenti

Registrato per il team

Finding in tempo reale

I finding di SAST, SCA, segreti, IaC e CI/CD, in diretta nella sessione.

Devin Desktop

  1. SASTsrc/db/users.repo.ts:42

    SQL injection

  2. SCApackage.json

    lodash 4.17.20, CVE-2021-23337

  3. Secretsconfig/prod.yml

    AWS access key

  4. IaCinfra/main.tf

    S3 bucket public-read

  5. CI/CD.github/workflows/deploy.yml

    pull_request_target

Nel contesto dell'agente, in diretta

Limiti in Devin Desktop

  • Strumenti MCP e richieste webGli hook di Windsurf non ne hanno per loro: uno snippet di .windsurfrules chiede all'agente di controllarli prima.Tramite .windsurfrules

Le tue domande.

VibeDefend modifica la configurazione di Devin Desktop?
Aggiunge i suoi hook e registra il server MCP cybedefend, in ~/.codeium/windsurf/hooks.json, ~/.codeium/windsurf/mcp_config.json, .windsurfrules. I tuoi hook restano al loro posto: se rilanci l'installer, sostituisce solo le voci di VibeDefend.
Quali dati escono dal mio computer?
L'analisi avviene nella regione scelta all'installazione, UE o US. La decisione di bloccare un'azione viene presa sul tuo computer. Prima di una modifica, l'hook invia la parte di file che l'agente sta scrivendo, per trovare le regole che valgono per quel file. La revisione di fine sessione invia i file modificati durante la sessione. Entrambi vengono analizzati al volo: non conserviamo nulla del tuo codice, solo la traccia delle regole servite e delle azioni bloccate. Il tuo token di accesso resta nel portachiavi del tuo sistema operativo.
Quale versione di Devin Desktop serve?
Una versione recente di Devin Desktop, e Node 18.17 o superiore. L'installer gira su macOS, Linux e Windows.
Devo collegare ogni repository?
Non per i progetti importati da GitHub o GitLab: VibeDefend legge l'origin del repo e trova il progetto. Per qualsiasi altro repo, esegui vibedefend link una volta. Il comando scrive .cybedefend/config.json con l'ID del progetto.
Come si disinstalla?
Esegui vibedefend uninstall: rimuove tutti i file installati da VibeDefend. Se hai installato il pacchetto a livello globale, esegui poi npm uninstall -g @cybedefend/vibedefend.
Fin dove arrivano gli Action Guards in Devin Desktop?
Gli hook di Windsurf pre_write_code, pre_read_code e pre_run_command permettono a VibeDefend di bloccare senza appello scritture e letture di file e comandi shell. Questi hook non hanno un evento per le richieste web e non filtrano le chiamate agli strumenti MCP: per quelle, VibeDefend aggiunge a .windsurfrules uno snippet che chiede all'agente di chiamare prima cybe_guards_check via MCP. Regge se il modello segue il suo file di regole.
Dettagli tecnici per Devin Desktop
Server MCP
Disponibile~/.codeium/windsurf/mcp_config.json
Regole prima di ogni modifica
Solo scritturepre_write_codeSolo le scritture su file: pre_write_code è il momento che gli hook di Windsurf espongono.
Azioni pericolose bloccate
Scritture, letture, shellpre_write_codepre_read_codepre_run_commandScritture e letture di file e comandi shell vengono bloccati senza appello. Per strumenti MCP e richieste web, uno snippet in .windsurfrules chiede all'agente di chiamare prima cybe_guards_check: regge se il modello segue il suo file di regole.
Regole caricate all'avvio
A ogni promptpre_user_promptGli hook di Windsurf non hanno un evento di avvio della sessione. VibeDefend usa pre_user_prompt, che scatta a ogni turno; il controllo è leggero e risponde subito quando non c'è nulla in sospeso.
Revisione a fine sessione
Disponibilepost_cascade_responseParte alla fine di ogni risposta, una volta superata la soglia di modifiche.
Revisione delle sessioni lunghe
Non disponibileNessun equivalenteGli hook di Windsurf non hanno un evento prima della compattazione del contesto.
Promemoria a ogni prompt
Non disponibileNessun equivalenteNon disponibile in Devin Desktop.

Cosa scrive per Devin Desktop

  • ~/.codeium/windsurf/hooks.json
  • ~/.codeium/windsurf/mcp_config.json
  • .windsurfrules

Più il runner degli hook in ~/.cybedefend/. I tuoi hook restano al loro posto: se rilanci l'installer, sostituisce solo le voci di VibeDefend.

Lancia l'installer dalla radice del repository: lo snippet .windsurfrules viene scritto nella cartella da cui lo esegui.

Gli hook di Windsurf espongono meno momenti degli altri agenti. Scritture e letture di file e comandi shell vengono bloccati senza appello; gli strumenti MCP e le richieste web dipendono dal fatto che l'agente segua .windsurfrules.

Qualcosa non torna? vibedefend status ti dà un report in sola lettura, e vibedefend doctor ripara quello che può.