@framers/agentos-ext-cloud-cloudflare-pages

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

Cloudflare Pages cloud extension — deploy Pages projects, manage DNS records, and deploy Workers via the Cloudflare API v4.

原始使用文档
文档目录10 节
  1. Installation
  2. Usage
  3. Configuration
  4. Tools
  5. cfDeployPages
  6. cfListProjects
  7. cfConfigureDns
  8. cfCreateWorker
  9. Notes
  10. License

Cloudflare Pages and Workers

This pack gives agents tools to deploy Pages projects from Git repositories, list projects, manage DNS records, and upload Worker scripts. It uses the Cloudflare REST API with bearer-token authentication.

Installation

npm install @framers/agentos-ext-cloud-cloudflare-pages

Peer dependency: @framers/agentos with range >=0.10.40.

Usage

import { AgentOS } from '@framers/agentos';

const agentos = await AgentOS.create({
  extensionManifest: {
    packs: [
      {
        package: '@framers/agentos-ext-cloud-cloudflare-pages',
        options: {
          apiToken: process.env.CLOUDFLARE_API_TOKEN,
          accountId: process.env.CLOUDFLARE_ACCOUNT_ID,
        },
      },
    ],
  },
});

Configuration

OptionSecret idEnvironment variableRequiredDefault
apiTokencloudflare.apiTokenCLOUDFLARE_API_TOKENYesEmpty string
accountIdcloudflare.accountIdCLOUDFLARE_ACCOUNT_IDYesEmpty string
secretsNocontext.secrets, then {}

Explicit options take precedence over secrets, then environment variables. options.secrets takes precedence over context.secrets.

Tools

ToolWhat it does
cfDeployPagesDeploys a Pages project from a Git repository, creating the project if needed.
cfListProjectsLists Pages projects with their repository, branch, subdomain, and latest deployment status.
cfConfigureDnsAdds, removes, lists, or updates DNS records after looking up the zone by domain.
cfCreateWorkerDeploys a Worker script with route patterns, a compatibility date, and environment bindings.

cfDeployPages

ParameterTypeRequiredDescription
gitUrlstringYesGit repository URL.
projectNamestringNoPages project name, auto-generated from the repository name if omitted.
productionBranchstringNoProduction branch name, default main.
buildCommandstringNoBuild command override.
buildOutputDirectorystringNoBuild output directory.
envVarsobjectNoEnvironment variables to set on the project as key-value pairs.

cfListProjects

ParameterTypeRequiredDescription
limitnumberNoMaximum projects to return, default 25, schema description maximum 100.

cfConfigureDns

ParameterTypeRequiredDescription
domainstringYesRoot domain for the Cloudflare zone.
actionstring: add, remove, list, updateNoAction to perform, default list.
recordTypestring: A, AAAA, CNAME, TXT, MXNoDNS record type, described as required for add and update.
namestringNoRecord name or hostname.
contentstringNoIP address, hostname, or text content.
ttlnumberNoTTL in seconds, default 1, which selects automatic TTL.
proxiedbooleanNoWhether to proxy through Cloudflare, default false.
prioritynumberNoPriority for MX records.
commentstringNoOptional comment for the record.
recordIdstringNoRecord ID, required for update and remove.

cfCreateWorker

ParameterTypeRequiredDescription
namestringYesWorker script name used as its identifier.
scriptstringYesJavaScript or TypeScript source in ES modules format with a default export.
routesstring[]NoRoute patterns to bind the Worker to.
compatibilityDatestringNoRuntime compatibility date, default 2024-01-01.
bindingsobjectNoEnvironment variable bindings as key-value pairs.

Notes

Activation fails if the API token or account ID is missing. It verifies the token through the Cloudflare token verification endpoint.

Pages deployment creates projects, sets production environment variables, and triggers a remote build without waiting for completion. The tool deploys to the project named by projectName, or to one named after the repository in gitUrl when it is omitted. The URL parser accepts GitHub, GitLab, and Bitbucket hosts, but project creation always sends the source type github. Build settings are sent when creating a project.

Project environment variables and Worker bindings use plain_text. Worker source is uploaded as worker.js with a JavaScript module content type; the service does not transpile TypeScript. Worker route setup errors are ignored.

DNS add, update, and remove actions change remote records. Adding requires recordType, name, and content; updating and removing require recordId. Updating allows partial fields, including omission of recordType. A domain with no matching zone returns an error.

Project listing forwards limit without enforcing the schema description's maximum. Project and DNS listing fetch a page without following pagination.

License

Apache-2.0

版本与发布记录

@framers/agentos-ext-cloud-cloudflare-pages 共发布 7 个版本,首次发布于 2026/05/02;过去 12 个月发布了 7 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.2.0latest2026/11/114 天前
0.1.52026/11/114 天前
0.1.42026/10/2125 天前
0.1.32026/10/121 个月前
0.1.22026/10/111 个月前
0.1.12026/10/081 个月前

关于 @framers/agentos-ext-cloud-cloudflare-pages 的常见问题

@framers/agentos-ext-cloud-cloudflare-pages 是什么?

Cloudflare Pages cloud extension — deploy Pages projects, manage DNS records, and deploy Workers via the Cloudflare API v4.

如何安装 @framers/agentos-ext-cloud-cloudflare-pages?

在项目目录运行 npm install @framers/agentos-ext-cloud-cloudflare-pages,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@framers/agentos(>=0.10.40)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@framers/agentos-ext-cloud-cloudflare-pages 支持 TypeScript 吗?

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

@framers/agentos-ext-cloud-cloudflare-pages 支持 ESM 还是 CommonJS?

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

@framers/agentos-ext-cloud-cloudflare-pages 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@framers/agentos-ext-cloud-cloudflare-pages 可以商用吗?

@framers/agentos-ext-cloud-cloudflare-pages 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@framers/agentos-ext-cloud-cloudflare-pages 的下载量有多少?

根据 npm 官方下载统计,@framers/agentos-ext-cloud-cloudflare-pages 在 2026/10/16 – 2026/11/14 这 30 天内被下载 20,268 次,日均约 676 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@framers/agentos-ext-cloud-cloudflare-pages 还在维护吗?

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