đ§ Cursor â Guide complet pour le dĂ©veloppement agentique
Guide IDEO-Lab consacrĂ© Ă Cursor : Ă©diteur IA, Agent, Plan Mode, Rules, MCP, Skills, Subagents, CLI, Cloud Agents, Bugbot, Security Review, gouvernance dâĂ©quipe et mĂ©thode de travail sĂ©rieuse pour dĂ©veloppeur Django/Python senior.
Positionnement de Cursor
Comprendre Cursor : Ă©diteur IA, agent de code, assistant de refactoring, outil dâĂ©quipe.
IDE IAAgentic DevVS CodeInstallation & configuration
Premiers réglages, projet existant, indexation, modÚles, confidentialité, raccourcis.
SetupIndexModelsTab, Chat & Inline Edit
Les trois gestes quotidiens : compléter, discuter avec le repo, modifier localement.
TabChatEditAgent Mode
Comment faire travailler lâagent sans perdre le contrĂŽle : fichiers, terminal, patchs, validation.
AgentToolsDiffsPlan Mode
Transformer une demande vague en plan auditable avant toute écriture de code.
PlanReviewArchitectureRules & AGENTS.md
RÚgles persistantes : conventions, interdits, doctrine projet, sécurité, Django style.
RulesAGENTS.mdDoctrineContext Engineering
Le vrai nerf de la guerre : choisir le bon contexte, éviter la noyade, piloter les références.
ContextRepoFocusMCP, Skills, Hooks
Ătendre Cursor avec outils externes, compĂ©tences packagĂ©es, hooks et automatisations contrĂŽlĂ©es.
MCPSkillsHooksCLI & Cloud Agents
Faire agir Cursor hors de lâĂ©diteur : terminal, agents cloud, tĂąches longues, branches isolĂ©es.
CLICloudAgentsBugbot & Code Review
Revue automatique de PR, rÚgles de bug, commentaires, correctifs et boucle qualité.
BugbotPRReviewCursor pour Django/Python
Workflow sérieux pour models, migrations, management commands, tests, admin, templates.
DjangoPythonMigrationsPrompts opérationnels
BibliothÚque de prompts : diagnostic, patch ciblé, review, rollback, tests, refactor.
PromptsPatchRunbookSécurité & gouvernance
Secrets, données privées, auto-run, tool approvals, équipes, coûts, modÚles, audit.
SecurityTeamsAuditIndustrialisation
Déployer Cursor dans une équipe sans chaos : standards, métriques, formation, CI, PR.
EnterpriseCIMetricsPlaybook quotidien
Une mĂ©thode concrĂšte pour travailler tous les jours avec Cursor, sans âaccept allâ.
DailySeniorQualitySources & veille
Documentation officielle, changelog, fonctionnalités récentes, points à vérifier avant déploiement.
DocsChangelog2026Cursor en une phrase
Cursor est un Ă©diteur de code orientĂ© IA qui transforme lâIDE en atelier de dĂ©veloppement agentique : il peut comprendre un dĂ©pĂŽt, rĂ©pondre sur le code, proposer des modifications multi-fichiers, utiliser un terminal, prĂ©parer des plans, appliquer des patchs et aider Ă revoir des PR.
La rupture nâest pas seulement la complĂ©tion. La rupture est la combinaison entre contexte du dĂ©pĂŽt, actions dans lâĂ©diteur, rĂšgles persistantes, outils externes et boucle de validation.
ModĂšle mental
Developer intent
|
v
Cursor context layer
|- indexed repository
|- opened files
|- selected code
|- rules and AGENTS.md
|- docs and MCP tools
v
Agent reasoning and planning
|
v
Controlled actions
|- edit files
|- run commands
|- inspect errors
|- produce diffs
v
Developer review
|- tests
|- code review
|- commit
|- PRAvant Cursor / avec Cursor
| Activité | Avant | Avec Cursor bien utilisé | Risque si mal utilisé |
|---|---|---|---|
| Comprendre un module | Lire fichiers, grep, debugger. | Demander une carte du module puis vérifier dans le code. | Croire une synthÚse non vérifiée. |
| Corriger un bug | Reproduire, inspecter, patcher. | Demander diagnostic, hypothĂšses, patch minimal, tests. | Accepter une correction opportuniste. |
| Refactorer | Long travail manuel. | Découper en micro-patchs avec tests à chaque étape. | Gros rewrite incontrÎlable. |
| Ăcrire tests | Souvent repoussĂ©. | GĂ©nĂ©rer cas nominaux, limites, rĂ©gression. | Tests artificiels qui confirment le bug. |
| Review | Diff lu par humains. | PrĂ©-review IA + review humaine finale. | Externaliser la responsabilitĂ© Ă lâIA. |
Cursor vs autres approches
| Approche | Ce que ça fait | Quand lâutiliser | Limite |
|---|---|---|---|
| Autocomplete classique | ComplĂšte quelques lignes. | Code rĂ©pĂ©titif, syntaxe, boilerplate. | Ne comprend pas lâarchitecture globale. |
| Chat externe | Explique, génÚre, propose. | Conception, comparaison, réflexion. | Pas directement branché au repo. |
| Cursor Tab | Complétion sensible au contexte. | Flux rapide dans un fichier. | Peut encourager le pilotage automatique. |
| Cursor Agent | Modifie plusieurs fichiers et lance des commandes. | Bugfix, refactor, feature cadrée. | Nécessite rÚgles et revue stricte. |
| Cloud Agent | Travaille hors session locale. | Tùches isolées, PR, exploration. | Encore plus besoin de sandbox et review. |
Cas dâusage trĂšs rentables
Bug reproduisible
Demander Ă Cursor dâidentifier le flux, proposer 2 ou 3 hypothĂšses, Ă©crire un test de rĂ©gression, puis patcher.
Refactor contrÎlé
Extraire une fonction, renommer une API, déplacer un service, mais uniquement par petits diffs.
Documentation vivante
Faire produire un README, un diagramme de flux, un runbook, une checklist dâexploitation.
Tests manquants
GĂ©nĂ©rer des tests unitaires, tests dâintĂ©gration, fixtures, tests de non-rĂ©gression.
Analyse de dette
Repérer duplication, fonctions trop longues, responsabilités mélangées, exceptions silencieuses.
Pré-review
Demander une critique du diff avant commit : sécurité, performance, compatibilité, migration.
Ce que Cursor ne doit pas décider seul
| Domaine | Pourquoi | RĂšgle de conduite |
|---|---|---|
| Architecture | Un mauvais découpage coûte cher pendant des années. | Cursor propose, le senior décide. |
| Migrations DB | Risque de perte de données, locks, indexes dangereux. | Plan SQL, backup, rollback, environnement de test. |
| Sécurité | Secrets, permissions, auth, injections. | Review manuelle obligatoire. |
| Production | Déploiement, migrations, jobs, cache, workers. | Runbook et commandes contrÎlées. |
| Licensing/IP | Code tiers, snippets, dépendances. | Vérifier provenance et licences. |
Checklist dâinstallation
| Ătape | Objectif | ContrĂŽle |
|---|---|---|
| Installer Cursor | Disposer de lâĂ©diteur local. | Ouvrir un projet simple et vĂ©rifier terminal intĂ©grĂ©. |
| Connexion compte | Activer modĂšles, quotas, synchronisation Ă©ventuelle. | VĂ©rifier plan, limites et paramĂštres dâĂ©quipe. |
| Importer extensions | Retrouver lâenvironnement VS Code. | Python, Django, GitLens, Docker, YAML, SQL. |
| Configurer shell | Terminal cohérent avec le projet. | PowerShell, Bash, WSL ou terminal systÚme. |
| Ouvrir repo | Donner le contexte au moteur. | Pas ouvrir un dossier parent contenant trop de projets. |
Préparer un projet existant
- Nettoyer les fichiers temporaires, caches, dumps, gros logs.
- VĂ©rifier que le repo possĂšde un README ou une note dâarchitecture.
- Identifier les commandes de test, lint, migration, démarrage local.
- Ajouter un fichier de rĂšgles projet avant de laisser lâagent agir.
- Créer une branche dédiée avant tout travail agentique.
Repository preparation: - README.md - AGENTS.md - .cursor/rules/ - scripts/check.sh - scripts/test.sh - docs/architecture.md - docs/runbook.md - .env.example - tests/
Structure minimale recommandée
project-root/
app/
config/
tests/
docs/
architecture.md
runbook.md
scripts/
test.sh
lint.sh
check_migrations.sh
.cursor/
rules/
project.mdc
django.mdc
security.mdc
AGENTS.mdIndexation et contexte
Cursor fonctionne mieux quand le codebase est indexĂ© proprement. Lâindexation permet au chat et Ă lâagent de retrouver des symboles, chemins, usages et fichiers pertinents.
| Bon réflexe | Pourquoi | Exemple |
|---|---|---|
| Exclure le bruit | Limiter les faux contextes. | node_modules, venv, dist, build, media, logs. |
| Documenter les commandes | Lâagent peut lancer les bons tests. | scripts/test.sh, Makefile, README. |
| Nommer clairement | La recherche sémantique est meilleure. | services/translation_engine.py plutÎt que misc.py. |
| Segmenter le repo | Ăviter les tĂąches trop vastes. | Demander un patch dans une app Django prĂ©cise. |
Choix des modĂšles
Cursor permet de choisir des modĂšles diffĂ©rents selon les tĂąches. La logique saine nâest pas âtoujours le plus puissantâ, mais âle modĂšle adaptĂ© au risqueâ.
| Tùche | ModÚle conseillé | Pourquoi | ContrÎle |
|---|---|---|---|
| Complétion rapide | ModÚle rapide | Latence basse, fluidité. | Relire le bloc généré. |
| Bug complexe | ModĂšle raisonneur fort | Analyse multi-fichiers. | Exiger hypothĂšses et test. |
| Refactor | Agent + modÚle fiable | Modifications coordonnées. | Patchs courts, diff review. |
| Documentation | ModÚle rédactionnel | SynthÚse et clarté. | Vérifier exactitude technique. |
| Sécurité | ModÚle fort + outils | Risque élevé. | Review humaine obligatoire. |
ConfidentialitĂ© et politiques dâĂ©quipe
Avant un usage professionnel, il faut clarifier : code privé, secrets, données clients, logs, prompts, modÚles autorisés, stockage de contexte, outils externes et accÚs MCP.
Solo / prototype
RĂšgles simples, pas de secrets, branches locales, validation manuelle.
Startup
Rules partagées, modÚles autorisés, budget, PR review, CI obligatoire.
Entreprise
SSO, allow/blocklist modÚles, audit, politique données, Security Review, contrÎle MCP.
Security baseline: - never paste secrets - never expose customer data in prompts - use .env.example instead of .env - mask tokens in logs - require review for auth and permissions - require tests for data migrations - require explicit approval for destructive commands
Cursor Tab : accélérateur de frappe
Tab est le geste le plus fréquent. Il anticipe la suite du code, propose des modifications proches et peut aider à compléter des patterns répétitifs.
| Bon usage | Exemple | ContrĂŽle |
|---|---|---|
| Boilerplate contrÎlé | Serializer, form, mapping simple. | Relire noms, types, imports. |
| Continuation de pattern | Ajouter 5 champs similaires. | Vérifier exceptions et cas limite. |
| Tests rĂ©pĂ©titifs | Cas paramĂ©trĂ©s. | Ăviter tests tautologiques. |
| Templates HTML | Cards, badges, colonnes. | Tester rendu et événements JS. |
Chat : questionner le dépÎt
Le Chat sert Ă comprendre, diagnostiquer, comparer, demander une stratĂ©gie. Il est idĂ©al avant lâAgent, car il permet dâĂ©viter de modifier trop vite.
Good chat prompts: 1. Explain how this module works. Do not edit files. 2. Find the likely source of this error. Give hypotheses only. 3. Map all files involved in this workflow. 4. Propose a minimal patch plan. No code yet. 5. Review this diff for bugs, security risks, and migration risks.
Quand utiliser Chat
- Comprendre un flux.
- Demander une explication dâerreur.
- Comparer deux architectures.
- Préparer un plan.
Quand éviter Chat seul
- Modification multi-fichiers.
- Refactor avec imports.
- Ăcriture de tests Ă appliquer.
- Correction nécessitant terminal.
Inline Edit : chirurgie locale
Inline Edit est utile pour transformer une sélection précise : simplifier, renommer, sécuriser, ajouter logs, rendre une fonction plus robuste.
| Sélection | Instruction | Résultat attendu |
|---|---|---|
| Fonction | Make this function easier to test without changing behavior. | Refactor local. |
| Bloc try/except | Improve error handling and keep the same public API. | Exceptions plus propres. |
| RequĂȘte ORM | Optimize this query and avoid N+1 access. | select_related/prefetch_related ciblĂ©. |
| Template | Improve accessibility and keep the current CSS classes. | Labels, aria, structure. |
Choisir le bon geste
| Besoin | Outil Cursor | Pourquoi |
|---|---|---|
| Compléter une ligne | Tab | Rapide, faible risque. |
| Comprendre avant dâagir | Chat | Analyse sans modification. |
| Modifier une petite zone | Inline Edit | Précis, diff limité. |
| Modifier plusieurs fichiers | Agent | Coordination et terminal. |
| Demande ambiguë | Plan Mode | Clarification avant code. |
Ce que fait lâagent
Lâagent est conçu pour les tĂąches autonomes de codage : inspecter le dĂ©pĂŽt, choisir les fichiers, modifier du code, lancer des commandes, lire les erreurs et itĂ©rer. Câest puissant, mais cela impose un pilotage strict.
- Lire et rechercher dans le codebase.
- Ăditer plusieurs fichiers.
- Proposer ou appliquer des diffs.
- Utiliser le terminal selon permissions.
- Analyser les résultats de tests.
Contrat avec lâagent
Agent contract: - no broad rewrites - no hidden behavior changes - no dependency changes without approval - no migrations without plan - no destructive command - one patch at a time - tests after each patch - explain every file changed
Workflow agentique sérieux
| Ătape | Prompt | Sortie attendue |
|---|---|---|
| Diagnostic | Analyze only. Do not edit. | HypothÚses, fichiers impliqués. |
| Plan | Propose a minimal patch plan. | Liste de fichiers, risques, tests. |
| Patch | Implement step 1 only. | Diff limité. |
| Test | Run the smallest relevant tests. | Résultat, erreurs, correction. |
| Review | Review your own diff critically. | Risques restants. |
ContrĂŽler les outils
Le vrai danger nâest pas que lâagent Ă©crive du code ; le vrai danger est quâil lance des commandes ou modifie des fichiers au mauvais pĂ©rimĂštre.
Autoriser
Tests ciblés, lint, grep, lecture fichiers, commandes non destructives.
Demander validation
Install dépendance, migration, formatage massif, modification settings.
Interdire
Suppression données, reset DB, push direct, rotation secrets, commandes production.
Safe commands: python manage.py test app.tests.test_feature python manage.py check python manage.py makemigrations --check --dry-run python -m pytest tests/test_feature.py ruff check app/ Commands requiring approval: pip install package python manage.py migrate python manage.py flush git push
Gestion des erreurs
| SymptÎme | Cause probable | Réponse |
|---|---|---|
| Patch trop large | Prompt vague. | Stopper, demander split en étapes. |
| Imports cassĂ©s | Agent nâa pas lancĂ© tests. | Exiger test ciblĂ© + check. |
| Changement dâAPI | Agent a simplifiĂ© trop fort. | Rappeler compatibilitĂ© publique. |
| Migration risquée | ModÚle modifié sans plan DB. | Rollback, demander plan migration. |
| Faux diagnostic | Contexte insuffisant. | Ajouter trace, stack, fichiers précis. |
Checklist avant dâaccepter un diff agentique
- Le diff est-il limité à la demande ?
- Chaque fichier changé est-il justifié ?
- Les tests pertinents ont-ils été lancés ?
- Les erreurs existantes sont-elles distinguées des nouvelles ?
- Pas de changement de dépendance non demandé ?
- Pas de secret, token, chemin local, donnée client ?
- Pas de migration dangereuse ou index long ?
- Le rollback est-il simple ?
Pourquoi Plan Mode est essentiel
Plan Mode sert Ă transformer une demande large en plan dâimplĂ©mentation avant modification du code. Il est particuliĂšrement utile pour les tĂąches multi-fichiers, les migrations, les refactors, la sĂ©curitĂ© et les tickets ambigus.
Plan first prompt: Use Plan Mode. Do not edit files yet. Analyze the codebase and produce: 1. affected files 2. current behavior 3. proposed behavior 4. implementation steps 5. tests to run 6. risks and rollback plan Ask questions if something is ambiguous.
Plan dâimplĂ©mentation idĂ©al
| Section | Contenu attendu | CritÚre de qualité |
|---|---|---|
| Contexte | RĂ©sumĂ© de lâexistant. | BasĂ© sur fichiers rĂ©els. |
| Portée | Ce qui sera changé / non changé. | Limites explicites. |
| Ătapes | Patch 1, Patch 2, Patch 3. | Chaque patch testable. |
| Tests | Commandes exactes. | Tests ciblés et globaux. |
| Risques | DB, perf, auth, compatibilité. | Pas de généralités. |
| Rollback | Retour arriÚre. | Simple et vérifiable. |
Questions que Cursor doit poser
- Quelle version de compatibilitĂ© doit ĂȘtre conservĂ©e ?
- Peut-on modifier le schéma de base de données ?
- Quels tests sont fiables dans ce projet ?
- La fonctionnalité doit-elle rester compatible avec une API existante ?
- Faut-il préserver une convention interne non documentée ?
- Y a-t-il des contraintes de performance ou de sécurité ?
Valider ou refuser un plan
Plan acceptable
- Fichiers réels identifiés.
- Ătapes courtes.
- Tests précis.
- Risques concrets.
- Rollback clair.
Plan Ă refuser
- âRefactor globalâ vague.
- Ajout de dépendance inutile.
- Suppression de compatibilité.
- Pas de tests.
- Pas dâanalyse migration.
Approval prompt: The plan is mostly correct. Implement only step 1. Do not modify public APIs. Do not add dependencies. After editing, show the diff summary and run the targeted test command.
Ă quoi servent les Rules ?
Les Rules sont des instructions persistantes. Elles permettent dâencoder les conventions projet, les interdits, le style dâarchitecture, les commandes, les rĂšgles de sĂ©curitĂ© et les attentes de qualitĂ©.
| Niveau | Usage | Exemple |
|---|---|---|
| User Rules | Préférences personnelles. | Always produce small patches. |
| Project Rules | Doctrine du dépÎt. | Use service layer for business logic. |
| Team Rules | Standards partagés. | All auth changes require tests. |
| AGENTS.md | Instructions lisibles par agents. | Commands, architecture, forbidden actions. |
Exemple de rĂšgles projet
Project rules: - Produce small, reviewable patches. - Never rewrite a full file unless explicitly requested. - Before editing, identify the files you need to change. - Do not add dependencies without approval. - Do not run destructive commands. - Prefer explicit error handling over silent failures. - Keep public APIs backward compatible unless approved. - Add or update tests for behavior changes. - Explain database migration risks before creating migrations.
AGENTS.md minimal
# Agent instructions ## Commands - Run tests: python manage.py test - Check project: python manage.py check - Check migrations: python manage.py makemigrations --check --dry-run ## Architecture - Business logic belongs in services. - Views should stay thin. - Management commands must support --verbosity. ## Safety - Never modify .env files. - Never run production commands. - Ask before adding dependencies. - Ask before creating migrations.
Rules spécialisées Django/Python
Django rules: - Do not create indexes on very long text-like fields. - Use application-level deduplication when requested. - Avoid large model rewrites. - For migrations, explain database impact first. - Management commands must be observable and testable. - Prefer select_related and prefetch_related for ORM performance. - Never hide exceptions with a broad except block. - Keep template JavaScript isolated and deterministic. - Do not put secrets in settings or templates. - Use English identifiers and comments in code.
Anti-rĂšgles : trop vague, trop long, contradictoire
| Mauvaise rĂšgle | ProblĂšme | Meilleure rĂšgle |
|---|---|---|
| Write good code. | Impossible à vérifier. | Keep functions under 80 lines unless justified. |
| Always refactor. | Encourage les changements inutiles. | Refactor only code touched by the task. |
| Make it modern. | Subjectif. | Use existing project patterns unless approved. |
| Never use SQL. | Trop absolu. | Prefer ORM; raw SQL requires explanation and tests. |
Le contexte vaut plus que le prompt
Dans Cursor, la qualité dépend autant du contexte fourni que du modÚle. Un prompt moyen avec les bons fichiers, logs et rÚgles peut battre un excellent prompt sans contexte.
Donner le bon contexte
| Contexte | Pourquoi | Exemple |
|---|---|---|
| Stack trace complĂšte | Ăvite les hypothĂšses. | Erreur Django, ligne, exception. |
| Fichiers ouverts | Guide le modĂšle. | models.py, services.py, tests.py. |
| Commande échouée | Permet reproduction. | python manage.py test app.tests.X. |
| Contraintes | EmpĂȘche patch hors cadre. | No DB index on long fields. |
| Exemple attendu | Clarifie le résultat. | Format JSON, sortie console, UI. |
Ăviter la noyade contextuelle
Plus de contexte nâest pas toujours mieux. Trop de fichiers, de logs ou dâanciennes versions peut polluer la rĂ©ponse.
Logs massifs
Donner 30 lignes autour de lâerreur, pas 50 000 lignes.
Fichiers obsolĂštes
Supprimer ou nommer clairement les anciennes versions.
Demande multiple
Séparer diagnostic, patch, tests, documentation.
Bad prompt: Fix everything in this app. Good prompt: Analyze this failing test only. Do not edit files. Explain why it fails and propose one minimal patch.
Méthode MCE appliquée à Cursor
| Phase | Action | Livrable |
|---|---|---|
| Mission | DĂ©finir lâobjectif exact. | Ticket court. |
| Context | Fichiers, erreur, rĂšgles, contraintes. | Prompt riche. |
| Execution | Patch court par lâagent. | Diff limitĂ©. |
| Evidence | Tests, logs, checks. | Preuve objective. |
| Review | Lecture humaine et correction. | Commit propre. |
MCP : connecter Cursor Ă des outils externes
Le Model Context Protocol permet de connecter lâagent Ă des outils et sources de donnĂ©es : documentation interne, systĂšmes de tickets, GitHub, bases de connaissances, scanners, environnements mĂ©tier.
| Serveur MCP | Usage possible | Risque |
|---|---|---|
| GitHub | Lire issues, PR, branches. | Permissions trop larges. |
| Docs internes | Récupérer architecture et runbooks. | Doc obsolÚte prise comme vérité. |
| SAST/SCA | Ajouter résultats sécurité. | Bruit et faux positifs. |
| Jira/Linear | Lire ticket et critÚres. | Données sensibles. |
Skills : packager une compétence
Les Skills servent Ă donner Ă lâagent des capacitĂ©s rĂ©utilisables : scripts, connaissances, conventions, procĂ©dures. Câest utile pour industrialiser les tĂąches frĂ©quentes.
Skill examples: - Django migration risk reviewer - SQL performance checklist - Release notes generator - Security review checklist - Legacy module mapper - Test scaffold generator - Incident runbook writer
Subagents : spécialiser les rÎles
Un subagent peut ĂȘtre spĂ©cialisĂ© pour une tĂąche : reviewer sĂ©curitĂ©, expert tests, cartographe de code, spĂ©cialiste migrations, analyste performance.
Security reviewer
Analyse auth, permissions, secrets, injections, data handling.
Migration reviewer
Analyse schéma, indexes, locks, données, rollback.
Test engineer
Propose tests ciblés et cas limites.
Hooks : automatiser autour de lâagent
Les hooks permettent de déclencher des contrÎles ou comportements autour des actions agentiques. Ils doivent rester simples, observables et non destructifs.
| Hook | But | Exemple |
|---|---|---|
| Before command | Bloquer commandes dangereuses. | Refuser rm -rf, flush, production migrate. |
| After edit | Déclencher lint ciblé. | ruff check modified files. |
| Before commit | Exiger tests. | Check migrations, lint, tests. |
Risques MCP / Skills / Hooks
- Permissions trop larges.
- Données sensibles exposées.
- Outils non déterministes.
- Commandes destructives.
- Prompt injection via documentation ou tickets.
- Coûts imprévus si agents répÚtent des scans.
Cursor dans le terminal
Le CLI permet dâutiliser lâagent depuis le terminal, utile pour les environnements serveur, les workflows de scripts, les tĂąches de diagnostic et les dĂ©veloppeurs qui vivent dans la ligne de commande.
Terminal workflow: 1. create a clean branch 2. start agent with a narrow prompt 3. review proposed changes 4. run tests manually if needed 5. inspect git diff 6. commit only reviewed changes
Cloud Agents
Les agents cloud permettent de lancer des tĂąches dans un environnement distant. Câest intĂ©ressant pour du travail parallĂšle, mais cela exige une isolation stricte et une revue de branche.
| Bon cas | Mauvais cas | RĂšgle |
|---|---|---|
| Ăcrire tests pour un module isolĂ©. | Modifier un schĂ©ma critique sans supervision. | Branche dĂ©diĂ©e obligatoire. |
| Préparer documentation. | Changer auth ou permissions en autonomie. | Review sécurité obligatoire. |
| Proposer refactor non urgent. | Agir sur production. | Aucun secret prod. |
Branches et worktrees
La bonne pratique est de faire travailler les agents dans des branches isolées. Un agent = une tùche = une branche = une PR reviewable.
Branch discipline: feature/cursor-fix-user-export feature/cursor-tests-billing-service refactor/cursor-split-search-parser docs/cursor-runbook-srdf-daemon Never mix: - unrelated refactor - dependency upgrade - bug fix - formatting sweep in the same agent branch.
Cursor SDK
Cursor a introduit un SDK pour construire des agents programmatiques avec le mĂȘme runtime que les agents de lâapp, du CLI et du web. Câest une piste intĂ©ressante pour automatiser des tĂąches internes.
SDK use cases: - repository summarizer - migration risk bot - release note generator - stale code detector - runbook assistant - PR preparation helper - internal quality agent
Bugbot : reviewer IA de PR
Bugbot est orientĂ© revue de code : il commente les PR, repĂšre des bugs potentiels, fournit des correctifs via Cursor ou via agent de fond, et peut ĂȘtre personnalisĂ© avec des rĂšgles.
Workflow PR recommandé
RĂšgles Bugbot utiles
Bugbot review rules: - Flag missing authorization checks. - Flag broad exception swallowing. - Flag database migrations without rollback notes. - Flag N+1 query risks in Django views and serializers. - Flag secrets, tokens, or credentials. - Flag changes that bypass existing service layer. - Flag test changes that reduce coverage. - Flag long indexes on text-like fields.
Limites de la revue IA
- Peut ne pas comprendre un invariant métier non documenté.
- Peut sur-signaler des risques théoriques.
- Peut manquer un bug qui dépend de données réelles.
- Peut ĂȘtre trompĂ© par un diff trop gros.
- Ne remplace pas tests, staging, observabilité.
Cursor sur un gros projet Django
Sur Django, Cursor est trĂšs puissant parce que lâarchitecture est conventionnelle : apps, models, views, urls, templates, management commands, migrations, tests. Mais cette puissance peut gĂ©nĂ©rer de gros dĂ©gĂąts si les migrations et les couches mĂ©tier ne sont pas contrĂŽlĂ©es.
| Zone | Bon usage Cursor | Danger |
|---|---|---|
| Models | Analyse dâimpact, validation champs. | Migration non maĂźtrisĂ©e. |
| Views | Réduire logique, améliorer erreurs. | Casser permissions. |
| Services | Extraire logique métier. | Changer comportement invisible. |
| Admin | Ajouter filtres, list_display. | RequĂȘtes N+1. |
| Templates | Corriger structure et modals. | Casser JS existant. |
Migrations : zone rouge
Migration prompt: Analyze the model change only. Do not create a migration yet. Explain: 1. database operations needed 2. lock risk 3. data migration risk 4. index risk 5. rollback strategy 6. tests and checks to run
| Risque | ContrĂŽle |
|---|---|
| Index sur champ long | Vérifier longueur, type, DB backend. |
| Champ non nullable | Default, backfill, migration en deux temps. |
| Rename détecté comme drop/add | Vérifier opération générée. |
| Data migration lente | Batch, transaction, reprise, logs. |
Management commands : ton terrain naturel
Cursor peut aider à produire des crons sérieux, mais il faut imposer observabilité, options, dry-run, counters, exports et logs.
Management command requirements: - --dry-run - --limit - --verbosity - --debug - --export-json - --export-excel if needed - progress counters - final summary - explicit error report - idempotent behavior when possible
Templates IDEO-Lab
Cursor peut manipuler tes guides HTML, mais il faut lui interdire de casser lâarchitecture modals/cartes/tabs.
Template rules: - Keep the existing kgrid/kcard/ig-modal architecture. - Do not change global base template blocks. - Keep modal ids unique. - Keep data-open and data-close attributes consistent. - Keep JavaScript generic. - Do not duplicate modal handlers. - Keep CSS scoped with the page prefix.
Tests Django Ă demander Ă Cursor
| Type | Demande | ContrĂŽle |
|---|---|---|
| Model tests | Validation champs, méthodes. | Cas limites. |
| Service tests | Entrées/sorties métier. | Mocks raisonnables. |
| View tests | Status codes, permissions. | Auth obligatoire. |
| Command tests | Dry-run, limit, counters. | Sortie vérifiable. |
| Migration tests | Ătat avant/aprĂšs. | CoĂ»t et backend. |
Diagnostic sans modification
Analyze this issue only. Do not edit files. Context: - command that failed: ... - stack trace: ... - expected behavior: ... - actual behavior: ... Return: 1. likely root causes ranked by probability 2. files involved 3. evidence from the code 4. one minimal patch plan 5. tests to run
Patch ciblé
Implement the smallest possible patch for the approved plan. Constraints: - change only the required files - do not add dependencies - do not change public APIs - do not create migrations - keep existing style - after editing, summarize every changed file - run the targeted test command
Review sévÚre
Review this diff as a strict senior engineer. Check: - correctness - security - database impact - performance - backward compatibility - error handling - tests - maintainability Return blocking issues first. Do not rewrite code unless asked.
Génération de tests
Create tests for this behavior. Rules: - cover nominal case - cover edge cases - cover regression case - do not mock the function under test - keep fixtures small - name tests clearly - explain how to run only these tests
Refactor contrÎlé
Refactor this code without changing behavior. Constraints: - preserve public API - preserve database schema - preserve output format - no dependency changes - split into steps if needed - add tests only if behavior is currently untested - show risk analysis before editing
Secrets et données sensibles
- Ne jamais coller de secret dans un prompt.
- Ne jamais laisser Cursor modifier .env.
- Utiliser .env.example pour documenter les variables.
- Masquer tokens dans logs et tickets.
- Ăviter les dumps clients dans le contexte.
Forbidden in prompts: - API keys - database passwords - private keys - customer personal data - production logs with tokens - proprietary contracts - full database dumps
Auto-run et commandes
Lâauto-run peut accĂ©lĂ©rer, mais il doit ĂȘtre limitĂ©. Les commandes de lecture et de test sont acceptables ; les commandes destructives doivent ĂȘtre bloquĂ©es.
| Commande | Statut | Commentaire |
|---|---|---|
| python manage.py check | OK | Non destructif. |
| pytest tests/x.py | OK | Test ciblé. |
| makemigrations --check | OK | ContrÎle sans écriture. |
| pip install | Approval | Change dépendances. |
| migrate | Approval | Impact DB. |
| flush / reset / drop | Forbidden | Destructif. |
Security Review
Cursor propose des agents de revue sĂ©curitĂ© pour les plans Teams et Enterprise : revue de PR et scan de vulnĂ©rabilitĂ©s. Câest une couche utile, mais elle doit complĂ©ter les outils existants.
Security Reviewer
Analyse PR : vulnérabilités, auth, privacy, prompt injection.
Vulnerability Scanner
Scans planifiés : dépendances, config, vulnérabilités connues.
MCP sécurité
Brancher SAST/SCA/secrets scanner existants.
ContrÎle des coûts
Les équipes doivent suivre la consommation par surface : clients, agents cloud, automatisations, Bugbot, Security Review. Les modÚles puissants et les agents longs coûtent plus cher.
| Levier | Effet |
|---|---|
| ModĂšles autorisĂ©s | Ăvite usage incontrĂŽlĂ©. |
| Soft limits | Alerte sans bloquer trop tĂŽt. |
| Analytics par utilisateur | RepÚre abus ou formation nécessaire. |
| Agents cloud limités | ContrÎle tùches longues. |
| Rules efficaces | Réduit itérations inutiles. |
Politique dâentreprise
Enterprise Cursor policy: 1. Define allowed repositories 2. Define allowed models and providers 3. Define data handling rules 4. Define MCP allowlist 5. Require PR review for agent changes 6. Require CI before merge 7. Monitor usage by surface 8. Train developers on prompt and diff review 9. Keep security rules updated 10. Audit incidents and improve rules
Déploiement progressif
| Phase | Objectif | Livrable |
|---|---|---|
| Pilote solo | Identifier usages rentables. | Prompts et rules initiales. |
| Petit groupe | Tester conventions partagées. | AGENTS.md, rÚgles, runbook. |
| Ăquipe complĂšte | Standardiser PR et CI. | Politique dâusage. |
| Entreprise | Gouverner sécurité et coûts. | Dashboard, audit, formation. |
Standards obligatoires
- Une tĂąche agentique = une branche.
- Un patch agentique = un diff reviewable.
- Tout changement métier = test.
- Tout changement DB = plan migration.
- Tout changement auth = review sécurité.
- Tout agent cloud = PR et CI.
- Tout faux positif Bugbot utile = rÚgle améliorée.
Métriques utiles
| Métrique | Pourquoi | PiÚge |
|---|---|---|
| Temps cycle ticket | Mesure productivité. | Ne pas sacrifier qualité. |
| Taux de tests ajoutés | Mesure discipline. | Tests faibles ou tautologiques. |
| Commentaires review | QualitĂ© diff. | Volume â pertinence. |
| Bugs aprÚs merge | Vraie qualité. | Nécessite tracking incident. |
| Usage modÚles | Coûts et formation. | Surveiller sans fliquer. |
Former les développeurs
La formation Cursor ne doit pas ĂȘtre une dĂ©mo magique. Elle doit apprendre les rĂ©flexes : contexte, plan, patch, test, review, rollback.
Training path: Day 1: Tab, Chat, Inline Edit Day 2: Agent with small bug fixes Day 3: Rules and context engineering Day 4: Tests and review workflow Day 5: Security, MCP, Cloud Agents Day 6: Team standards and CI integration
Routine quotidienne
Daily Cursor routine: 1. Pull latest code 2. Create a task branch 3. Read ticket and constraints 4. Ask Chat for analysis only 5. Use Plan Mode for non-trivial work 6. Approve one small patch 7. Run tests 8. Review diff 9. Commit 10. Open PR with clear summary
Bugfix
Feature
| Ătape | Cursor | Humain |
|---|---|---|
| Spécification | Clarifie critÚres. | Décide scope. |
| Plan | Propose fichiers et étapes. | Valide architecture. |
| Implémentation | Patchs successifs. | Review chaque diff. |
| Tests | GĂ©nĂšre et lance. | Ăvalue pertinence. |
| PR | Résumé, risques. | Responsable merge. |
Refactor
Refactor protocol: 1. map current behavior 2. add characterization tests if missing 3. refactor one unit 4. run tests 5. compare diff 6. repeat
Pages officielles Ă suivre
- Cursor Docs : https://cursor.com/docs
- Agent overview : https://cursor.com/docs/agent/overview
- Plan Mode : https://cursor.com/docs/agent/plan-mode
- Rules : https://cursor.com/docs/rules
- MCP : https://cursor.com/docs/mcp
- CLI : https://cursor.com/docs/cli/overview
- Cloud Agents : https://cursor.com/docs/cloud-agent
- Skills : https://cursor.com/docs/skills
- Subagents : https://cursor.com/docs/subagents
- Hooks : https://cursor.com/docs/hooks
- Changelog : https://cursor.com/changelog
- Bugbot : https://cursor.com/bugbot
Fonctionnalités 2026 à surveiller
| Fonction | Pourquoi câest important |
|---|---|
| Team Marketplace | Distribution contrÎlée de plugins, MCP, skills, subagents, rules, hooks. |
| Security Review | Agents de revue sécurité et scanner vulnérabilités. |
| Cursor SDK | Construire ses propres agents programmatiques. |
| Bugbot learned rules | Amélioration des rÚgles à partir du feedback review. |
| Usage analytics | Suivre coĂ»ts et surfaces dâusage : clients, Cloud Agents, automations, Bugbot. |
Checklist de veille mensuelle
Monthly Cursor watch: - read latest changelog - check model policy changes - review team usage analytics - update project rules - update security rules - verify MCP permissions - review agent failures and false positives - improve prompts and runbooks - train team on new features
