快速创建并部署 Web 应用到 Cloudflare Pages;包含文件覆盖、Git 推送与系统修改的安全确认机制。
快速开发并部署 Web 应用到 Cloudflare Pages,可选推送到 GitHub。
为避免破坏性行为和数据丢失,Agent 在执行此工作流时 必须 遵守以下确认流程, 严禁在未获明确授权时进行高危自动化操作:
deploy.js 之前,必须简要向用户说明将要执行的参数和动作,并征得用户同意。--name) 必填:脚本强制要求提供 --name 参数。如果用户未提供,Agent 必须 先向用户询问,不能随意编造或假定项目名称。--in-place、 --source 可能导致现有文件被覆盖, 必须 先向用户发出明确警告并获取授权。--skip-github。CLOUDFLARE_API_TOKEN 时,必须暂停并请求用户提供或由用户执行授权。brew 或 npm install -g 安装全局依赖(如 gh, wrangler)时, 必须 先向用户申请权限,禁止在未授权时悄悄篡改系统环境。按需检查(不是所有命令都必须执行):
bash
node -v
git --version
gh --version
wrangler --version
gh auth status
wrangler whoami
安装指引(缺什么装什么, 但在执行系统级安装前必须征求用户同意):
bash
# macOS
brew install node
brew install git
brew install gh
npm install -g wrangler
快速步骤:
Create Token。Edit Cloudflare Workers),或自定义最小权限。bash
export CLOUDFLARE_API_TOKEN=your_token_here
注意:在脚本、CI、AI Agent 等非交互环境中,即使执行过
wrangler login,也仍可能需要CLOUDFLARE_API_TOKEN。
bash
node dev_deploy/deploy.js --name my-app --custom
bash
node dev_deploy/deploy.js --name my-app --source ./existing-project
bash
node dev_deploy/deploy.js --name my-app --source ./existing-project --in-place
参数说明示例--name项目名称(必填,小写字母/数字/短横线)todo-app``--custom自定义开发模式---source已有项目目录./my-project``--in-place原地部署(不复制)---projects-dir默认项目目录~/projects``--config配置文件路径~/.config/dev-deploy/config.json``--branchGit 分支名main``--public创建公开仓库(默认私有)---skip-test跳过访问测试---skip-github跳过 GitHub 创建和推送---skip-deploy跳过 Cloudflare 部署-
命令行参数 > 环境变量 > 配置文件 > 默认值
环境变量:
bash
export CLOUDFLARE_API_TOKEN=your_token_here
export PROJECTS_DIR=~/projects
export TEST_DELAY=5000
export MAX_RETRIES=3
export DEFAULT_DOMAIN=pages.dev
export DEFAULT_BRANCH=main
export PAGES_BUILD_OUTPUT_DIR=.
export DEV_DEPLOY_CONFIG=~/.config/dev-deploy/config.json
配置文件默认路径(取首个存在的):
~/.config/dev-deploy/config.json~/.dev-deploy.json--name)。deploy.js:根据授权的参数执行脚本。wrangler: command not found -> npm install -g wranglergh: command not found -> brew install gh(或跳过 GitHub)non-interactive environment ... CLOUDFLARE_API_TOKEN -> 注入 CLOUDFLARE_API_TOKEN 后重试gh auth status 失败 -> gh auth login 后重试TEST_DELAY 或 MAX_RETRIES