@cloudflare/codemods

中文文档
0.7.5发布于 2026/11/09MIT OR Apache-2.0TypeScriptES Module零依赖构建来源已验证近 30 天下载 121.2万

更新 Cloudflare 开发者项目的代码

中文使用文档

@cloudflare/codemods

Cloudflare开发项目升级的代码.

运行一个代号名称 :

npx @cloudflare/codemods vitest:v3-to-v4

可用的编码模式 :

  • wrangler-to-cf - 将Wrangler配置迁移到新的 cf 配置格式
  • vitest:v3-to-v4 移徙 @cloudflare/vitest-pool-workers 配置从 Vitest v3 to v4 (英语)
  • vitest:pool-workers-to-vitest-plugin — 重命名 @cloudflare/vitest-pool-workers 改为 @cloudflare/vitest-plugin 单曲

使用 --dry-run 在不写的情况下列出更改, --cwd <path> 改为目标 其它项目,或重复 --files <glob> 限制审议的文件. 当目标在Git工作树内时,工作树必须是干净的. 使用 --force 绕过此安全检查.

以默认 Vite 捆绑器来迁移 Wrangler 工程 :

npx @cloudflare/codemods wrangler-to-cf --cwd ./path/to/project

CLI 检测出单个根 wrangler.json, (中文(简体) ), wrangler.jsonc,或 wrangler.toml。通过 --config <path> 选择其它文件,或通过 --bundler wrangler 以保留 Wrangler 特定工具配置。 对于这个编码器, --files 过滤选中的 Wrangler 配置并跳过不匹配的迁移 .

程序用途

代码也可以由JavaScript或TypeScript运行:

import { runCodemod } from "@cloudflare/codemods";

const { changedFiles } = await runCodemod("vitest:v3-to-v4", {
    cwd: process.cwd(),
    dryRun: false,
});

runCodemod 接受与CLI相同的编码名和别名. 其上下文也接受可选 files 财务报告和审定财务报表 force 字段对应 CLI 旗帜,并设置 dryRun 列表已更改文件而不写入。 它返回一个 CodemodResult 包含 changedFiles 如果代码无法运行,则拒绝。 CLI的清洁工作树检查也适用于方案运行.

移动朗格勒配置以查找

将 Wrangler 配置文件传递给 migrateWranglerToCf数字 :

import { migrateWranglerToCf } from "@cloudflare/codemods";

const result = await migrateWranglerToCf("./wrangler.jsonc", {
    bundler: "vite",
});

选项对象及其所有字段都是可选的. 默认为 Vite 捆绑器, 写入启用, 肮脏的工作树保护启用, 自动依赖安装启用 。 迁移安装 cf 缺少时, 安装 @cloudflare/vite-plugin@beta 当Vite被选中而插件缺失或不兼容时,在生成出Wrangler工具时升级Wrangler需要更新版本. Vite 插件依赖性仍然设置到 beta dist 标记 package.json; 包管理器安装更新了工程的锁文件. 项目管理 Vite 插件描述符, 如 workspace: 财务报告和审定财务报表 catalog: 保存;不兼容或未经核实的版本需要手动更新。 设定 installDependencies 改为 false 以防止依赖性变化;然后将所需的依赖性作为阻断后续。 移徙总是造成 cloudflare.config.ts; 选择 Wrangler 捆绑器也创建 wrangler.config.ts 当 Wrangler 特定工具配置存在时。 现有目标文件从未被覆盖 。 检查 result.followUps 何时 result.status 实值 needs-intervention。 。 。 .

版本与发布记录

@cloudflare/codemods 共发布 18 个版本,首次发布于 2026/08/21;过去 12 个月发布了 18 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.7.5latest2026/11/09今天
0.7.42026/11/054 天前
0.7.32026/11/036 天前
0.7.22026/11/027 天前
0.7.12026/11/028 天前
0.7.02026/10/2912 天前

关于 @cloudflare/codemods 的常见问题

@cloudflare/codemods 是什么?

更新 Cloudflare 开发者项目的代码

如何安装 @cloudflare/codemods?

在项目目录运行 npm install @cloudflare/codemods,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 cloudflare-codemods,可以用 npx cloudflare-codemods 直接运行。

@cloudflare/codemods 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cloudflare/codemods 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cloudflare/codemods 可以商用吗?

@cloudflare/codemods 使用 MIT OR Apache-2.0 许可。可在 MIT、Apache-2.0 中任选其一遵守。选择 MIT 时,宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cloudflare/codemods 的下载量有多少?

根据 npm 官方下载统计,@cloudflare/codemods 在 2026/10/10 – 2026/11/08 这 30 天内被下载 1,211,906 次,日均约 40,397 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cloudflare/codemods 还在维护吗?

最新版本 0.7.5 发布于 2026/11/09(今天);至今共发布 18 个版本,其中过去 12 个月发布了 18 个;首次发布于 2026/08/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。