---
title: 스캐폴딩
description: "`yarn twenty dev:add`를 사용해 엔티티 파일을 대화형으로 생성하여 객체, 필드, 뷰, 로직 함수 등을 추가하세요."
icon: wand-magic-sparkles
---

엔티티 파일을 수동으로 만드는 대신, 대화형 스캐폴더를 사용하세요:

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

이 도구는 엔티티 유형을 선택하도록 안내하고, 필요한 필드를 하나씩 진행한 다음, 안정적인 `universalIdentifier`와 올바른 `defineEntity()` 호출이 포함된 바로 사용할 수 있는 파일을 생성합니다.

첫 번째 프롬프트를 건너뛰려면 엔티티 타입을 직접 전달할 수도 있습니다:

```bash filename="Terminal"
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 object`는 다음을 묻습니다:

1. **이름(단수)** — 예: `invoice`
2. **이름(복수)** — 예: `invoices`
3. **레이블(단수)** — 이름에서 자동으로 채워짐(예: `Invoice`)
4. **레이블(복수)** — 자동으로 채워짐(예: `Invoices`)
5. **뷰와 내비게이션 항목을 생성할까요?** — 예라고 답하면, 스캐폴더가 새 객체에 대한 일치하는 뷰와 사이드바 링크도 생성합니다.

다른 엔티티 타입은 더 단순한 프롬프트를 사용하며 — 대부분 이름만 묻습니다.

`field` 엔티티 타입은 더 자세합니다: 필드 이름, 레이블, 타입( `TEXT`, `NUMBER`, `SELECT`, `RELATION` 등 사용 가능한 모든 필드 타입 목록에서 선택), 그리고 대상 객체의 `universalIdentifier`를 묻습니다.

## 사용자 지정 출력 경로

`--path` 플래그를 사용해 생성된 파일을 사용자 지정 위치에 배치하세요:

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