百分百 AI 编程 !我的新博客诞生记

发布于:2026-01-03 20:49,阅读数:888,点赞数:15


## 引言 如果你是我的老读者,你现在还在之前的网站或 PWA 中访问这篇文章,请你立即清空浏览器缓存并刷新网站,你将看到这篇文章以全新的面貌像你展现。 如果你喜欢之前的简洁(陋)风格,你随时都可以从右上角的设置菜单返回老版本,老版本网站会一直共存。 如果你身处安静的环境中,可以来点我给你准备的背景音乐吧:[点这里](blog-native://music?name=Somnias_a_Luna) 那么现在我们开始吧。 ## 关于 AI 编程 书接上回,我在元旦之前写下了[「【年度总结】2025年度总结」](https://blog.yuusann.com/corpus/article/25003)后,还是觉得自己这一年 AI 编程方面的体验偏少了。 用纯 AI 去做个东西,我知道自己肯定逃不过这一关的,以前在学了新技能后总会做个东西练练手。那么今天它来了。 > 现在的 AI 编程很强,但如果你完全不懂,想要单凭 AI 解决所有问题去做一个网站,就算你有无限的 Token 和市面上最强的模型,现在也还没到时候。 这是我的结论,我把他放在最上面。那么接下来你可以看看我的故事。 ## 我的新博客 没错,这个网站是我纯用 AI 在元旦假期里做的。 我们先来看一下这个项目的规模,它最终的代码一共有 2.6w 行: ``` ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Vuejs Component 24 2960 573 19285 CSS 2 606 40 3674 JavaScript 43 680 270 3629 SVG 1 0 0 1 ------------------------------------------------------------------------------- SUM: 70 4246 883 26589 ------------------------------------------------------------------------------- ``` 所有的代码全部由 AI 完成,工具是`Codex`+`GPT5.2`和`Claude Code`(后面简称`CC`) + `Opus 4.5`,还有一些咨询工作和本地 Agent 工作由`ChatGPT`和`GitHub Copilot`完成,比如协助处理本地文件。 整个项目过程中我手工做的事只有:管理文件,把某两个按钮的代码交换位置,或是微调 CSS 像素值等微小工作。除此之外所有的编码任务都由 AI 完成。 我只布置任务和测试,几乎不 Review 代码。整个工程都是 AI 起底的,Review 的成本太高了。我自动接受所有 AI 改动,只要测试功能正常就入库。主打一个能跑就行。 ![](//cdn.blog.yuusann.com/img/corpus/24001_1.jpg) 作为写了快 10 年客户端的工程师,我对 UI 的要求是很苛刻的。我很高兴这个项目在元旦假期里最终达到了「我的要求」。 日间模式: ![](//cdn.blog.yuusann.com/img/posts/26001_14.jpg) 夜间模式:(咦,截图时候音乐封面没下载完,懒得重新截了) ![](//cdn.blog.yuusann.com/img/posts/26001_15.jpg) 在我手头可测试的设备和浏览器里,支持了日间/夜间双配色模式,响应式适配大小屏幕适配,手机上拥有很多独特的布局设计,全平台 PWA 支持,跨页面状态同步,最后还修复了 Safari 上各种奇奇怪怪的 bug。 我很难拍着胸脯说这个网站没有 bug,UI 实在是太难了。各个系统的各个浏览器上实在是太多问题需要处理了。但我也很自信地说,从零开始只有三天时间,这已经是非常不错的结果了。 ![](//cdn.blog.yuusann.com/img/corpus/21001_02.jpg) ## 开发过程 整个故事的开端是 2025 年的最后一天。 公司给我们免费的`GitHub Copilot`用量,每个月清零。因为听说员工的用量是可以超的,所以在 12 月的最后一天,我就开始完全不管用量地做一些实验。 在把模型链路打通以后,我就正式开始了这个项目。这是我年底结算时候用量: ![](//cdn.blog.yuusann.com/img/posts/26001_2.jpg) 没错我在最后一天直接超了十倍,一天大概用掉了 9 个月的量。 ![](//cdn.blog.yuusann.com/img/corpus/24001_1.jpg) 当我有了一个新的`锤子`却找不到一个能试一下的`钉子`的时候,就想到了我的博客。 这里要提一下之前写的两篇博客: - 2019 年写的:[「回首三年Swift后端之旅,今年我用Swift写前端了」](https://blog.yuusann.com/posts/article/19006) - 2023 年写的:[「我又新写了一款 Swift 服务端框架,这次是基于 Vapor 4」](https://blog.yuusann.com/posts/article/23001) 回过头来发现我的博客居然是前端后端迭代升级的。 在我上线这个项目之前,大家看到的是我 2019 年写的前端和 2023 年写的后端,所以这一次我要把服役了 5 年的前端给迭代掉。 ### 最小版本 在让 AI 实现了一个网站框架之后,我抓了线上的 API 保存成文档让 Claude Code 照着实现接口。我的博客光 API 接口数量就有 20 个,带参数的情况就更多了。这种需要非常精确的重复劳动交给 AI 可以说是最合适的了……吗? > AI 犯蠢小剧场: > > CC 非常快就完成了任务,一切都很顺利。直到有一次发现,我在没有启动服务器的情况下,网页居然有数据。查到最后发现他把我抓给他的 API 数据全部当做 Fallback 打进了包里。 > > ![](//cdn.blog.yuusann.com/img/posts/18002_2.jpg) 最终在 AI 实现了所有 Fetch 类 API 后就简单做出了最简单的列表。 主页: ![](//cdn.blog.yuusann.com/img/posts/26001_3.jpg) 博客列表: ![](//cdn.blog.yuusann.com/img/posts/26001_4.jpg) 文集列表: ![](//cdn.blog.yuusann.com/img/posts/26001_5.jpg) 我认为我的方法是正确的,先对接上后端把最简单的 UI 做出来,然后再让 AI 基于现有的列表进行美化和修改。我的整个网站几乎没有新的列表,都是以前存在的功能。 这个版本是 12 月 31 日下午五点多的版本。到这里其实已经有雏形了,只是所有的列表都是最素的列表。 ### 重新设计 在所有列表都就绪以后,就让 AI 开始根据现有的网页重新设计。 主页: ![](//cdn.blog.yuusann.com/img/posts/26001_6.jpg) 博客列表: ![](//cdn.blog.yuusann.com/img/posts/26001_7.jpg) 文集列表: ![](//cdn.blog.yuusann.com/img/posts/26001_8.jpg) 这次优化后,网页的设计已经和现在非常相似了,比如这个时间线设计也已经基本定型了。 ![](//cdn.blog.yuusann.com/img/posts/26001_10.jpg) 包括「关于」页面也是在这个时期就已经做好了。 ![](//cdn.blog.yuusann.com/img/posts/26001_9.jpg) 这个版本是我在元旦当天下午七点的版本,也是我第一次对外发布的版本。 也就是大概一天半左右的时间,我甚至已经处理完了双版本网站共存的问题上线了,可以说已经完成了 90%。 ### 调整配色 在这个版本上线发给朋友看后,被喷蓝紫配色 AI 味太重。 这已经是个写进 AI 底层代码的问题了,早期被用蓝紫色网页训练了太多。 ![](//cdn.blog.yuusann.com/img/posts/26001_11.jpg) 所以我就开始设计日间模式的配色。 可以说 AI 在除了蓝紫色上毫无审美,我几乎需要手动选择配色,但我确实没有做任何编码工作。作为人类的审美在这个环节里发挥了价值。 这是我刚开始设计日间模式配色的样子: 主页: ![](//cdn.blog.yuusann.com/img/posts/26001_13.jpg) 博客列表: ![](//cdn.blog.yuusann.com/img/posts/26001_12.jpg) 而现在你看到的样子,就是我设计完的样子。 如果你还记得的话,当你第一次打开网页,右上角会有个小气泡提醒你切换日间/夜间模式。如果你没有尝试过的话,我推荐你现在马上试一下,包含了我设计的小彩蛋。 ### 修复问题 随着项目代码变多,整个项目充满了 Bug。 和人类写的代码不同,我们会倾向于复用来少干点活,但是 AI 不是。CC 在项目里写得到处都是独立的代码,整个网页虽然很多元素长相类似,配色相近,但其实基本没有什么复用。同样的灰色蒙版,每个页面的透明度都不一样,阴影都不一样。我的主页,动态页面,搜索结果页面其实存在大量可以复用的 Cell,评论区和留言板的组件也是可以共享的,但是在最开始他们都是分离的。 至此,项目的可维护性开始雪崩。 ![](//cdn.blog.yuusann.com/img/corpus/17015_5.JPG) 这也就是为什么我不 Review 代码,我根本不知道他在写什么。如果我每次都和他仔细探讨每个提交是否可复用,可扩展,那整个项目的速度可能要慢三倍。至此,我要开始还技术债了。 Codex 在可维护性上出了力。它非常慢,但是在复杂的问题上调研地更加仔细,解决方案也更精准。项目里经常出现修了这里,坏了那里的情况。CC 像是一个实习生,他动作很快,但是复杂度高的问题根本搞不定。我们开始频繁地在一个 Bug 上拉扯十几轮。经常会需要 Codex 出马来修一些问题,但是 Codex 实在是太慢了,有时也修不好。有一个在 Safari 上独有的问题最后是我结合二者的修复给了一个方案,由 CC 修复。 这也就是我开头说的那个结论的原因。如果你什么都不懂,只靠 AI,那么你必然会在某一个地方卡住进行不下去。 ![](//cdn.blog.yuusann.com/img/corpus/21001_10.jpg) 我几乎花了一天半来修复各种问题。还记得我做整个网站花了多久吗?也就一天半。我的工作就是坐在电脑面前测试,然后告诉 AI 哪里有 Bug,循环往复。 但是话又说回来,这个模式已经以前要快了很多。放在以前我绝对不可能在三天里码出一个 2.6w 行代码的网页来。 ### 增加功能 在基础功能基本成型以后,我开始做一些捉摸新增一些什么功能。 有了 AI 确实能非常快把我的想法实现,例如: - 炫酷的关于页面。 - 博客音乐播放器。 - 面包屑导航在手机上的可滚动设计。 - Markdown 中的图片预览,可滑动表格,拦截特殊请求,渲染特殊组件(比如音乐按钮)。 - 欢迎界面和切换日/夜间模式时的彩蛋。 还有一些以前嫌麻烦一直没有做的操作,比如 AI 帮忙把博客所有的视频都转成了 HLS。一些运维的脚本也交给 AI 实现了。 ![](//cdn.blog.yuusann.com/img/posts/17015_2.jpg) 后续一定还会有许多问题需要修复,然后稳定一段时间后可以加些有趣的功能玩一玩,把这块地方再利用起来。 ## 结语 这个项目作为我的 AI 实验项目,证明了很多人都证明过的事情: > AI 在编码上确实有能力,也正在改变整个行业。虽然现在能力依然有限,但以发展的眼光来看,未来已至。 我一共用了多少 Token 呢?在元旦重置以后,我的用量又来到了将近 2300%: ![](//cdn.blog.yuusann.com/img/posts/26001_1.jpg) 加起来是 3600%+,我差不多使用了 3 年的量。 ![](//cdn.blog.yuusann.com/img/corpus/23001_19.jpg)


评论:2条


1楼:2026-01-03 21:15:17

隔壁老王:

所以会开源吗😂


2楼:2026-01-03 21:20:37

yuu:

引用:1楼

接的是我自己的服务器,这咋开。😂


返回列表

返回主页