--- title: Twenty 应用 description: 以代码的形式构建并管理 Twenty 自定义项。 --- 应用目前处于 Alpha 阶段。 该功能可用,但仍在演进中。 ## 什么是应用? 应用可通过自定义对象、字段、逻辑函数、前端组件、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({...})` 调用来检测实体。 文件命名和文件夹结构是灵活的 — 检测基于 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 参考。