这套流程不要求你会用终端,也不用手动输入 npm、git 或 wrangler 命令。打开 Codex,新建一个工作空间,后面的建项目、装依赖、改文件、检查、提交和部署都交给它。
你需要做的事情很少:说清楚想要什么,从几套 UI 中选一套,查看 Codex 的改动,在 GitHub 和 Cloudflare 要求登录时完成授权。
本文以 Codex 桌面版演示,但不是必须使用 Codex。可以换成免费的 OpenCode,国内也可以使用 WorkBuddy、QoderWork 或 TRAE Work。只要所用 Agent 能打开项目目录、读写文件、运行命令,并在你授权后操作 GitHub 和 Cloudflare,下面的提示词与流程都可以照搬。界面按钮可能不同,账号登录和授权仍要由你确认。
打开 Codex,新建工作空间
启动 Codex,选择“新建工作空间”,在本地创建一个空文件夹,例如 my-navigation。Codex 只需要访问这个文件夹,不要把整个桌面或主目录交给它。
进入工作空间后,先发一条检查任务:
这是一个全新的空工作空间,我要在这里制作网址导航站。
请先检查当前环境是否具备 Node.js、Git,以及创建 Astro 项目所需的工具。缺少普通项目依赖时可以安装;需要修改系统、登录账号或访问工作空间以外的目录时先停下来告诉我。
这一步只检查环境,不要创建项目。
环境没问题后再谈网站。这样一开始就能发现 Node.js 缺失、目录没有写权限之类的问题。Codex 会运行检查命令,你只看结果,不需要打开终端。
先让 Codex 整理需求
切到 Plan 模式。Codex 中可以使用 /plan 或 Shift + Tab。其他 Agent 没有这个按钮时,直接在消息里写“只做计划,不要创建文件”。
把第一版需求发给它:
我要制作一个极简网址导航站。
使用 Astro 生成静态页面。链接放在独立数据文件中,首页按分类显示 favicon、网站名称和域名,并提供 Google、Bing、Grok 搜索。
桌面端使用四列,手机端一列或两列。不要登录、数据库、后台、统计、评论、大型前端框架和复杂动画。
代码保存在 GitHub 私人仓库,通过 Cloudflare Workers 自动构建和部署。先使用 workers.dev 地址,不购买域名。
请先给出页面清单、数据结构、目录结构、开发顺序和验收条件。现在不要创建文件。
先看计划有没有跑偏。天气、用户系统、在线收藏、CMS 这类需求没有提出,就不要让它顺手加上。
让 Codex 先设计三套 UI
功能定下来后,先看界面方向。正式项目还没开始,推翻一张草图没什么成本。
先为导航站设计三套不同的 UI,不要写正式 Astro 页面。
请在工作空间中创建三份互相独立的 HTML/CSS 原型:
A. 纯文字列表,留白多,适合快速浏览;
B. 紧凑小卡片,显示 favicon、名称和域名;
C. 分类导航与链接内容分区显示。
三套方案使用相同的示例数据和搜索框。不要把不同方案拼在一起。每套都要适配 1440px 桌面和 390px 手机,不要渐变、玻璃效果、大阴影和复杂动画。
请启动本地预览,在 Codex 浏览器里依次打开三个方案,并说明各自的优点和问题。不要替我选择。
Codex 会创建临时原型、启动预览,再把页面打开。你只需要切换桌面和手机宽度看看。
| 方案 | 主要看什么 | 容易出现的问题 |
|---|---|---|
| 纯文字列表 | 查找速度、长标题、信息密度 | 页面可能太像表格 |
| 紧凑卡片 | 图标辨识度、点击区域、留白 | 卡片太重会显得嘈杂 |
| 分类分区 | 长页面定位、分类切换 | 手机端导航容易拥挤 |
选定后直接说方案名称,别让 Codex “综合三套优点”。那样通常会得到一张什么都有的页面。
选择方案 B。
保留紧凑卡片、favicon、网站名称、域名和四列桌面布局。去掉卡片阴影,分类标题左对齐,手机端改为单列。不要加入另外两套方案的表格分隔和侧栏。
请把决定记录到 docs/ui-direction.md,包括必须保留的样式和明确排除的元素。完成后停下来,暂时不要写正式页面。
后面如果页面越改越花,可以让 Codex 对照这份文件收回来。
让 Codex 创建整个项目
退出 Plan 模式,把选好的方向交给 Codex:
现在按照已经确认的计划和 docs/ui-direction.md 开始开发。
请在当前工作空间创建最小 Astro 静态项目,安装需要的依赖,并完成下面的内容:
1. 使用独立 JSON 文件保存网站链接和分类;
2. 用 Astro Content Collection 校验标题、URL、分类和排序字段;
3. 实现选定的首页 UI;
4. 加入 Google、Bing、Grok 搜索切换,并记住用户上次选择;
5. 加入关于页、404、robots.txt、sitemap 和基础 SEO;
6. 只使用必要的前端 JavaScript;
7. 创建项目级 AGENTS.md,记录构建命令、检查命令和 UI 限制。
请分阶段进行。先创建项目并确认开发服务器能运行,再做页面。每个阶段结束时报告修改文件和检查结果。所有命令由你执行,不要让我打开终端。
安装依赖需要联网,Codex 可能会请求批准。看清它准备执行的操作再同意。如果它想修改系统目录、安装与项目无关的软件或读取其他文件夹,先拒绝并问清原因。
链接先写进数据文件
第一次制作导航站,不必先准备几十个网址。可以让 Codex 联网整理一版基础链接数据,用它把分类、页面和 favicon 流程先跑通。
请为导航站生成第一版链接数据。
先建立“常用网站、AI 工具、开发工具、云服务、设计资源、阅读资讯”六个分类,每个分类收录 6 到 10 个仍在正常运营的知名网站。
请联网核对每个网站的官方首页,只使用官方网站,不要加入聚合页、镜像站、广告跳转、邀请链接和无法确认的地址。数据至少包含稳定 ID、标题、URL、分类、分类顺序和链接顺序。
生成后检查重复 URL、无效格式和无法访问的地址,并在浏览器中打开抽查。最后报告链接总数、唯一 URL 数、分类数和核对失败的记录。不要提交和部署,先让我审阅这份初始清单。
这份数据只负责让第一版网站跑起来。打开生成的数据文件,删除自己用不到的网站,调整分类,再让 Codex 重新检查和渲染。
手上已经有书签、表格、JSON 或 YAML 文件,也可以直接拖进工作空间,让 Codex 用你的内容替换示例数据:
请用我提供的链接文件替换当前示例数据。
保留标题、URL、分类和原有顺序,不要自行增加热门网站,也不要擅自修正或替换网址。发现重复 URL、空标题或无效格式时先列出来,由我决定如何处理。
导入完成后报告链接总数、唯一 URL 数、分类数和异常记录,然后运行数据校验与生产构建。
Codex 可以生成起步清单,最终留下哪些网站仍由你决定。
favicon 也交给 Codex 在构建时处理
导航站会加载很多图标。让访客浏览时再去第三方获取,速度和稳定性都不太好。可以让 Codex 写一个构建脚本,提前把图标放进网站。
请增加构建时 favicon 同步功能。
读取导航数据中的 URL,提取并去重域名。从 Google favicon 服务获取 64px 图标,限制并发、设置超时并重试。获取失败时使用本站默认图标。
把图片统一转换成 PNG,保存到 public/favicons,并删除数据中已经不存在的旧图标。将同步步骤接入正式构建。页面使用本站静态图标,不要增加运行时代理 Worker。
完成后检查生成数量、图片类型和失败列表,再运行完整构建。
图标会跟着页面一起部署到 Cloudflare,整个网站只需要一个 Worker 项目。
让 Codex 自己检查页面
功能完成后,不要马上上线。让 Codex 把检查跑完,并在浏览器中实际操作页面。
请对当前项目做上线前检查:
1. 运行 Astro 类型检查和生产构建;
2. 打开本地预览,测试三个搜索引擎;
3. 检查所有分类和链接是否渲染;
4. 检查 favicon 失败回退;
5. 分别检查 1440px、820px、390px 宽度;
6. 检查首页、关于页、404、robots.txt 和 sitemap;
7. 查看 Git diff,确认没有密钥、缓存、构建目录和无关文件。
发现问题直接修复并重新检查。最后给我一份简短结果,不要提交和部署。
打开 Codex 的 Diff 面板逐个文件看。你不需要懂每一行代码,但至少能发现它有没有改错标题、删掉链接、加入没要求的功能。
把 GitHub 和 Cloudflare 一次交给 AI
页面检查通过后,不需要自己照着教程逐条输入 Git 和部署命令。把建仓、上传和发布合并成一个任务交给 Codex 或其他 Agent:
请把当前 Astro 项目保存到 GitHub,并部署到 Cloudflare。
先检查 .gitignore 和 Git diff,确认 node_modules、dist、.astro、.wrangler、环境变量、Token 和本地密钥都不会提交。然后创建名为 my-navigation 的 GitHub Private repository,初始化 Git,提交当前版本,并把 main 分支推送到新仓库。
接着为这个纯静态站配置 Cloudflare Workers Static Assets:静态目录使用 dist,项目名称使用 my-navigation。运行生产构建和 Wrangler dry-run,修复问题后再正式部署。可以的话,再把 Cloudflare 连接到这个 GitHub 仓库,让以后推送 main 时自动发布。
需要登录 GitHub、登录 Cloudflare、确认 OAuth 授权或执行首次正式发布时,打开对应页面并停下来让我确认;不要让我把密码或 Token 发到聊天框。完成后告诉我 GitHub 仓库地址、是否为 Private、提交 ID、workers.dev 地址和线上检查结果。
AI 会完成建仓、提交、推送、配置和部署。你只需要处理账号登录与授权,最后确认四件事:GitHub 仓库是 Private,仓库里没有 .env 或密钥,workers.dev 页面可以正常打开,后续推送 main 能触发新构建。
测试自动部署是不是真的生效
第一次上线成功还不够,再做一次小修改,确认 GitHub 能触发 Cloudflare。
请把首页标题做一个很小的文字调整,用来测试自动部署。
修改后运行检查和构建,查看 Git diff。确认只包含这次文字变化后,提交并推送到 main。然后观察 Cloudflare 构建状态,完成后打开 workers.dev 验证新标题。
如果构建失败,读取完整日志,定位第一个根因,在本地修复和验证后再推送。不要关闭检查或跳过构建脚本。
Cloudflare 出现新构建,线上也能看到修改,整条自动部署链路才算走通。
以后更新网站只需要和 Codex 说话
平时增加链接,可以直接发:
在“开发工具”分类末尾增加 Astro 官方文档:https://docs.astro.build/
保持现有数据格式和排序,不修改其他链接。同步 favicon,运行检查和生产构建,展示 Git diff。确认无误后提交并推送到 main,再检查 Cloudflare 自动部署结果。
写博客、换颜色、调整手机布局也一样。先让 Codex 改和检查,再看 Diff,最后让它提交和推送。
完整流程是:
打开 Codex 工作空间
↓
说明需求并选择 UI
↓
Codex 开发、预览、检查
↓
你查看 Diff 并确认
↓
Codex 提交到 GitHub 私人仓库
↓
Cloudflare 自动构建
↓
Codex 打开线上页面复查
整个过程中,真正需要你亲自处理的只有账号登录、授权确认、UI 选择和最终验收。终端、Git 命令和部署命令都留给 Codex。