---
title: Andamiaje
description: Genera archivos de entidad de forma interactiva con yarn twenty dev:add — objetos, campos, vistas, funciones de lógica y más.
icon: wand-magic-sparkles
---

En lugar de crear archivos de entidad a mano, usa el generador interactivo:

```bash filename="Terminal"
yarn twenty dev:add
```

Te pide que elijas un tipo de entidad y te guía por los campos requeridos; luego escribe un archivo listo para usar con un `universalIdentifier` estable y la llamada correcta a `defineEntity()`.

También puedes pasar el tipo de entidad directamente para omitir la primera pregunta:

```bash filename="Terminal"
yarn twenty dev:add object
yarn twenty dev:add logicFunction
yarn twenty dev:add frontComponent
```

## Tipos de entidad disponibles

| Tipo de entidad                 | Comando                                  | Archivo generado                                        |
| ------------------------------- | ---------------------------------------- | ------------------------------------------------------- |
| Objeto                          | `yarn twenty dev:add object`             | `src/objects/\<name>.ts`               |
| Campo                           | `yarn twenty dev:add field`              | `src/fields/\<name>.ts`                |
| Función de lógica               | `yarn twenty dev:add logicFunction`      | `src/logic-functions/\<name>.ts`       |
| Componente de frontend          | `yarn twenty dev:add frontComponent`     | `src/front-components/\<name>.tsx`     |
| Rol                             | `yarn twenty dev:add role`               | `src/roles/\<name>.ts`                 |
| Habilidad                       | `yarn twenty dev:add skill`              | `src/skills/\<name>.ts`                |
| Agente                          | `yarn twenty dev:add agent`              | `src/agents/\<name>.ts`                |
| Vista                           | `yarn twenty dev:add view`               | `src/views/\<name>.ts`                 |
| Elemento del menú de navegación | `yarn twenty dev:add navigationMenuItem` | `src/navigation-menu-items/\<name>.ts` |
| Diseño de página                | `yarn twenty dev:add pageLayout`         | `src/page-layouts/\<name>.ts`          |

## Qué genera el generador

Cada tipo de entidad tiene su propia plantilla. Por ejemplo, `yarn twenty dev:add object` solicita:

1. **Nombre (singular)** — p. ej., `invoice`
2. **Nombre (plural)** — p. ej., `invoices`
3. **Etiqueta (singular)** — se completa automáticamente a partir del nombre (p. ej., `Invoice`)
4. **Etiqueta (plural)** — se completa automáticamente (p. ej., `Invoices`)
5. **¿Crear una vista y un elemento de navegación?** — si respondes que sí, el generador también crea una vista correspondiente y un enlace en la barra lateral para el nuevo objeto.

Otros tipos de entidad tienen indicaciones más simples: la mayoría solo piden un nombre.

El tipo de entidad `field` es más detallado: pide el nombre del campo, etiqueta, tipo (de una lista de todos los tipos de campo disponibles como `TEXT`, `NUMBER`, `SELECT`, `RELATION`, etc.) y el `universalIdentifier` del objeto de destino.

## Ruta de salida personalizada

Usa la opción `--path` para colocar el archivo generado en una ubicación personalizada:

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