Novita × TiDB:从代码到生产

Novita × TiDB:从代码到生产

Novita Artifact Hosting 与 TiDB 正在将托管应用部署与生产就绪的数据库层结合起来,为 AI 生成的应用提供支持。Novita 负责运行时,TiDB 提供兼容 MySQL 的数据基础设施,AI 编码 Agent 只需一次部署工作流,即可从生成的代码走向一个真实运行、有数据支撑的应用。

问题所在

过去一年中,AI 编码 Agent(如 Cursor、Claude Code 和 Devin)让“通过一个提示词构建应用”变得似乎触手可及。但现实中仍有一个尴尬的事实:大多数 Agent 生成的代码从未真正上线。

原因并非代码本身质量差,而是部署依然过于复杂。

一个典型的 AI 生成应用可能需要:

  • 运行时环境,例如容器或沙箱
  • 数据库,例如 PostgreSQL 或 MySQL
  • 域名和 SSL 证书
  • 环境变量配置
  • 数据库迁移脚本

这些都不是 Agent 在写代码时通常会处理的事情。

AI 编码 Agent 仍需组装部署组件

Novita Artifact Hosting:Agent 构建成果的归宿

Novita Artifact Hosting 是一个专为 AI 编码 Agent 创建的应用而设计的全托管部署平台。其核心理念很简单:

Agent 写代码,Novita 让代码跑起来。

工作流程非常直接:

  1. Agent 在沙箱中生成代码和 Dockerfile。
  2. 通过一次 SDK 调用 project.deploy(sandbox_id, arti_dir) 启动部署。
  3. Novita 构建 Docker 镜像。
  4. 轻量级运行时将部署上线。
  5. 用户通过类似 https://my-app.novita.space 的域名访问应用。

这一工作流已经上线运行。但它只解决了计算层面的问题。真正的应用还需要数据。

TiDB:AI 生成应用的理想数据库层

对于 AI 生成的 Web 应用,数据库层有两个硬性要求:

  1. MySQL 兼容性。 大多数 AI 友好的框架(如 Next.js、Django 和 Laravel)都能与 MySQL 生态顺畅协作。AI 生成的代码也极有可能使用 MySQL 驱动。
  2. 零运维。 Agent 开发者不想管理数据库,不想配置连接池、调优参数或处理备份。

TiDB 满足这两个要求:

  • 完全兼容 MySQL 协议,因此 AI 生成的代码无需重写 SQL 即可运行。
  • 分布式架构,自动扩缩容,无需专职 DBA。
  • HTAP 支持,同一数据库可同时处理 OLTP 事务与分析查询。

Novita + TiDB:一个参数即可添加数据库

使用 Novita Artifact Hosting,启用托管数据库只需一个参数:

deployment = project.deploy(
    sandbox_id="xxx",
    arti_dir="./workspace/my-app",
    database=True,  # 这一行
    migrations=[
        Path("./migrations/0001_schema.sql").read_text(),
        Path("./migrations/0002_seed.sql").read_text(),
    ],
    http_port=3000,
)

Novita Artifact Hosting 与 TiDB 部署工作流

后台自动完成的工作:

  1. 自动为项目创建或复用 TiDB 实例。
  2. 按顺序运行迁移,创建表、索引和种子数据。
  3. DATABASE_URL 注入部署环境。应用直接从 os.environ["DATABASE_URL"] 读取。
  4. 部署应用,连接数据库,开始服务用户。

对开发者来说,这意味着无需注册数据库、无需配置连接字符串、无需手动执行迁移步骤。只需一行:database=True

这对 AI 编码 Agent 意味着什么

之前 现在
Agent 写代码,然后开发者手动部署到 Vercel 或 Railway。 Agent 写代码,然后一次 SDK 调用即可部署应用。
开发者必须在 TiDB Cloud、PlanetScale 或其他平台创建数据库。 托管数据库自动创建,连接信息自动注入。
迁移脚本必须手动执行。 迁移按顺序自动运行。
环境变量必须手动配置。 DATABASE_URL 自动注入。
发布一个应用需要协调三个平台。 一个平台、一个 API 处理完整流程。

当前状态

  • Artifact Hosting 已上线,支持自定义域名。
  • 由 TiDB 驱动的托管数据库目前处于试用阶段。
  • 提供 Python SDK 和 CLI 支持。
  • 开源示例已在 GitHub 上提供:ecomm-with-sqlecomm-with-managed-dbsnake-game-static

未来展望

一旦托管数据库功能达到 GA 阶段,Novita + TiDB 组合可以进一步扩展:

  • 多区域部署: TiDB 的多数据中心能力结合 Novita 的全球沙箱节点。
  • 数据主权: 用户可选择数据存储位置。
  • Agent 原生工作流: Agent 可直接通过 SDK 创建项目、部署应用、配置数据库,使整个流程完全自动化。