Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.devin.ai/llms.txt

Use this file to discover all available pages before exploring further.

Les workflows permettent aux utilisateurs de définir une série d’étapes pour guider Cascade dans l’exécution de tâches répétitives, comme le déploiement d’un service ou la réponse à des commentaires sur des PR. Ces workflows sont enregistrés sous forme de fichiers markdown, offrant aux utilisateurs et à leurs équipes un moyen simple et reproductible d’exécuter des processus clés. Une fois enregistrés, les workflows peuvent être invoqués dans Cascade via une commande slash au format /[name-of-workflow]

Fonctionnement

Les règles fournissent généralement des indications aux grands modèles de langage grâce à un contexte persistant et réutilisable au niveau du prompt. Les Workflows étendent ce concept en fournissant, au niveau de la trajectoire, une séquence structurée d’étapes ou de prompts qui guide le modèle à travers une série de tâches ou d’actions interconnectées.
Pour exécuter un Workflow, les utilisateurs n’ont qu’à l’invoquer dans Cascade à l’aide de la commande /[workflow-name].
Vous pouvez appeler d’autres Workflows depuis un Workflow !

Par exemple, /workflow-1 peut inclure des instructions comme « Appeler /workflow-2 » et « Appeler /workflow-3 ».
Une fois invoqué, Cascade traite séquentiellement chaque étape définie dans le Workflow, en exécutant les actions ou en générant les réponses spécifiées.

Comment créer un Workflow

Pour commencer avec les Workflows, cliquez sur l’icône Customizations dans le menu coulissant situé en haut à droite de Cascade, puis accédez au panneau Workflows. Vous pouvez ensuite cliquer sur le bouton + Workflow pour créer un nouveau Workflow. Les workflows sont enregistrés sous forme de fichiers Markdown dans des répertoires .windsurf/workflows/ et contiennent un titre, une description et une série d’étapes avec des instructions spécifiques à suivre par Cascade.

Découverte des workflows

Windsurf détecte automatiquement les workflows à partir de plusieurs emplacements afin d’offrir une organisation flexible :
  • Espace de travail actuel et sous-répertoires : tous les répertoires .windsurf/workflows/ présents dans votre espace de travail actuel et dans ses sous-répertoires
  • Structure du dépôt Git : pour les dépôts Git, Windsurf remonte également jusqu’à la racine du dépôt afin de trouver des workflows dans les répertoires parents
  • Prise en charge de plusieurs espaces de travail : lorsque plusieurs dossiers sont ouverts dans le même espace de travail, les workflows sont dédupliqués et affichés avec le chemin relatif le plus court

Emplacements de stockage des workflows

Les workflows peuvent être stockés dans l’un des emplacements suivants :
  • .windsurf/workflows/ dans le répertoire de votre espace de travail actuel
  • .windsurf/workflows/ dans n’importe quel sous-répertoire de votre espace de travail
  • .windsurf/workflows/ dans les répertoires parents jusqu’à la racine Git (pour les dépôts Git)
Lorsque vous créez un nouveau workflow, il est enregistré dans le répertoire .windsurf/workflows/ de votre espace de travail actuel, pas nécessairement à la racine Git. Chaque fichier de workflow est limité à 12000 caractères.

Générer un workflow avec Cascade

Vous pouvez aussi demander à Cascade de générer des workflows pour vous ! Cela fonctionne particulièrement bien pour les workflows qui impliquent une série d’étapes dans un outil CLI spécifique.

Exemples de workflows

Il existe une multitude de cas d’usage pour les workflows, par exemple :

/address-pr-comments

Voici un workflow que notre équipe utilise en interne pour traiter les commentaires sur les PR :
1. Basculez sur la branche de la PR : `gh pr checkout [id]`

2. Récupérez les commentaires de la PR

 bash
 gh api --paginate repos/[owner]/[repo]/pulls/[id]/comments | jq '.[] | {user: .user.login, body, path, line, original_line, created_at, in_reply_to_id, pull_request_review_id, commit_id}'

3. Pour CHAQUE commentaire, procédez comme suit. N’oubliez pas de traiter un commentaire à la fois.
 a. Affichez ce qui suit : "(index). De [user] sur [file]:[lines] — [body]"
 b. Analysez le fichier et la plage de lignes.
 c. Si vous ne comprenez pas le commentaire, n’apportez aucune modification. Demandez-moi simplement des précisions, ou demandez-moi de l’implémenter moi-même.
 d. Si vous pensez pouvoir effectuer la modification, faites-la AVANT de passer au commentaire suivant.

4. Une fois tous les commentaires traités, résumez ce que vous avez fait et indiquez quels commentaires nécessitent l’attention de l’UTILISATEUR.

/git-workflows

Effectuez des commits à l’aide de formats prédéfinis et créez des pull requests avec des titres et des descriptions standardisés à l’aide des commandes CLI appropriées.

/dependency-management

Automatisez l’installation ou la mise à jour des dépendances du projet à partir d’un fichier de configuration (par ex., requirements.txt, package.json).

/code-formatting

Exécutez automatiquement des outils de formatage du code (comme Prettier, Black) et des linters (comme ESLint, Flake8) lors de l’enregistrement des fichiers ou avant un commit afin de maintenir le style du code et de détecter les erreurs rapidement.

/run-tests-and-fix

Exécutez ou ajoutez des tests unitaires ou de bout en bout, et corrigez automatiquement les erreurs afin de garantir la qualité du code avant le commit, la fusion ou le déploiement.

/deployment

Automatisez les étapes nécessaires pour déployer votre application dans différents environnements (développement, staging, production), y compris les vérifications nécessaires avant ou après le déploiement.

/security-scan

Intégrez et déclenchez des analyses des vulnérabilités de sécurité sur votre base de code dans le cadre du pipeline CI/CD ou à la demande.

Workflows système (Enterprise)

Les organisations Enterprise peuvent déployer des workflows système, disponibles globalement dans tous les espaces de travail et que les utilisateurs finaux ne peuvent pas modifier sans autorisations d’administrateur. C’est idéal pour imposer des processus de développement à l’échelle de l’organisation, des procédures de déploiement et des workflows de conformité. Les workflows système sont chargés à partir de répertoires propres au système d’exploitation : macOS :
/Library/Application Support/Windsurf/workflows/*.md
Linux/WSL :
/etc/windsurf/workflows/*.md
Windows :
C:\ProgramData\Windsurf\workflows\*.md
Placez vos fichiers de workflow (fichiers .md) dans le répertoire correspondant à votre système d’exploitation. Le système chargera automatiquement tous les fichiers .md contenus dans ces répertoires.

Ordre de priorité des workflows

Lorsque des workflows portant le même nom existent à plusieurs niveaux, les workflows système ont la priorité la plus élevée :
  1. Système (priorité la plus élevée) - Workflows déployés à l’échelle de l’organisation par l’équipe informatique
  2. Espace de travail - Workflows spécifiques à un projet dans .windsurf/workflows/
  3. Global - Workflows définis par l’utilisateur
  4. Intégrés - Workflows par défaut fournis par Windsurf
Cela signifie que si une organisation déploie un workflow système avec un nom donné, il remplacera tout workflow d’espace de travail, global ou intégré portant le même nom. Dans l’UI Cascade, les workflows système sont affichés avec le libellé “System” et ne peuvent pas être supprimés par les utilisateurs finaux.
Important : les workflows système doivent être gérés par votre équipe informatique ou sécurité. Assurez-vous que vos équipes internes prennent en charge le déploiement, les mises à jour et la conformité conformément aux politiques de votre organisation. Vous pouvez pour cela utiliser des outils et workflows standard tels que la gestion des appareils mobiles (MDM) ou la gestion de la configuration.