> Discover all available pages from the documentation index: https://mastra.zisheng.pro/fr/llms.txt # Workflows Mastra découvre les Workflows au niveau du projet à partir des fichiers `.ts` et `.js` situés dans `src/mastra/workflows/`. Cette convention n’est pas limitée à un seul Agent : chaque fichier avec un export par défaut devient un Workflow enregistré et le nom du fichier devient la clé du Workflow. Utilisez cette page pour la convention basée sur les fichiers. Pour les étapes, les schémas, le contrôle de flux, le streaming, l’état et l’exécution de Workflows, consultez la [présentation des Workflows](https://mastra.zisheng.pro/fr/docs/workflows/overview). ## Démarrage rapide Créez un fichier dans `src/mastra/workflows/`, construisez le Workflow avec [`createWorkflow()`](https://mastra.zisheng.pro/fr/reference/workflows/workflow), puis exportez-le par défaut. ```typescript import { createStep, createWorkflow } from '@mastra/core/workflows' import { z } from 'zod' const collectInputs = createStep({ id: 'collect-inputs', inputSchema: z.object({ topic: z.string() }), outputSchema: z.object({ topic: z.string(), audience: z.string() }), execute: async ({ inputData }) => ({ topic: inputData.topic, audience: 'engineering', }), }) const writeSummary = createStep({ id: 'write-summary', inputSchema: z.object({ topic: z.string(), audience: z.string() }), outputSchema: z.object({ report: z.string() }), execute: async ({ inputData }) => ({ report: `Daily report about ${inputData.topic} for ${inputData.audience}.`, }), }) const dailyReport = createWorkflow({ id: 'daily-report', inputSchema: z.object({ topic: z.string() }), outputSchema: z.object({ report: z.string() }), }) .then(collectInputs) .then(writeSummary) .commit() export default dailyReport ``` Mastra enregistre ce Workflow sous la clé `daily-report`. ## Priorité par rapport au code Les Workflows basés sur des fichiers sont fusionnés avec ceux enregistrés dans [`new Mastra()`](https://mastra.zisheng.pro/fr/reference/core/mastra-class). En cas de conflit de clé, le Workflow enregistré dans le code est prioritaire.