--- title: CLI description: yarn twenty 命令可用于执行函数、流式传输日志、管理应用安装以及切换远程。 icon: terminal --- `yarn twenty` CLI 是与你的所有应用相关内容进行交互的接口。 完整命令列表: | 命令 | 作用 | 记录于 | | ----------------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------- | | `dev` | 监视源文件并实时同步更改 | [快速开始](/l/zh/developers/extend/apps/getting-started/quick-start) | | `计划` | 在不应用变更的情况下预览元数据更改 | [同步与恢复](/l/zh/developers/extend/apps/operations/sync-and-recovery#previewing-changes-plan) | | `应用` | 在显示计划后应用元数据更改 | [同步与恢复](/l/zh/developers/extend/apps/operations/sync-and-recovery) | | `dev:build` | 编译应用并生成 API 客户端(使用 `--tarball` 打包为 `.tgz`) | [发布](/l/zh/developers/extend/apps/operations/publishing) | | `dev:typecheck` | 运行 TypeScript 类型检查 | [测试](/l/zh/developers/extend/apps/operations/testing) | | `dev:add` | 搭建一个新的实体脚手架 | [脚手架](/l/zh/developers/extend/apps/getting-started/scaffolding) | | `dev:generate-client` | 重新生成类型化 API 客户端 | 本页面 | | `dev:function:exec` / `dev:function:logs` | 执行函数并流式输出其日志 | 本页面 | | `dev:translations-extract` | 将可翻译字符串提取到 `locales/` 目录中的目录文件中 | [翻译](/l/zh/developers/extend/apps/translations/overview) | | `dev:catalog-sync` | 触发一次市场目录同步 | [发布](/l/zh/developers/extend/apps/operations/publishing#how-marketplace-discovery-works) | | `app:publish` / `app:install` / `app:uninstall` | 发布生命周期 | [发布](/l/zh/developers/extend/apps/operations/publishing) 和本页面 | | `docker:*` | 管理本地 Twenty 服务器容器 | [本地服务器](/l/zh/developers/extend/apps/getting-started/local-server) | | `remote:*` | 管理服务器连接 | 本页面 | 每个命令都接受 `-r, --remote \` 参数,以便针对特定远程目标而不是默认远程。 ## 执行函数(`yarn twenty dev:function:exec`) 手动运行逻辑函数,而无需通过 HTTP、定时任务或数据库事件来触发: ```bash filename="Terminal" # 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 hooks yarn twenty dev:function:exec --postInstall yarn twenty dev:function:exec --preInstall ``` ## 查看函数日志(`yarn twenty dev:function:logs`) 实时流式查看你的应用逻辑函数的执行日志: ```bash filename="Terminal" # 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 ``` 这与 `yarn twenty docker:logs` 不同,后者显示的是 Docker 容器日志。 `yarn twenty dev:function:logs` 会显示来自 Twenty 服务器的应用函数执行日志。 ## 生成类型化客户端(`yarn twenty dev:generate-client`) 根据当前远程的 schema 重新生成类型化 API 客户端(`twenty-client-sdk`),无需构建或同步应用。 在任何项目中使用它来获取一个类型化客户端——例如位于单独代码库中的后端服务——用于与您的 Twenty 实例通信: ```bash filename="Terminal" # 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 import { CoreApiClient } from 'twenty-client-sdk/core'; ``` 每当数据模型发生更改时,请重新运行该命令,以刷新生成的类型。 客户端是在 `node_modules` 中生成的,因此不会随代码一起提交。 每次安装后运行 `yarn twenty dev:generate-client`(例如在 `postinstall` 脚本或 CI 中)。 ## 卸载应用(`yarn twenty app:uninstall`) 将你的应用从活动工作区中移除: ```bash filename="Terminal" yarn twenty app:uninstall # Skip the confirmation prompt yarn twenty app:uninstall --yes ``` ## 管理远程 “远程”是指你的应用连接到的 Twenty 服务器。 在设置期间,脚手架工具会为你自动创建一个。 你可以随时添加更多远程或在它们之间切换。 ```bash filename="Terminal" # 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 # Check that the active remote's authentication is still valid yarn twenty remote:status # Remove a remote yarn twenty remote:remove ``` 你的凭据存储在 `~/.twenty/config.json` 中。