CLI
Better Auth 带有内置 CLI,可帮助您管理数据库模式、初始化项目、为您的应用程序生成密钥,并收集有关您的设置的诊断信息。
生成
generate 命令创建 Better Auth 所需的模式。如果您使用 Prisma 或 Drizzle 等数据库适配器,此命令将为您的 ORM 生成正确的模式。如果您使用内置的 Kysely 适配器,它将生成一个 SQL 文件,您可以直接在数据库上运行。
npx @better-auth/cli@latest generate选项
--output- 生成模式保存的位置。对于 Prisma,它将保存在 prisma/schema.prisma 中。对于 Drizzle,它将保存到项目根目录下的 schema.ts。对于 Kysely,它是一个保存为项目根目录下 schema.sql 的 SQL 文件。--config- Better Auth 配置文件路径。默认情况下,CLI 将在 ./、./utils、./lib 或src目录下的这些目录中搜索 auth.ts 文件。--yes- 跳过确认提示,直接生成模式。
迁移
migrate 命令将 Better Auth 模式直接应用到您的数据库中。如果您使用内置的 Kysely 适配器,此功能可用。对于其他适配器,您需要使用 ORM 的迁移工具应用模式。
npx @better-auth/cli@latest migrate选项
--config- Better Auth 配置文件路径。默认情况下,CLI 将在 ./、./utils、./lib 或src目录下的这些目录中搜索 auth.ts 文件。--yes- 跳过确认提示,直接应用模式。
初始化
init 命令允许您在项目中初始化 Better Auth。
npx @better-auth/cli@latest init选项
--name- 您的应用程序名称。(默认为package.json中的name属性)。--framework- 您的代码库使用的框架。目前,仅支持Next.js。--plugins- 您想要使用的插件。您可以通过逗号分隔来指定多个插件。--database- 您想要使用的数据库。目前,仅支持SQLite。--package-manager- 您想要使用的包管理器。目前,支持的包管理器为npm、pnpm、yarn、bun(默认为用于初始化 CLI 的管理器)。
信息
info 命令提供有关您的 Better Auth 设置和环境的诊断信息。适用于调试和寻求支持时的共享。
npx @better-auth/cli@latest info输出
该命令显示:
- 系统:OS、CPU、内存、Node.js 版本
- 包管理器:检测到的管理器及其版本
- Better Auth:版本和配置(敏感数据自动屏蔽)
- 框架:检测到的框架(Next.js、React、Vue 等)
- 数据库:数据库客户端和 ORM(Prisma、Drizzle 等)
选项
--config- Better Auth 配置文件路径--json- 以 JSON 格式输出,便于共享或程序化使用
示例
# 基本用法
npx @better-auth/cli@latest info
# 自定义配置路径
npx @better-auth/cli@latest info --config ./config/auth.ts
# JSON 输出
npx @better-auth/cli@latest info --json > auth-info.json敏感数据如密钥、API 密钥和数据库 URL 会自动替换为 [REDACTED] 以安全共享。
密钥
CLI 还提供一种为您的 Better Auth 实例生成密钥的方法。
npx @better-auth/cli@latest secret常见问题
错误:无法找到模块 X
如果您看到此错误,则表示 CLI 无法解析 Better Auth 配置文件中的导入模块。我们正在修复许多此类问题,但在此期间,您可以尝试以下方法:
- 在配置文件中移除任何导入别名,并改用相对路径。运行 CLI 后,您可以恢复使用别名。