Agent Practice / 01
从 0 开始 Vibe Coding:用 AI Agent 发布个人主页
这篇从真正的零开始:你不需要先学完一门编程语言,也不需要理解复杂框架。我们会先把开发环境搭起来,再让 AI Coding Agent 帮你完成第一个能公开访问的作品。
关于工具选择:本文用 Codex CLI 作为主要示例,但核心流程(建项目 → Agent 生成代码 → 本地预览 → Git 记录 → 发布)适用于所有 AI Coding Agent。每个关键步骤会标注 Claude Code 和 Cursor 的等价操作,你可以根据自己的偏好选择工具。
最终你会得到:
- 一个放在自己电脑上的项目文件夹
- 一个包含 HTML、CSS 和 JavaScript 的个人主页
- 一段可以回看的 Git 修改历史
- 一个托管代码的 GitHub 仓库
- 一个任何人都能打开的
https://你的用户名.github.io/网站
更重要的是,你会理解下面这条关系:
VS Code 打开项目文件夹
↓
终端进入这个文件夹
↓
从这里启动 Codex
↓
Codex 读取和修改文件夹里的文件
↓
Git 记录修改历史
↓
GitHub 保存远端副本
↓
GitHub Pages 把网页发布到互联网
一、先认识这些工具
| 工具 | 在这篇教程里的作用 |
|---|---|
| VS Code | 打开项目文件夹、查看文件、编辑代码和使用终端 |
| Codex | 理解你的需求,创建文件、修改代码并帮助排错 |
| Node.js | 提供 node、npm 和 npx,也用于安装 Codex CLI |
| Python | 运行简单脚本,也可以一条命令启动本地网页服务器 |
| Git | 在本地记录每次修改,支持回看和恢复 |
| GitHub | 在线保存 Git 仓库,方便分享和协作 |
| GitHub Pages | 免费托管仓库中的静态网页 |
注意:GitHub Pages 只能托管 HTML、CSS、JavaScript、图片等静态文件,不能在服务器上运行 Python 或 Node.js 后端。本项目安装 Python 和 Node.js,是为了学习本地开发工具链,不是把它们部署到 GitHub Pages。
二、下载并安装 VS Code
- 打开 VS Code 官方下载页。
- 选择你的操作系统并完成安装。
- 启动 VS Code。
安装后先认识三个区域:
左侧活动栏 中间编辑区 下方终端
Explorer 打开的文件 命令运行位置
查看项目文件 阅读和修改内容 启动 Codex、Python、Git
VS Code 本身不是项目。当你用 VS Code 打开一个文件夹时,这个文件夹才是当前项目的边界。
不要直接把桌面、下载目录或整个用户目录当成项目打开。一个项目应该有自己的独立文件夹,例如:
Desktop/
└── my-homepage/ ← 这一个文件夹就是项目
├── index.html
├── style.css
└── script.js
三、创建并打开第一个项目文件夹
先在桌面创建一个名为 my-homepage 的空文件夹,然后在 VS Code 中选择:
File → Open Folder → 选择 my-homepage
打开后,左侧 Explorer 顶部应该显示 MY-HOMEPAGE。这表示 VS Code 当前工作的根目录就是这个文件夹。
现在选择:
Terminal → New Terminal
也可以使用快捷键:
Ctrl + `
终端会出现在 VS Code 下方。Windows PowerShell 中输入:
Get-Location
macOS 或 Linux 输入:
pwd
输出路径的最后一段应该是 my-homepage。这一步非常重要:终端当前目录决定了接下来命令作用在哪个项目上。
再输入:
Get-ChildItem
macOS 或 Linux 使用:
ls
因为项目还是空的,所以现在不会看到网页文件。
终端里最常用的几个路径概念:
| 写法 | 含义 |
|---|---|
cd 文件夹名 |
进入一个子文件夹 |
cd .. |
回到上一级文件夹 |
. |
当前文件夹 |
code . |
用 VS Code 打开当前文件夹 |
这里的 . 不是省略号,而是“当前目录”。以后你也可以先在终端进入某个项目,再运行 code . 打开它。如果系统无法识别 code 命令,继续使用 VS Code 的 File → Open Folder 即可。
项目、文件夹和仓库是什么关系
| 名称 | 含义 |
|---|---|
| 文件 | 一份具体内容,例如 index.html |
| 文件夹 | 把一个项目的所有文件放在一起 |
| VS Code Workspace | VS Code 当前打开和操作的文件夹 |
| Git 仓库 | 增加了 .git 历史记录的项目文件夹 |
| GitHub 仓库 | Git 仓库放在互联网服务器上的远端副本 |
对这个项目来说,它们指向的是同一份作品,只是所处阶段不同。
四、安装 Node.js、Python 和 Git
安装 Node.js
打开 Node.js 官网,安装当前 LTS 版本。安装完成后关闭并重新打开 VS Code 终端,然后运行:
node --version
npm --version
两个命令都显示版本号,说明 Node.js 和 npm 已经可以使用。
安装 Python
打开 Python 官方下载页,安装当前稳定版本。Windows 安装器如果出现“Add Python to PATH”,请勾选。
安装完成后运行:
python --version
部分 Windows 环境需要使用:
py --version
安装 Git
打开 Git 官方下载页,安装适合你系统的版本,然后运行:
git --version
如果任何命令提示“无法识别”或“command not found”,先关闭并重新打开 VS Code;仍然失败时,再检查安装器是否把程序加入了 PATH。
五、安装并登录 Codex
Codex CLI 官方文档提供终端优先的本地开发方式。在 VS Code 的集成终端中运行:
npm install -g @openai/codex@latest
安装后检查:
codex --version
然后登录:
codex login
按照浏览器中的提示完成 ChatGPT 登录。登录完成后回到 VS Code 终端。
从项目目录启动 Codex
再次确认终端当前位于 my-homepage:
Get-Location
然后启动:
codex
Codex 会把当前目录作为工作目录,读取这里的文件,并在你允许时修改它们。因此不要在用户主目录、桌面根目录或包含私人文件的文件夹中启动 Codex。
codex --yolo 是什么
你可能会看到下面这种启动方式:
codex --yolo
--yolo 是 --dangerously-bypass-approvals-and-sandbox 的别名。根据 Codex 官方命令说明,它会关闭命令审批和沙箱限制,让 Codex 直接执行所有命令。
这不是普通的“少点几次确认”,而是取消两道安全边界。官方只建议在外部已经做好隔离的环境中使用,例如一次性虚拟机、受控容器或专门的 Dev Container。
个人电脑上的普通文件夹:使用 codex
受控的一次性容器或虚拟机:确认隔离后才考虑 codex --yolo
对于第一次练习,请使用 codex。等后续学会 Dev Container、Git 恢复和权限边界后,再尝试 --yolo。
六、让 Codex 创建个人主页
进入 Codex 后,先把目标、范围和验收标准一次说清楚:
请在当前空项目中创建一个个人主页。
要求:
1. 只使用原生 HTML、CSS 和 JavaScript,不使用 React、Vue 或构建工具。
2. 创建 index.html、style.css、script.js 和 .gitignore。
3. 页面包含姓名、个人简介、技能、项目经历和联系方式。
4. 适配手机和桌面,链接可以用键盘访问,颜色对比清晰。
5. 不使用外部图片;先用纯色、排版和简单图标完成。
6. 完成后告诉我创建了哪些文件,以及如何在本地预览。
Codex 完成后,左侧 Explorer 应该出现:
my-homepage/
├── index.html 页面结构和文字
├── style.css 颜色、字体、间距和响应式布局
├── script.js 少量页面交互
└── .gitignore 不需要提交到 Git 的文件规则
不要只看 Codex 的文字回复。逐个打开文件,确认它确实创建了内容。
第一次迭代不要追求复杂
第一版只需要做到:
- 页面能打开
- 文字是你自己的信息
- 手机和电脑都能阅读
- 没有明显错位
- 联系方式链接有效
动画、博客、评论、后台管理都先不做。Vibe Coding 的第一课不是“功能越多越好”,而是让一个小目标完整上线。
七、用 Python 或 Node.js 本地预览
网页文件虽然可以双击打开,但使用本地服务器更接近真实网站环境。
方案 A:Python
在 VS Code 终端中运行:
python -m http.server 8000
Windows 如果只有 py 命令:
py -m http.server 8000
浏览器打开:
http://localhost:8000
方案 B:Node.js
也可以运行:
npx serve .
第一次运行时,npm 可能询问是否下载 serve,确认后会显示本地地址。
两个方案选一个即可。停止服务器时,在终端按 Ctrl + C。
验收页面
至少检查:
- 浏览器没有显示 404
- 页面标题、姓名和简介正确
- 所有链接都能打开
- 缩窄浏览器窗口后文字仍然可读
- 页面没有横向滚动条
- 刷新后样式和交互仍然存在
发现问题时,把现象具体告诉 Codex:
手机宽度下“项目经历”超出屏幕。请先定位 CSS 原因,只修改相关样式,
不要重写整个页面。修改后说明如何验证。
八、用 Git 记录第一版
先配置提交身份,这通常只需要做一次:
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
邮箱只用于标记提交作者,不等于 GitHub 登录密码。希望隐藏真实邮箱时,可以使用 GitHub 提供的 noreply 邮箱。
在 my-homepage 项目终端中运行:
git init
git branch -M main
git status
提交前先查看将要记录的内容:
git add .
git diff --cached
确认没有 .env、密码、Token 或私人文件后提交:
git commit -m "feat: create personal homepage"
git log --oneline
现在项目文件夹已经变成 Git 仓库。Git 保存的是文件变化历史,不会自动上传到互联网。
九、认识 GitHub 并推送代码
Git 和 GitHub 不是同一个东西:
Git = 电脑上的版本记录工具
GitHub = 保存和协作 Git 仓库的网站
登录 GitHub,创建一个 Public 仓库。个人主页建议将仓库命名为:
你的GitHub用户名.github.io
例如用户名是 xiaoming,仓库名就是:
xiaoming.github.io
创建远端仓库时不要勾选自动生成 README、.gitignore 或 License,避免和本地第一次推送产生冲突。
GitHub 会显示仓库地址。回到 VS Code 终端运行:
git remote add origin https://github.com/你的用户名/你的用户名.github.io.git
git remote -v
git push -u origin main
首次推送时通常会打开浏览器完成 GitHub 授权。不要在终端里输入 GitHub 账户密码;按 Git Credential Manager 或浏览器登录流程完成授权。
推送完成后刷新 GitHub 仓库页面,应该能看到 index.html、style.css 和 script.js。
十、用 GitHub Pages 发布网站
对于名为 用户名.github.io 的公开仓库,GitHub 通常会自动识别 Pages。你的地址是:
https://你的用户名.github.io/
如果没有自动发布:
- 打开仓库的
Settings。 - 进入
Pages。 - 在 Build and deployment 中选择从分支部署。
- 选择
main分支和仓库根目录。 - 保存并等待部署完成。
可以参考 GitHub Pages 官方文档。
网站上线后,每次更新都走同一个循环:
git status
git add .
git diff --cached
git commit -m "feat: update homepage"
git push
GitHub Pages 收到新的 main 分支后会重新部署。页面没有立刻变化时,等待几分钟并强制刷新浏览器缓存。
十一、完成后的知识地图
到这里,你已经实际走过一遍现代 AI Coding 的最小闭环:
| 你做的动作 | 背后的概念 |
|---|---|
VS Code 打开 my-homepage |
项目以文件夹为边界 |
| 在集成终端启动 Codex | 命令继承终端当前目录 |
| Codex 创建 HTML/CSS/JS | Agent 把自然语言需求转成文件修改 |
| Python 或 Node 启动服务器 | Runtime 在本地执行命令和程序 |
git commit |
保存一个可恢复的版本快照 |
git push |
把本地提交同步到 GitHub |
| GitHub Pages 部署 | 把静态文件发布为公开网站 |
下一步不是立刻学习更多框架,而是继续迭代这个项目:替换成真实经历、增加一个项目、修复一个移动端问题,并坚持每次修改都先预览、再提交、再推送。
常见问题
终端不在项目目录
先运行 Get-Location 或 pwd。如果路径不对,最简单的处理是关闭终端,在已经打开项目文件夹的 VS Code 中重新选择 Terminal → New Terminal。
codex 无法识别
重新打开 VS Code 后运行 npm --version。npm 正常但 Codex 不存在时,再执行:
npm install -g @openai/codex@latest
本地正常,GitHub Pages 404
检查仓库是否为 Public、首页文件是否准确命名为小写 index.html、Pages 是否选择了 main 分支和根目录。
Codex 改坏了页面
先看变化:
git diff
不要在不理解影响时执行破坏性 Git 命令。把 diff 和问题交给 Codex 分析,或回到最近一次明确保存的提交后再继续。