> ## 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.

# CLI

> Команды `yarn twenty` для выполнения функций, потоковой передачи логов, управления установками приложений и переключения удалённых серверов.

CLI `yarn twenty` — ваш инструмент для всего, что связано с приложением. Полный список команд:

| Команда                                         | Что делает                                                                               | Описано в                                                                                               |
| ----------------------------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `dev`                                           | Отслеживает исходные файлы и синхронизирует изменения в реальном времени                 | [Краткое руководство](/l/ru/developers/extend/apps/getting-started/quick-start)                         |
| `план`                                          | Предпросмотр изменений метаданных без их применения                                      | [Syncing & recovery](/l/ru/developers/extend/apps/operations/sync-and-recovery#previewing-changes-plan) |
| `применить`                                     | Применить изменения метаданных после показа плана                                        | [Syncing & recovery](/l/ru/developers/extend/apps/operations/sync-and-recovery)                         |
| `dev:build`                                     | Скомпилировать приложение и сгенерировать API‑клиент (`--tarball` для упаковки в `.tgz`) | [Публикация](/l/ru/developers/extend/apps/operations/publishing)                                        |
| `dev:typecheck`                                 | Запустить проверку типов TypeScript                                                      | [Тестирование](/l/ru/developers/extend/apps/operations/testing)                                         |
| `dev:add`                                       | Создать каркас новой сущности                                                            | [Создание каркаса](/l/ru/developers/extend/apps/getting-started/scaffolding)                            |
| `dev:generate-client`                           | Повторно сгенерировать типизированный API‑клиент                                         | эта страница                                                                                            |
| `dev:function:exec` / `dev:function:logs`       | Выполнять функции и транслировать их логи                                                | эта страница                                                                                            |
| `dev:translations-extract`                      | Извлечь переводимые строки в каталоги `locales/`                                         | [Переводы](/l/ru/developers/extend/apps/translations/overview)                                          |
| `dev:catalog-sync`                              | Запустить синхронизацию каталога маркетплейса                                            | [Публикация](/l/ru/developers/extend/apps/operations/publishing#how-marketplace-discovery-works)        |
| `app:publish` / `app:install` / `app:uninstall` | Жизненный цикл релиза                                                                    | [Публикация](/l/ru/developers/extend/apps/operations/publishing) и эта страница                         |
| `docker:*`                                      | Управлять локальным контейнером сервера Twenty                                           | [Локальный сервер](/l/ru/developers/extend/apps/getting-started/local-server)                           |
| `remote:*`                                      | Управлять подключениями к серверам                                                       | эта страница                                                                                            |

Каждая команда принимает параметр `-r, --remote \<name>`, чтобы указать конкретное удалённое подключение вместо подключения по умолчанию.

## Выполнение функций (`yarn twenty dev:function:exec`)

Запустите логическую функцию вручную, не вызывая её через HTTP, cron или событие базы данных:

```bash filename="Terminal" theme={null}
# Execute by function name
yarn twenty dev:function:exec -n create-new-post-card

# Execute by universalIdentifier
yarn twenty dev:function:exec -u e56d363b-0bdc-4d8a-a393-6f0d1c75bdcf

# Pass a JSON payload
yarn twenty dev:function:exec -n create-new-post-card -p '{"name": "Hello"}'

# Execute the install and uninstall hooks
yarn twenty dev:function:exec --postInstall
yarn twenty dev:function:exec --preInstall
yarn twenty dev:function:exec --uninstall
```

## Просмотр логов функций (`yarn twenty dev:function:logs`)

Потоковая передача журналов выполнения логических функций вашего приложения:

```bash filename="Terminal" theme={null}
# Stream all function logs
yarn twenty dev:function:logs

# Filter by function name
yarn twenty dev:function:logs -n create-new-post-card

# Filter by universalIdentifier
yarn twenty dev:function:logs -u e56d363b-0bdc-4d8a-a393-6f0d1c75bdcf
```

<Note>
  Это отличается от `yarn twenty docker:logs`, который показывает логи контейнера Docker. `yarn twenty dev:function:logs` показывает журналы выполнения функций вашего приложения с сервера Twenty.
</Note>

## Генерация типизированного клиента (`yarn twenty dev:generate-client`)

Повторно сгенерируйте типизированный API‑клиент (`twenty-client-sdk`) из схемы активного удалённого экземпляра, не выполняя сборку или синхронизацию приложения. Используйте это, чтобы получить типизированного клиента в любом проекте — например, в backend‑сервисе в отдельном репозитории — который взаимодействует с вашим экземпляром Twenty:

```bash filename="Terminal" theme={null}
# In your project (no Twenty app definition required)
yarn add twenty-sdk twenty-client-sdk

# Connect to the Twenty instance to generate the client from
yarn twenty remote:add

# Generate the typed client into node_modules/twenty-client-sdk
yarn twenty dev:generate-client
```

Затем импортируйте клиента в свой код:

```typescript theme={null}
import { CoreApiClient } from 'twenty-client-sdk/core';
```

Повторно запустите команду при каждом изменении вашей модели данных, чтобы обновить сгенерированные типы.

<Note>
  Клиент генерируется внутри `node_modules`, поэтому он не добавляется в ваш репозиторий вместе с кодом. Запускайте `yarn twenty dev:generate-client` после каждой установки (например, в скрипте `postinstall` или в CI).
</Note>

## Удаление приложения (`yarn twenty app:uninstall`)

Удалите свое приложение из активного рабочего пространства:

```bash filename="Terminal" theme={null}
yarn twenty app:uninstall

# Skip the confirmation prompt
yarn twenty app:uninstall --yes
```

## Управление удалёнными серверами

**Remote** — это сервер Twenty, к которому подключается ваше приложение. Во время настройки скаффолдер автоматически создаст его для вас. Вы можете в любой момент добавлять новые удалённые серверы или переключаться между ними.

```bash filename="Terminal" theme={null}
# Add a new remote (opens a browser for OAuth login)
yarn twenty remote:add

# Connect to a local Twenty server (auto-detects port 2020 or 3000)
yarn twenty remote:add --local

# Add a remote non-interactively (useful for CI)
yarn twenty remote:add --url https://your-twenty-server.com --api-key $TWENTY_API_KEY --as my-remote

# List all configured remotes
yarn twenty remote:list

# Set the active remote
yarn twenty remote:use <name>

# Check that the active remote's authentication is still valid
yarn twenty remote:status

# Remove a remote
yarn twenty remote:remove <name>
```

Ваши учётные данные хранятся в `~/.twenty/config.json`.
