> ## Documentation Index
> Fetch the complete documentation index at: https://docs.upshiftcloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Génération

> Générez des fichiers d'entité de manière interactive avec `yarn twenty dev:add` — objets, champs, vues, fonctions logiques et plus encore.

Au lieu de créer manuellement les fichiers d'entité, utilisez l'outil de génération interactif :

```bash filename="Terminal" theme={null}
yarn twenty dev:add
```

Il vous invite à choisir un type d'entité, vous guide à travers les champs requis, puis écrit un fichier prêt à l'emploi avec un `universalIdentifier` stable et l'appel `defineEntity()` correct.

Vous pouvez également passer directement le type d'entité pour ignorer la première invite :

```bash filename="Terminal" theme={null}
yarn twenty dev:add object
yarn twenty dev:add logicFunction
yarn twenty dev:add frontComponent
```

## Types d’entités disponibles

| Type d’entité | Commande | Fichier généré |
| - | - | - |
| Objet | `yarn twenty dev:add object` | `src/objects/\<name>.ts` |
| Champ | `yarn twenty dev:add field` | `src/fields/\<name>.ts` |
| Fonction logique | `yarn twenty dev:add logicFunction` | `src/logic-functions/\<name>.ts` |
| Composant frontal | `yarn twenty dev:add frontComponent` | `src/front-components/\<name>.tsx` |
| Rôle | `yarn twenty dev:add role` | `src/roles/\<name>.ts` |
| Compétence | `yarn twenty dev:add skill` | `src/skills/\<name>.ts` |
| Agent | `yarn twenty dev:add agent` | `src/agents/\<name>.ts` |
| Vue | `yarn twenty dev:add view` | `src/views/\<name>.ts` |
| Élément de menu de navigation | `yarn twenty dev:add navigationMenuItem` | `src/navigation-menu-items/\<name>.ts` |
| Mise en page | `yarn twenty dev:add pageLayout` | `src/page-layouts/\<name>.ts` |
| Onglet Mise en page | `yarn twenty dev:add pageLayoutTab` | `src/page-layout-tabs/\<name>.ts` |
| Élément du menu de commande | `yarn twenty dev:add commandMenuItem` | `src/command-menu-items/\<name>.ts` |
| Champ de vue | `yarn twenty dev:add viewField` | `src/view-fields/\<name>.ts` |
| Fournisseur de connexion | `yarn twenty dev:add connectionProvider` | `src/connection-providers/\<name>.ts` |
| Type d'activité de la chronologie | `yarn twenty dev:add timelineActivityType` | `src/timeline-activity-types/\<name>.ts` |

## Ce que génère l'outil de génération

Chaque type d'entité a son propre modèle. Par exemple, `yarn twenty dev:add object` demande :

1. **Nom (singulier)** — p. ex., `invoice`
2. **Nom (pluriel)** — p. ex., `invoices`
3. **Libellé (singulier)** — rempli automatiquement depuis le nom (p. ex., `Invoice`)
4. **Libellé (pluriel)** — rempli automatiquement (p. ex., `Invoices`)
5. **Créer une vue et un élément de navigation ?** — si vous répondez oui, l'outil génère également une vue correspondante et un lien de barre latérale pour le nouvel objet.

Les autres types d'entités ont des invites plus simples — la plupart ne demandent qu'un nom.

Le type d'entité `field` est plus détaillé : il demande le nom du champ, son libellé, son type (à partir d'une liste de tous les types de champs disponibles comme `TEXT`, `NUMBER`, `SELECT`, `RELATION`, etc.), et le `universalIdentifier` de l'objet cible.

## Chemin de sortie personnalisé

Utilisez l'option `--path` pour placer le fichier généré à un emplacement personnalisé :

```bash filename="Terminal" theme={null}
yarn twenty dev:add logicFunction --path src/custom-folder
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.