---
title: Twenty 应用
description: 以代码的形式构建并管理 Twenty 自定义项。
---

<Warning>
应用目前处于 Alpha 阶段。 该功能可用，但仍在演进中。
</Warning>

## 什么是应用？

应用可通过自定义对象、字段、逻辑函数、前端组件、AI 技能等来扩展 Twenty——全部以代码进行管理。 无需通过 UI 配置所有内容，你可以用 TypeScript 定义数据模型和逻辑，并将其部署到一个或多个工作空间。

**你可以构建的内容:**

* **自定义对象和字段** — 使用新实体扩展你的数据模型，或为现有对象（如 Company 或 Person）添加字段
* **逻辑函数** — 由数据库事件、定时任务（cron）或 HTTP 路由触发的服务端函数
* **前端组件** — 在 Twenty 的 UI 中渲染的 React 组件（记录页面、命令菜单、侧边面板）
* **AI 技能和智能体** — 通过自定义能力扩展 Twenty 的 AI
* **视图和导航** — 预配置的已保存视图和侧边栏链接

## 快速开始

```bash filename="Terminal"
npx create-twenty-app@latest my-twenty-app
cd my-twenty-app
yarn twenty dev
```

这将搭建一个新的应用，可选地启动本地 Twenty 服务器，并开始监视你的文件变更。 请参阅[开始使用](/l/zh/developers/extend/apps/getting-started)指南，查看完整演练。

## 详细指南

| 指南                                              | 描述                                                                                        |
| ----------------------------------------------- | ----------------------------------------------------------------------------------------- |
| [开始使用](/l/zh/developers/extend/apps/getting-started) | 搭建应用、设置本地服务器、项目结构、CI                                                                      |
| [构建应用](/l/zh/developers/extend/apps/building)        | 实体定义（`defineObject`、`defineLogicFunction`、`defineFrontComponent` 等）、API 客户端、npm 包、公共资源、测试 |
| [发布](/l/zh/developers/extend/apps/publishing)        | 部署到服务器、发布到 npm、应用市场                                                                       |

## 关键概念

### 实体检测

SDK 通过扫描你的 TypeScript 文件中的 `export default define<Entity>({...})` 调用来检测实体。 文件命名和文件夹结构是灵活的 — 检测基于 AST，而非基于路径。

### 可用的实体类型

| 函数                                 | 目的                      |
| ---------------------------------- | ----------------------- |
| `defineApplication()`              | 应用元数据（必需，每个应用一个）        |
| `defineObject()`                   | 带字段的自定义对象               |
| `defineField()`                    | 现有对象上的字段                |
| `defineLogicFunction()`            | 带触发器的服务端逻辑              |
| `defineFrontComponent()`           | Twenty 的 UI 中的 React 组件 |
| `defineRole()`                     | 权限角色                    |
| `defineView()`                     | 已保存视图配置                 |
| `defineNavigationMenuItem()`       | 侧边栏导航链接                 |
| `defineSkill()`                    | AI 智能体技能                |
| `defineAgent()`                    | 带提示词的 AI 智能体            |
| `definePageLayout()`               | 自定义记录页面布局               |
| `definePreInstallLogicFunction()`  | 在应用安装之前运行               |
| `definePostInstallLogicFunction()` | 在应用安装之后运行               |

### 开发工作流程

1. **`yarn twenty dev`** — 监视源文件、更改时重新构建、同步到服务器、生成类型化的 API 客户端
2. **`yarn twenty build`** — 生成可分发的构建产物
3. **`yarn twenty deploy`** — 部署到远程 Twenty 服务器
4. **`yarn twenty add`** — 交互式生成一个新实体

### CLI 参考

```bash filename="Terminal"
yarn twenty help          # 列出所有命令
yarn twenty server start  # 启动本地开发服务器
yarn twenty remote add    # 连接到 Twenty 服务器
yarn twenty exec -n fn    # 执行逻辑函数
yarn twenty logs -n fn    # 实时查看函数日志
```

请参阅[开始使用](/l/zh/developers/extend/apps/getting-started)指南以获取完整的 CLI 参考。
