Aller au contenu principal

Structure du projet

Votre nouveau projet Mastra, créé avec la commande create mastra, contient un ensemble prédéfini de fichiers et de dossiers pour vous aider à démarrer.

Mastra est un cadre logiciel, mais il est en grande partie peu contraignant concernant l’organisation ou la colocalisation de vos fichiers. La CLI fournit une structure par défaut judicieuse qui convient à la plupart des projets, mais vous pouvez l’adapter à votre flux de travail ou aux conventions de votre équipe. Vous pouvez même construire l’intégralité de votre projet dans un seul fichier. Quelle que soit la structure choisie, gardez-la cohérente afin que votre code reste facile à maintenir et à parcourir.

Structure de projet par défaut
Lien direct vers Structure de projet par défaut

Un projet créé avec la commande create mastra se présente ainsi :

src/
├── mastra/
│ ├── agents/
│ │ └── weather-agent.ts
│ ├── tools/
│ │ └── weather-tool.ts
│ ├── workflows/
│ │ └── weather-workflow.ts
│ ├── scorers/
│ │ └── weather-scorer.ts
│ └── index.ts
├── .env.example
├── package.json
└── tsconfig.json

Utilisez les fichiers prédéfinis comme modèles. Dupliquez-les et adaptez-les pour créer rapidement vos propres Agents, Tools, Workflows, etc.

Dossiers
Lien direct vers Dossiers

Mastra recommande d’organiser votre code dans les dossiers suivants :

DossierDescription
src/mastraPoint d’entrée de tout le code et de la configuration liés à Mastra.
src/mastra/agentsDéfinissez et configurez vos Agents : leur comportement, leurs objectifs et leurs Tools.
src/mastra/workflowsDéfinissez des Workflows à plusieurs étapes qui orchestrent ensemble des Agents et des Tools.
src/mastra/toolsCréez des Tools réutilisables que vos Agents peuvent appeler.
src/mastra/mcpImplémentez des serveurs MCP personnalisés pour partager vos Tools avec des Agents externes.
src/mastra/scorersDéfinissez des Scorers pour évaluer les performances des Agents au fil du temps.

Mastra possède deux conventions de dossiers spéciales :

  • src/mastra/agents/<name>: vous pouvez définir un Agent par convention de fichiers au lieu de le construire dans le code. Pour en savoir plus, consultez la documentation sur les Agents basés sur des fichiers.
  • src/mastra/public: son contenu est copié dans le répertoire .build/output lors du processus de compilation, ce qui le rend disponible pour être servi à l’exécution.

Fichiers à la racine
Lien direct vers Fichiers à la racine

Les fichiers à la racine définissent comment votre projet Mastra est configuré, compilé et connecté à son environnement.

FichierDescription
src/mastra/index.tsPoint d’entrée central où vous configurez et initialisez Mastra.
.env.exampleModèle pour les variables d’environnement : copiez-le et renommez-le en .env pour ajouter les clés secrètes de votre fournisseur de modèles.
package.jsonDéfinit les métadonnées du projet, les dépendances et les scripts npm disponibles.
tsconfig.jsonConfigure les options TypeScript telles que les alias de chemin, les paramètres du compilateur et la sortie de compilation.