Project Oxygen & Ideo-LabIDEO LAB Dashboard 2026
Angle du guide : Windsurf n’est pas traitĂ© comme un simple Ă©diteur avec autocomplete. On l’aborde comme un atelier agentique complet : contexte, rĂšgles, outils, terminal, qualitĂ©, dĂ©lĂ©gation cloud et gouvernance.
1

Positionnement Windsurf

Comprendre Windsurf comme IDE agentique : flow state, Cascade, Tab, contexte et collaboration humain/IA.

Agentic IDECascadeFlow
2

Installation & onboarding

Installer, importer les réglages VS Code/Cursor, préparer le workspace et éviter les mauvais départs.

SetupVS CodeWorkspace
3

Interface & surfaces IA

Cartographier les zones utiles : Cascade, éditeur, terminal, problems, previews, command palette.

EditorTerminalPreviews
4

Cascade en profondeur

Le cƓur agentique de Windsurf : chat/code modes, tool calling, checkpoints, linter, awareness.

CascadeToolsCheckpoint
5

Code Mode vs Chat Mode

Savoir quand demander une analyse, quand demander un patch, et quand bloquer toute écriture.

Code ModeChat ModeReview
6

Tab, Command & Codelenses

Autocomplete, inline command, terminal command, refactor local et interactions rapides sans casser le flux.

TabCommandRefactor
7

Context Awareness & @mentions

Donner Ă  Cascade le bon contexte : fichiers, dossiers, terminal, stack traces, symboles, erreurs.

Context@mentionStacktrace
8

Rules, Memories & AGENTS.md

Industrialiser la mémoire projet : rÚgles globales, workspace, AGENTS.md, activation et gouvernance.

RulesMemoriesAGENTS.md
9

Workflows & routines

Transformer les trajectoires répétitives en workflows robustes : bugfix, tests, documentation, release.

WorkflowRunbookAutomation
10

MCP & outils externes

Connecter Cascade Ă  GitHub, Jira, Figma, bases, APIs et outils internes sans ouvrir une faille.

MCPToolsIntegrations
11

Terminal agentique

ContrÎler les commandes : auto-exécution, allowlist, denylist, dedicated terminal, sécurité.

TerminalAuto-runSafety
12

Checkpoints, linter & qualité

Utiliser les checkpoints, corriger les erreurs de linter, préserver un diff lisible et testable.

LinterTestsDiff
13

Previews, App Deploys & UI

Boucle frontend rapide : preview dans l’IDE, erreurs visuelles, corrections ciblĂ©es, dĂ©ploiement contrĂŽlĂ©.

PreviewUIDeploy
14

Devin, Spaces & Command Center

Comprendre la couche cloud agentique : déléguer, suivre, organiser les tùches et garder le contrÎle.

DevinSpacesCloud Agent
15

Méthode Patch contrÎlé

Méthode senior : diagnostic, plan, patch court, test, diff review, rollback, documentation.

PatchPlanRollback
16

Windsurf pour Django/Python

Workflow concret pour projets Django : migrations, crons, admin, tests, logs, sécurité et production.

DjangoPythonProduction
17

Sécurité & gouvernance

Données sensibles, secrets, commandes dangereuses, MCP, policies, usage équipe et audit.

SecurityPrivacyEnterprise
18

Comparaison & adoption

Positionner Windsurf face à Cursor, Copilot, Claude Code, Codex et définir une adoption réaliste.

CursorCopilotCodex
19

Playbook quotidien

Routine opérationnelle pour utiliser Windsurf sans tomber dans le vibe coding incontrÎlé.

DailyPRReview
20

Sources & veille

Documentation officielle, pages Ă  suivre, changelog, checklist mensuelle de veille.

DocsChangelogWatch
Positionnement Windsurf
Windsurf dans la famille des IDE agentiques

Windsurf est un IDE orientĂ© dĂ©veloppement agentique. Son objectif n’est pas seulement de complĂ©ter du code, mais de maintenir le dĂ©veloppeur dans un flux continu : comprendre le projet, dialoguer avec Cascade, Ă©diter plusieurs fichiers, exploiter le terminal, corriger les erreurs et garder le contexte de la tĂąche.

La promesse principale tient dans l’idĂ©e de flow state : rĂ©duire les ruptures entre lecture, dĂ©cision, Ă©criture, test et correction. Le dĂ©veloppeur n’est plus en train de copier-coller entre un chat et un Ă©diteur ; il pilote un assistant qui voit le code, les fichiers, les erreurs et parfois les outils externes.

RĂšgle senior : Windsurf accĂ©lĂšre le cycle, mais ne remplace pas l’architecture, la revue, les tests, la discipline Git et la comprĂ©hension mĂ©tier.
Carte mentale
Developer
  -> objective
  -> Cascade context
  -> plan or diagnosis
  -> targeted edits
  -> terminal checks
  -> linter feedback
  -> checkpoint or rollback
  -> human diff review
  -> commit and pull request
1
IDE
Éditeur, terminal, agent et contexte rĂ©unis.
3
Surfaces
Tab, Command, Cascade.
4
Garde-fous
Rules, tests, diff, Git.
0
Accept all
Jamais de validation aveugle.
Ne pas confondre Windsurf avec du vibe coding
ConfusionRéalité professionnelleConséquence
“L’IA code Ă  ma place”L’IA propose et exĂ©cute des tĂąches sous contraintes.L’humain reste responsable du design et du rĂ©sultat.
“Un prompt suffit”Il faut un contexte fiable, des rules et des tests.Sans doctrine projet, l’agent improvise.
“Un gros patch va plus vite”Un gros diff est souvent impossible Ă  reviewer correctement.PrĂ©fĂ©rer des patchs courts et validables.
“Le terminal auto-run est magique”Les commandes doivent ĂȘtre classĂ©es par risque.Allowlist, denylist et validation humaine.
PiĂšge classique : demander “refactor tout le module” sans tests de caractĂ©risation. L’agent peut produire une belle structure qui change subtilement le comportement.
OĂč Windsurf apporte le plus
Bugfix guidé

Coller une stack trace, mentionner les fichiers, demander diagnostic, test minimal, correction ciblée.

Refactor progressif

Découper une dette technique en petites étapes reviewables, avec checkpoints et tests.

Frontend rapide

Prévisualiser, cibler un composant, corriger CSS/HTML/JS sans casser le reste.

Onboarding codebase

Demander une carte des modules, points d’entrĂ©e, dĂ©pendances et conventions.

Tests

GĂ©nĂ©rer tests de non-rĂ©gression et scĂ©narios limites Ă  partir d’un bug rĂ©el.

Documentation vivante

Transformer l’analyse du code en notes de runbook, README, AGENTS.md ou checklist.

Architecture logique de travail
Repository |-- source code |-- tests |-- docs |-- AGENTS.md / rules |-- terminal output |-- linter diagnostics | v Cascade context engine | +--> analysis and plan +--> code edits +--> terminal actions +--> checkpoint and recovery +--> summary and next steps

La qualitĂ© du rĂ©sultat dĂ©pend moins du modĂšle seul que de la qualitĂ© du contexte, de la taille de la tĂąche, de la capacitĂ© de l’agent Ă  lire les bons fichiers, et de la discipline du dĂ©veloppeur au moment de valider.

Installation & onboarding
PrĂ©parer l’installation

Windsurf est distribuĂ© pour Mac, Windows et Linux. Avant de l’installer sur un poste de travail sĂ©rieux, il faut prĂ©parer le terrain : dĂ©pĂŽt propre, Git fonctionnel, runtime projet installĂ©, tests lançables et stratĂ©gie de secrets claire.

  • VĂ©rifier Git, SSH keys et accĂšs au dĂ©pĂŽt.
  • Installer le runtime principal : Python, Node, Java, Docker, selon projet.
  • VĂ©rifier que les tests passent avant usage agentique.
  • CrĂ©er une branche dĂ©diĂ©e aux essais Windsurf.
  • Importer Ă©ventuellement les rĂ©glages VS Code/Cursor, mais nettoyer les extensions inutiles.
Checklist initiale
Before first agent run:
- git status is clean
- dependencies are installed
- tests can run locally
- linter can run locally
- secrets are not exposed
- .env is ignored
- sample config exists
- workspace rules are explicit
- destructive commands are blocked
Importer sans transporter le chaos

Importer les settings d’un Ă©diteur existant est pratique, mais ce n’est pas une raison pour rĂ©cupĂ©rer des annĂ©es d’extensions obsolĂštes. Windsurf fonctionne mieux avec un environnement lisible.

ÉlĂ©mentÀ importerÀ Ă©viter
Theme / fontOui, confort utilisateur.Configurations trop personnalisées non partagées.
Extensions langageOui : Python, JS, Docker, SQL.Extensions abandonnées ou redondantes.
FormattersOui si standard équipe.Deux formatters concurrents.
SnippetsOui si propres.Snippets qui contredisent les conventions.
SecretsJamais.Tokens, clés, credentials.
Ouvrir le premier dépÎt

Le premier rĂ©flexe ne doit pas ĂȘtre de demander Ă  Cascade de modifier du code. Il faut lui demander de lire et cartographier.

Prompt:
Map this repository before editing anything.
Identify the main modules, entry points, test strategy,
configuration files, database migration system, and risky areas.
Do not modify files. Return a concise architecture map and a risk list.
Objectif : établir une baseline. Si Cascade comprend mal le projet au départ, tous les patchs suivants seront fragiles.
Réglages de départ
RéglageValeur prudentePourquoi
Auto-exĂ©cution terminalDĂ©sactivĂ© ou allowlist onlyÉviter commandes destructives.
Rules workspaceActivéesPartager conventions projet.
MemoriesSurveilléesCorriger mémoires fausses.
MCPMinimal au débutRéduire surface de risque.
Branches GitUne tĂąche = une brancheDiffs lisibles et rollback simple.
Interface & surfaces IA
Les surfaces importantes
Cascade

Assistant agentique principal. Analyse, dialogue, modifications, outils, contexte, terminal.

Editor

Édition directe, sĂ©lection de code, inline command, codelenses, diagnostics.

Terminal

Commande naturelle, sélection vers Cascade, auto-exécution contrÎlée.

Problems / diagnostics

Erreurs de compilation, linter, types, tests et corrections ciblées.

Previews

Feedback UI rapide pour applications web, éléments sélectionnables et erreurs visibles.

Settings

ModĂšles, auto-run, MCP, customizations, rules, memories, policies.

Raccourcis conceptuels

Peu importe les raccourcis exacts selon OS : il faut surtout comprendre quelle surface appeler selon le problĂšme.

BesoinSurfaceInstruction type
Comprendre un bugCascadeAnalysis only, no edits.
Modifier une fonctionInline CommandRefactor selected code only.
Créer un patch multi-fichiersCascade Code ModePlan then patch.
Comprendre une erreur terminalTerminal selection to CascadeExplain this stack trace.
Corriger UIPreview + CascadeFix selected component.
Ne pas tout faire avec le mĂȘme outil
Small local change -> inline command Complex bug -> Cascade analysis -> targeted patch -> terminal test Large feature -> plan -> branch -> staged patches -> pull request Long autonomous task -> cloud agent or Devin -> review generated PR

La maturitĂ© consiste Ă  choisir la plus petite surface suffisante. Un inline edit est souvent meilleur qu’un agent complet pour une modification locale.

HygiĂšne de session
  • Fermer les conversations obsolĂštes.
  • Nommer clairement les branches.
  • Ne pas mĂ©langer bugfix, refactor et feature dans une mĂȘme session.
  • CrĂ©er un rĂ©sumĂ© de fin de session.
  • Transformer les apprentissages utiles en Rules ou AGENTS.md.
End session summary:
- changed files
- decisions made
- tests run
- known risks
- follow-up tasks
- rules to update
Cascade en profondeur
Le centre de gravité de Windsurf

Cascade est l’assistant agentique de Windsurf. Il peut dialoguer avec le dĂ©veloppeur, comprendre du contexte projet, utiliser des outils, proposer ou appliquer des modifications, rĂ©agir aux erreurs, intĂ©grer certaines sorties de terminal et s’appuyer sur des rĂšgles.

Le bon usage consiste à lui donner une tùche bornée, des contraintes explicites, et une définition claire de ce qui est interdit.

Instruction de départ
You are working in an existing production repository.
Do not rewrite large files.
Do not change public APIs unless requested.
Prefer small patches.
Before editing, explain the files you need to inspect.
After editing, list tests and risks.
Capacités clés
CapacitéUsageRisque
ChatAnalyse, explication, stratégie.Réponse plausible sans preuve.
Code editsPatchs sur un ou plusieurs fichiers.Diff trop large.
Tool callingLire fichiers, contexte, outils connectés.Permissions excessives.
CheckpointsRevenir en arriĂšre.Ne remplace pas Git.
Linter awarenessCorriger erreurs immédiatement.Corriger le symptÎme plutÎt que la cause.
Workflow recommandé
Task -> clarify scope -> inspect files -> propose plan -> approve step 1 -> apply small patch -> run focused check -> inspect diff -> repeat -> final summary
Important : si Cascade part dans trop de fichiers, arrĂȘter la session, revenir au plan, et demander une rĂ©duction du scope.
Prompts opérationnels
Prompt: diagnosis only
Analyze this issue using the current repository context.
Do not edit files. Identify likely root causes,
files to inspect, and a minimal verification plan.

Prompt: patch only
Apply the smallest safe patch for the selected root cause.
Do not refactor unrelated code. Do not format entire files.
After editing, summarize exact changes and tests to run.

Prompt: review
Review your own diff as a senior maintainer.
List behavior changes, migration risks, security risks,
and any tests that are missing.
Code Mode vs Chat Mode
Choisir le bon mode
SituationMode recommandéPourquoi
DĂ©couverte d’un codebaseChat / analysis onlyPas de modification pendant la comprĂ©hension.
Bug localiséCode Mode limitéPatch ciblé.
Refactor largePlan + étapesLimiter le risque.
Question architectureChatDiscussion avant action.
Correction de linter simpleCode ModeAction rapide.
Chat Mode : comprendre avant d’agir

Le Chat Mode est idĂ©al pour demander une lecture, un diagnostic, une explication de design ou une analyse de risque. Il faut l’utiliser lorsque la modification est encore prĂ©maturĂ©e.

Prompt:
Explain how this module works.
Do not propose code yet.
Identify the data flow, public APIs, side effects,
and places where a change could break compatibility.
Code Mode : modifier sous contrainte

Le Code Mode doit ĂȘtre utilisĂ© avec des bornes strictes : fichiers autorisĂ©s, taille du patch, comportement attendu, tests Ă  lancer, interdits explicites.

Prompt:
Edit only these files:
- app/services/parser.py
- tests/test_parser.py

Goal: fix the reported edge case.
Do not change public function names.
Do not modify database models.
Add one regression test.
Return a concise diff summary.
Interdits à écrire dans le prompt
À bannir : “fix everything”, “clean this project”, “refactor all”, “make it better”, “you decide”. Ces formulations donnent trop de pouvoir à l’agent.
  • Toujours nommer le pĂ©rimĂštre.
  • Toujours nommer les fichiers Ă  ne pas toucher si nĂ©cessaire.
  • Toujours demander un rĂ©sumĂ© des risques.
  • Toujours regarder le diff avant commit.
Tab, Command & Codelenses
Autocomplete agentique

Windsurf Tab correspond Ă  la surface la plus rapide : complĂ©ter une ligne, une expression, un bloc ou poursuivre une intention locale. Ce n’est pas l’outil adaptĂ© pour redessiner une architecture.

Bon usageMauvais usage
Compléter un mapping simple.Créer une migration complexe sans review.
Écrire un test rĂ©pĂ©titif.Changer un protocole mĂ©tier.
Finir une fonction évidente.Inventer une API publique.
Compléter une documentation technique.Modifier des rÚgles de sécurité.
Commande inline

La commande inline sert Ă  transformer une sĂ©lection : simplifier, typer, extraire une fonction, ajouter une gestion d’erreur, documenter un bloc. Elle doit rester locale.

Inline instruction:
Refactor the selected function for readability only.
Keep the same signature, same behavior, and same exceptions.
Do not edit any other function.
Commande naturelle dans le terminal

Windsurf permet de gĂ©nĂ©rer des commandes Ă  partir d’instructions naturelles. Le bĂ©nĂ©fice est rĂ©el pour des commandes longues, mais il faut contrĂŽler les effets.

TypeExemple acceptableValidation
Lecturelist recent git commitsFaible risque.
Testsrun one pytest fileFaible risque.
Dépendancesinstall packageValidation humaine.
DBrun migrationsValidation stricte.
Destructifremove directoryInterdit sauf décision explicite.
Codelenses et actions contextuelles

Les actions contextuelles sont prĂ©cieuses pour comprendre ou refactorer un symbole sans quitter le fichier. Elles doivent ĂȘtre utilisĂ©es comme micro-outils.

Explain

Comprendre rapidement une fonction ou une classe.

Refactor

Modifier une sélection locale.

Generate test

Créer un test ciblé sur un comportement.

Context Awareness & @mentions
Le carburant de l’agent

Un agent de code est aussi bon que son contexte. Windsurf peut comprendre le codebase, mais il faut l’aider à viser juste : fichiers, dossiers, symboles, erreurs terminal, critùres d’acceptation.

Good context package:
- exact error message
- reproduction steps
- expected behavior
- actual behavior
- relevant files
- forbidden changes
- test command
- acceptance criteria
@mentionner précisément
Objet mentionnéUsageExemple
FichierLimiter le contexte.Analyze this service file.
DossierComprendre un sous-systĂšme.Map this app folder.
FonctionModifier localement.Fix this parser function.
TerminalExpliquer une erreur.Explain this traceback.
DocsAligner avec conventions.Follow this runbook.
Limites de contexte

Les conversations longues finissent par perdre de la prĂ©cision. Le bon rĂ©flexe est de repartir sur une nouvelle session avec un rĂ©sumĂ© structurĂ© plutĂŽt que d’accumuler des dizaines de tours.

Session handoff:
Current goal:
Decisions already made:
Files changed:
Tests passing:
Open risks:
Next smallest step:
Do not revisit previous decisions unless tests fail.
Ce qu’il ne faut pas donner
Contexte dangereux : secrets, dumps de production, logs contenant tokens, données personnelles client, contrats confidentiels, clés SSH, clés privées, gros fichiers non nécessaires.
  • RĂ©duire le contexte Ă  ce qui est nĂ©cessaire.
  • Anonymiser les donnĂ©es mĂ©tier sensibles.
  • Fournir des exemples synthĂ©tiques.
  • Favoriser les tests minimaux plutĂŽt que les donnĂ©es rĂ©elles.
Rules, Memories & AGENTS.md
Rules, Memories, Workflows, AGENTS.md
MĂ©canismeRĂŽleQuand l’utiliser
RulesDire comment Cascade doit se comporter.Conventions, interdits, style, commandes.
MemoriesConserver du contexte entre conversations.Préférences et faits projet récurrents.
AGENTS.mdRÚgles versionnées localisées dans le repo.Doctrine partageable par équipe.
WorkflowsAutomatiser des trajectoires répétitives.Bugfix, tests, release, documentation.
Bonne pratique : ce qui est important et durable doit ĂȘtre versionnĂ© dans le dĂ©pĂŽt plutĂŽt que seulement mĂ©morisĂ© automatiquement.
Structure recommandée
# Agent instructions

## Project
This is a production Django application.
Prefer small, reviewable patches.
Do not rewrite large files.

## Code style
Use explicit names.
Avoid hidden side effects.
Keep public APIs stable unless requested.

## Database
Do not create indexes on large text fields.
Do not generate migrations without explaining the model delta.

## Tests
Add regression tests for bug fixes.
Run targeted tests before broad tests.

## Safety
Never edit secrets.
Never run destructive commands without approval.
Activation des rĂšgles

Les rĂšgles doivent ĂȘtre assez courtes, spĂ©cifiques, et liĂ©es Ă  des contextes d’activation. Une rĂšgle trop gĂ©nĂ©rale devient du bruit ; une rĂšgle trop longue sera ignorĂ©e ou mal appliquĂ©e.

TypeUsageExemple
Always-onPrincipes globaux.Small patches only.
GlobRĂšgles par fichiers.templates/**/*.html.
ManualÀ invoquer quand nĂ©cessaire.Migration safety rule.
Model decisionLaisser l’agent dĂ©cider.Documentation style rule.
Erreurs fréquentes
  • Écrire un roman dans une rule.
  • MĂ©langer style, sĂ©curitĂ©, architecture et commandes dans un seul bloc.
  • Mettre une rĂšgle contradictoire avec le README.
  • Ne jamais nettoyer les Memories erronĂ©es.
  • Oublier les rĂšgles spĂ©cifiques aux migrations, crons, admin ou tests.
Test simple : si une rule ne permet pas de refuser concrĂštement un mauvais patch, elle est probablement trop vague.
Workflows & routines
Un workflow est une trajectoire répétable

Les workflows servent Ă  Ă©viter de réécrire sans cesse les mĂȘmes instructions. Ils standardisent les sĂ©quences : diagnostiquer, patcher, tester, documenter, ouvrir une PR.

Reusable workflow -> inputs -> context to inspect -> allowed actions -> checks to run -> output format -> stop conditions
Workflow bugfix
Bugfix workflow:
1. Read the error and reproduction steps.
2. Inspect only relevant files first.
3. Identify root cause candidates.
4. Ask for confirmation before editing if scope is unclear.
5. Add or update one regression test.
6. Apply smallest safe patch.
7. Run targeted tests.
8. Summarize behavior change and risks.
Workflow documentation
EntréeAction CascadeSortie
Module complexeCartographier responsabilités.README technique.
IncidentRésumer cause et correction.Postmortem court.
Nouvelle rĂšgleExtraire convention durable.AGENTS.md / Rule.
Commande répétéeFormaliser étapes.Runbook.
Workflow release
Release workflow:
- inspect changed files
- list migrations
- list config changes
- list dependency changes
- run tests
- run linter
- generate release notes
- identify rollback plan
- identify manual checks after deploy
Conseil : Windsurf peut préparer la release note, mais la décision de release reste humaine.
MCP & outils externes
Pourquoi MCP change la donne

MCP permet à Cascade de dialoguer avec des outils et services externes via des serveurs spécialisés : GitHub, Jira, bases de données, Figma, APIs internes, documentation, observabilité, etc.

Cascade -> MCP client -> MCP server: GitHub -> MCP server: Jira -> MCP server: database -> MCP server: internal docs -> MCP server: monitoring
Rùgle : plus un agent a d’outils, plus il a besoin de politiques de permission.
Intégrations utiles
IntégrationUsageGarde-fou
GitHubLire issues, PR, branches.Limiter write access.
JiraLire ticket et critÚres.Ne pas exposer données sensibles.
FigmaComprendre design UI.Limiter aux projets autorisés.
DatabaseExplorer schémas dev.Read-only, jamais production en écriture.
Docs internesAligner avec conventions.Sources versionnées.
Principes de configuration
  • Commencer par un seul MCP utile.
  • PrĂ©fĂ©rer les connecteurs officiels quand disponibles.
  • Documenter chaque serveur dans le repo ou le runbook Ă©quipe.
  • Ne jamais donner un accĂšs production par dĂ©faut.
  • CrĂ©er une allowlist d’outils autorisĂ©s par environnement.
MCP governance:
- owner
- purpose
- allowed repositories
- allowed environments
- read/write permissions
- secret handling
- audit logs
- rollback procedure
Risques MCP
Risques principaux : fuite de secrets, actions non voulues sur outils externes, prompt injection via tickets ou docs, accĂšs trop large, absence de logs.
RisqueMesure
Prompt injection dans issueTraiter tickets comme données non fiables.
Écriture non dĂ©sirĂ©eRead-only par dĂ©faut.
Secrets dans configGestionnaire de secrets.
Outil trop puissantScopes minimaux.
Audit absentLogs et revue périodique.
Terminal agentique
Le terminal comme surface agentique

Windsurf intĂšgre le terminal dans la boucle : gĂ©nĂ©ration de commandes naturelles, sĂ©lection d’erreurs envoyĂ©e Ă  Cascade, discussion autour des terminaux actifs et exĂ©cution contrĂŽlĂ©e de commandes.

Principe : le terminal est la zone la plus puissante et la plus dangereuse. Il doit ĂȘtre plus gouvernĂ© que l’éditeur.
Auto-exécution : choisir prudemment
NiveauUsageRecommandation
DisabledToutes les commandes demandent validation.Idéal au début.
Allowlist onlySeules les commandes approuvées passent.TrÚs bon pour équipe.
AutoL’agent juge certaines commandes sĂ»res.À rĂ©server aux dĂ©veloppeurs formĂ©s.
TurboAuto-exécution plus agressive.Jamais sur projets sensibles sans politique.
Listes recommandées
Allowlist prudente
git status
python manage.py check
python manage.py test app.tests.test_unit
pytest tests/test_safe.py
npm test -- --runInBand
ruff check .
python -m compileall app
Denylist typique
rm -rf
DROP DATABASE
TRUNCATE
python manage.py flush
docker system prune
kubectl delete
terraform destroy
chmod -R 777
curl | bash
Terminal dédié

Les versions rĂ©centes de Windsurf ont introduit une approche de terminal dĂ©diĂ© pour fiabiliser les commandes agentiques, notamment lorsque les prompts shell personnalisĂ©s perturbent l’automatisation. Cette idĂ©e est importante : l’environnement d’exĂ©cution agentique doit ĂȘtre prĂ©visible.

Terminal policy:
- deterministic shell
- known working directory
- safe environment variables
- no production credentials
- clear approval rules
- logs available for review
Checkpoints, linter & qualité
Checkpoints ne remplacent pas Git

Les checkpoints sont utiles pour revenir sur une action de Cascade, mais la vraie sécurité reste Git : branche dédiée, commits petits, diff review, tests et PR.

Before risky edit -> git status -> checkpoint -> small patch -> test -> diff review -> commit or rollback
Corriger linter intelligemment

Windsurf peut corriger des erreurs de linter, mais il faut distinguer correction syntaxique et correction de design.

ErreurAuto-fix possibleAttention
Import inutiliséOuiVérifier effet secondaire.
FormatageOuiNe pas reformater tout le repo.
Type mismatchParfoisComprendre contrat métier.
Security warningNon aveugleReview senior.
Migration conflictNon aveugleAnalyse DB.
Tests et vérification
Verification ladder:
1. static check
2. targeted unit test
3. related integration test
4. migration dry run
5. full suite if needed
6. manual smoke test
7. PR review

Le bon test est celui qui prouve que le bug est corrigé sans masquer une régression.

Diff review obligatoire
  • VĂ©rifier les fichiers modifiĂ©s.
  • Refuser les changements de style massifs non demandĂ©s.
  • RepĂ©rer imports, dĂ©pendances, migrations ou settings ajoutĂ©s.
  • Comparer comportement attendu vs rĂ©el.
  • Demander Ă  Cascade une auto-review, mais faire sa propre review.
Review prompt:
Review the current diff as a strict maintainer.
List unrelated changes, behavior changes, missing tests,
security risks, migration risks, and rollback notes.
Previews, App Deploys & UI
Boucle visuelle rapide

Les previews dans l’IDE rapprochent le dĂ©veloppeur du rĂ©sultat final. Elles sont trĂšs utiles pour HTML, CSS, React, Django templates, formulaires, dashboards et pages marketing.

Open preview -> reproduce visual issue -> select or describe element -> ask Cascade for targeted fix -> refresh preview -> inspect diff -> run frontend checks
Prompts UI propres
Prompt:
Fix the selected UI issue only.
Do not redesign the page.
Keep the existing layout, CSS variables, modal system,
and responsive behavior. Explain the exact CSS selectors changed.
TrĂšs utile pour IDEO-Lab : conserver les patterns kcard, ig-modal, tabs, copy/print/close, contraste, hover et responsive.
Déploiement contrÎlé

Un bouton de dĂ©ploiement n’autorise pas une absence de procĂ©dure. L’agent peut aider Ă  prĂ©parer, mais le dĂ©ploiement doit respecter branche, CI, review, rollback et environnement.

ÉtapeResponsableContrîle
BuildCI ou localLogs conservés.
TestsAutomatiséObligatoire.
SecretsHumain / plateformeJamais dans prompt.
DeployPipelineApproval si prod.
RollbackRunbookTesté.
PiĂšges frontend
  • Corriger le visuel en cassant l’accessibilitĂ©.
  • CrĂ©er du CSS global qui fuit sur d’autres pages.
  • Changer des classes utilisĂ©es par JavaScript.
  • Supprimer des attributs data-* nĂ©cessaires aux modals.
  • Modifier une structure Django template sans vĂ©rifier les blocks.
Devin, Spaces & Agent Command Center
Déléguer sans disparaßtre

Les fonctionnalités récentes autour de Devin dans Windsurf introduisent une distinction importante : Cascade accompagne le développeur localement ; un agent cloud peut prendre en charge une tùche plus longue dans son propre environnement, avec suivi dans un centre de commande.

RÚgle : une tùche longue déléguée à un agent cloud doit finir en PR reviewable, jamais en merge automatique non contrÎlé.
Agent Command Center

Un tableau de pilotage agentique permet de suivre plusieurs sessions : tùches locales Cascade, agents cloud, états, PRs, fichiers et contexte partagé.

ÉlĂ©mentUsageRisque
Local Cascade sessionTravail interactif court.Conversation trop longue.
Cloud agentTĂąche autonome plus longue.Diff trop large.
PRValidation formelle.Review superficielle.
Task boardVision d’ensemble.Trop de tñches parallùles.
Spaces : contexte de tĂąche

Les Spaces servent à regrouper sessions, PRs, fichiers et contexte autour d’une tñche. C’est trùs utile pour ne pas perdre le fil quand plusieurs agents ou conversations sont actifs.

Space structure:
- task objective
- source issue
- relevant files
- active agent sessions
- pull requests
- decision log
- test status
- open risks
Quoi déléguer à Devin / agent cloud ?
Bonne tĂącheMauvaise tĂąche
Ajouter tests sur module bien bornĂ©.Refaire toute l’architecture.
Corriger bug reproductible.Modifier modÚle métier critique sans spec.
Mettre Ă  jour documentation.Manipuler secrets ou prod.
Préparer PR de migration simple.Exécuter migration prod.
Nettoyer dette mécanique.Changer sécurité/auth sans review.
Méthode Patch contrÎlé
La méthode qui évite le chaos

La méthode Patch contrÎlé consiste à refuser les gros changements indistincts. Chaque intervention doit avoir un diagnostic, un périmÚtre, un patch court, un test, une revue et un rollback.

Diagnosis -> plan -> patch 1 -> test -> diff review -> patch 2 -> test -> documentation -> commit
Prompt standard de patch
Task:
Implement the smallest safe patch for this issue.

Constraints:
- do not rewrite unrelated code
- do not change public APIs unless requested
- do not modify database schema unless requested
- preserve existing style
- add or update one targeted test

Output:
- files changed
- behavior change
- tests to run
- risks
- rollback notes
Quand arrĂȘter Cascade
SignalAction
Il modifie trop de fichiers.Stop, réduire scope.
Il change architecture sans demande.Rollback, demander plan.
Il ajoute dépendance inutile.Refuser, demander alternative standard library.
Il casse tests existants.Analyser cause, ne pas masquer test.
Il invente une API.Revenir aux docs projet.
Rendre le patch observable
  • Logs prĂ©cis mais non bavards.
  • Compteurs si cron ou batch.
  • Messages d’erreur exploitables.
  • Tests ciblĂ©s avec noms explicites.
  • RĂ©sumĂ© final des fichiers et risques.
Patch report:
Status: success or failed
Files changed:
Tests run:
Behavior changed:
Risks:
Rollback:
Next patch:
Windsurf pour Django/Python
Windsurf dans un projet Django sérieux

Sur Django, l’agent doit respecter les frontiùres : models, migrations, services, views, admin, templates, management commands, tests. Le plus gros risque est de laisser l’agent toucher trop de couches à la fois.

RĂšgle : une modification Django doit annoncer explicitement quelles couches elle touche et lesquelles elle ne touche pas.
Migrations : zone rouge
Attention : ne jamais laisser un agent générer ou modifier des migrations critiques sans analyse du delta modÚle, moteur SQL, index, contraintes et stratégie rollback.
Migration prompt:
Analyze the model delta first.
Do not create a migration yet.
List tables, columns, indexes, constraints,
data migration needs, lock risks, and rollback strategy.
Then propose the smallest migration plan.
CasAction
Ajout champ nullableRisque faible, test migration.
Index sur texte longRefuser ou analyser moteur SQL.
Rename champAttention données et compat.
Data migrationBatch, idempotence, reprise.
Suppression colonnePlan en plusieurs releases.
Crons / management commands

Windsurf est trÚs utile pour générer des commandes Django robustes : options, dry-run, verbose, debug, counters, export, summary et logs.

Command requirements:
- --dry-run
- --limit
- --verbose
- --debug
- structured counters
- clear progress output
- exception summary
- idempotent behavior
- safe transaction boundaries
Django admin et templates IDEO-Lab

Pour tes guides et dashboards, l’agent doit prĂ©server l’architecture : blocks Django, CSS local, classes kcard/ig-modal, data-open/data-close, boutons Copy/Print, responsive.

Template prompt:
Keep the existing Django template architecture.
Do not rename blocks.
Do not break data-open or data-close attributes.
Do not remove modal JavaScript.
Use local CSS scoped to this page.
Tests recommandés
ChangementTest minimal
Service métierUnit test direct.
ViewClient test status/template/context.
AdminPermission and changelist test.
Croncall_command with dry-run.
MigrationMigration test or DB smoke test.
Template JSManual smoke plus static check.
Sécurité & gouvernance
Secrets : interdiction absolue
  • Ne jamais coller API keys, mots de passe, tokens, clĂ©s privĂ©es.
  • Ne jamais demander Ă  Cascade de modifier un .env rĂ©el.
  • Utiliser .env.example pour documenter.
  • Masquer logs contenant credentials.
  • PrĂ©fĂ©rer des donnĂ©es synthĂ©tiques pour reproduire un bug.
Rappel : un agent plus puissant augmente la valeur d’une fuite de contexte.
Politique de commandes
FamillePolitiqueExemples
LectureAutorisergit status, ls, grep.
TestsAutoriser ciblépytest file, manage.py check.
DépendancesApprovalpip install, npm install.
DB localeApproval strictmigrate, loaddata.
ProductionInterdit par défautssh prod, kubectl prod.
DestructifInterditrm -rf, drop, destroy.
Gouvernance MCP
  • Scopes minimaux.
  • Read-only par dĂ©faut.
  • Liste des MCP approuvĂ©s.
  • Logs d’accĂšs.
  • Rotation des credentials.
  • ContrĂŽle par environnement.
  • Revue mensuelle.
MCP approval record:
Name:
Owner:
Purpose:
Permissions:
Data accessed:
Risks:
Review date:
Rollback:
Déploiement équipe
NiveauMesure
IndividuelFormation prompt, diff, sécurité.
ÉquipeRules partagĂ©es, AGENTS.md, PR policy.
OrganisationAllowed tools, audit, modÚle de coûts.
SécuritéReview MCP, secrets scanning, SAST/SCA.
QualitéCI obligatoire, métriques de régression.
Métriques utiles
PR
Taille diff
Plus le diff est grand, plus le risque review augmente.
CI
Taux d’échec
Détecte prompts trop agressifs.
Bugs
Post-merge
Mesure qualité réelle, pas vitesse apparente.
Cost
Usage IA
ModĂšles, agents cloud, MCP, tĂąches longues.
Comparaison & adoption
Deux philosophies proches, accents différents
AxeWindsurfCursor
PositionnementFlow state, Cascade, IDE agentique intégré.IDE agentique trÚs orienté Agent/Plan/Rules.
Surface centraleCascade + Tab + terminal + previews.Agent, Chat, Tab, Composer selon version.
ContexteAwareness, Memories, Rules, AGENTS.md.Rules, indexing, context, agents.
TerminalAuto-exec niveaux, allow/deny, dedicated terminal.Agent terminal selon configuration.
Cloud agentDevin intĂ©grĂ© dans l’expĂ©rience rĂ©cente.Cloud agents / background agents selon offre.
Windsurf vs GitHub Copilot

Copilot est trĂšs fort dans l’écosystĂšme GitHub, PR, IDEs et assistant gĂ©nĂ©raliste. Windsurf est davantage pensĂ© comme un IDE complet centrĂ© sur une expĂ©rience agentique intĂ©grĂ©e.

  • Copilot : adoption entreprise GitHub, PR, code review, intĂ©gration large.
  • Windsurf : Ă©diteur dĂ©diĂ©, Cascade, flow local, previews, terminal intĂ©grĂ©.
  • Le choix dĂ©pend de l’écosystĂšme : GitHub-first ou IDE agentique dĂ©diĂ©.
IDE vs terminal / cloud agents
OutilForceUsage idéal
WindsurfIDE agentique intégré.Développement quotidien interactif.
Claude CodeTerminal agentique, repo-level workflows.DĂ©veloppeurs Ă  l’aise CLI.
CodexAgents cloud, tùches parallÚles, PR.Délégation multi-tùches.
CopilotGitHub integration.Équipes GitHub/PR/enterprise.
Comment choisir
Choose Windsurf when:
- you want an AI-native IDE
- you value integrated flow
- you need strong local interaction
- you want Cascade as main assistant
- previews and terminal integration matter

Avoid switching blindly when:
- team tooling is already standardized
- security policy is not ready
- tests are weak
- repo is not clean
- developers will accept changes without review
Playbook quotidien Windsurf
Routine professionnelle
Daily routine:
1. Pull latest changes
2. Create a task branch
3. Read ticket and acceptance criteria
4. Ask Cascade for analysis only
5. Define the smallest patch
6. Apply one controlled edit
7. Run targeted checks
8. Review the diff manually
9. Commit with clear message
10. Update notes or rules if needed
Bugfix
Bug report -> reproduce -> capture exact error -> send stack trace to Cascade -> diagnosis only -> minimal regression test -> targeted fix -> run test -> diff review -> commit
Feature
ÉtapeRîle WindsurfRîle humain
SpecClarifie critÚres.Décide scope.
PlanPropose fichiers et étapes.Valide architecture.
ImplémentationPatchs successifs.Review chaque diff.
TestsGĂ©nĂšre et lance ciblĂ©.Évalue pertinence.
PRRésumé et risques.Responsable merge.
Refactor
Protocole : tests de caractĂ©risation avant refactor si le comportement n’est pas explicitement couvert.
Refactor protocol:
- map current behavior
- add characterization tests
- refactor one unit
- run tests
- inspect diff
- commit
- repeat
Résumé de fin
End of session:
- objective completed
- files changed
- tests run
- decisions made
- risks remaining
- rollback path
- rules to update
- next step

Une bonne session Windsurf se termine par un Ă©tat transmissible. C’est essentiel si l’on veut industrialiser l’usage agentique en Ă©quipe.

Sources & veille Windsurf
Pages officielles Ă  suivre
  • Windsurf Docs - Getting Started : https://docs.windsurf.com/windsurf/getting-started
  • Cascade Overview : https://docs.windsurf.com/windsurf/cascade/cascade
  • Memories & Rules : https://docs.windsurf.com/windsurf/cascade/memories
  • MCP : https://docs.windsurf.com/windsurf/cascade/mcp
  • Terminal : https://docs.windsurf.com/windsurf/terminal
  • Windsurf Editor : https://windsurf.com/editor
  • Rules, Memories & Workflows University : https://windsurf.com/university/general-education/intro-rules-memories
  • Changelog : https://windsurf.com/changelog
Fonctions Ă  surveiller
SujetPourquoi
CascadeLe moteur principal d’interaction agentique.
Rules / Memories / AGENTS.mdBase de la gouvernance projet.
MCPConnexion aux outils et risques de permission.
TerminalZone critique pour auto-exécution et sécurité.
Devin / SpacesDélégation agentique cloud et gestion multi-tùches.
Context windowQualité des longues sessions.
Checklist de veille
Monthly Windsurf watch:
- read latest changelog
- review Cascade changes
- review terminal auto-execution policy
- review MCP permissions
- update workspace rules
- clean wrong memories
- update AGENTS.md
- review cloud agent usage
- review security incidents
- train team on new features
Résumé doctrine IDEO-Lab
Windsurf professionnel = Cascade puissant + contexte propre + rules versionnées + terminal gouverné + patchs courts + tests + diff review + Git + PR + sécurité.

Le vrai niveau senior n’est pas de produire du code plus vite. C’est de produire des changements plus vite sans dĂ©grader la maintenabilitĂ©, la sĂ©curitĂ©, ni la capacitĂ© de rollback.