> ## Documentation Index
> Fetch the complete documentation index at: https://twenty-claude-cool-pascal-5ay683.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Создание каркаса

> Интерактивно генерируйте файлы сущностей с помощью yarn twenty dev:add — объекты, поля, представления, логические функции и многое другое.

Вместо ручного создания файлов сущностей используйте интерактивный генератор:

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

Он предлагает выбрать тип сущности и пошагово проводит через обязательные поля, а затем записывает готовый к использованию файл со стабильным `universalIdentifier` и корректным вызовом `defineEntity()`.

Вы также можете передать тип сущности напрямую, чтобы пропустить первый запрос:

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

## Доступные типы сущностей

| Тип сущности                    | Команда                                    | Сгенерированный файл                     |
| ------------------------------- | ------------------------------------------ | ---------------------------------------- |
| Объект                          | `yarn twenty dev:add object`               | `src/objects/\<name>.ts`                 |
| Поле                            | `yarn twenty dev:add field`                | `src/fields/\<name>.ts`                  |
| Логическая функция              | `yarn twenty dev:add logicFunction`        | `src/logic-functions/\<name>.ts`         |
| Компонент фронтенда             | `yarn twenty dev:add frontComponent`       | `src/front-components/\<name>.tsx`       |
| Роль                            | `yarn twenty dev:add role`                 | `src/roles/\<name>.ts`                   |
| Навык                           | `yarn twenty dev:add skill`                | `src/skills/\<name>.ts`                  |
| Агент                           | `yarn twenty dev:add agent`                | `src/agents/\<name>.ts`                  |
| Представление                   | `yarn twenty dev:add view`                 | `src/views/\<name>.ts`                   |
| Пункт меню навигации            | `yarn twenty dev:add navigationMenuItem`   | `src/navigation-menu-items/\<name>.ts`   |
| Макет страницы                  | `yarn twenty dev:add pageLayout`           | `src/page-layouts/\<name>.ts`            |
| Вкладка компоновки страницы     | `yarn twenty dev:add pageLayoutTab`        | `src/page-layout-tabs/\<name>.ts`        |
| Элемент меню команд             | `yarn twenty dev:add commandMenuItem`      | `src/command-menu-items/\<name>.ts`      |
| Поле представления              | `yarn twenty dev:add viewField`            | `src/view-fields/\<name>.ts`             |
| Провайдер подключения           | `yarn twenty dev:add connectionProvider`   | `src/connection-providers/\<name>.ts`    |
| Тип действия на временной шкале | `yarn twenty dev:add timelineActivityType` | `src/timeline-activity-types/\<name>.ts` |

## Что генерирует скэффолдер

У каждого типа сущности есть свой шаблон. Например, `yarn twenty dev:add object` запрашивает:

1. **Имя (единственное число)** — например, `invoice`
2. **Имя (множественное число)** — например, `invoices`
3. **Метка (единственное число)** — заполняется автоматически из имени (например, `Invoice`)
4. **Метка (множественное число)** — заполняется автоматически (например, `Invoices`)
5. **Создать представление и пункт навигации?** — если вы ответите «да», скэффолдер также сгенерирует соответствующее представление и ссылку в боковой панели для нового объекта.

У других типов сущностей подсказки проще — в большинстве случаев запрашивается только имя.

Тип сущности `field` более детализирован: он запрашивает имя поля, метку, тип (из списка всех доступных типов полей, таких как `TEXT`, `NUMBER`, `SELECT`, `RELATION` и т. д.), а также `universalIdentifier` целевого объекта.

## Пользовательский путь вывода

Используйте флаг `--path`, чтобы поместить сгенерированный файл в пользовательское расположение:

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