今年博客最大的变化,就是在 AI 的加持下重新焕发了生机。表面上看,博客似乎没有发生太大变化,但其实已经有点“新瓶装旧酒”的意思了:外观还是熟悉的 SiriBlog,底层却已经和过去完全不一样。
初显身手
事情要从今年五月底说起。受身边同事和公司 AI 浪潮的影响,我订阅了 GPT 的 Plus 套餐,准备试一试最近很火的 Codex。原本是想让它帮我写点代码,但一时又不知道该写什么。正好我的博客一直在用 NexT 主题,而这个主题官方已经很多年没有维护了;我又一直想给博客加一些新功能,于是干脆让 Codex 来帮我改。
我让它做的第一个功能,是代码块折叠。原来的 NexT 主题里,代码块是不能折叠的,所以有些文章一旦贴了比较长的代码,页面就会被拉得很长。读者如果不想看完整代码,也只能一直往下滚,阅读体验并不算好。Codex 改完第一版后,效果比我预期的要好不少。虽然按钮一开始还有点丑,但基础功能已经可用了。它大概只花了两分钟,就帮我写好了代码块折叠的逻辑。之后我又让它继续调整样式,用 CSS 把按钮美化了一下。

经过第二版修改后,按钮已经基本达到了我想要的状态。

升级重构
后来又用了半个月,我对 Codex 的使用越来越熟练,也逐渐发现它的能力比我一开始想象得更强。于是,我开始把一些更复杂、更有挑战性的任务交给它。最近,我尝试把整个 Hexo 博客项目直接交给 Codex 管理和改造。这个博客项目从 2019 年创建以来,Hexo 框架和 NexT 主题就基本没有升级过。现在 Hexo 已经到了 8.x 大版本,而我的项目还停留在 3.9 左右,中间差了接近五个大版本。
如果要升到最新版本,原来的 NexT 主题就很难继续直接适配。而且 NexT 主题本身也早已停止维护。所以我冒出了一个大胆的想法:让 Codex 直接开一个分支,帮我把 Hexo 升级到最新版本;同时让它把 NexT 主题改写成新版本 Hexo 支持的 Nunjucks 语法,并完成整体重构。
整个迁移大概花了三天。我让它一点点推进,一个文件一个文件地改,一个问题一个问题地修。最后,整个项目已经完成迁移,跑出来的效果也非常理想。这个过程真的让我觉得很惊喜。以前我常常羡慕一些新博客主题支持很酷炫的功能,但现在有了 Codex 的帮助,我感觉完全可以基于现在的 NexT 主题继续改造,慢慢打造出一个真正属于自己的新版 Siri 主题。
新增夜间模式
完成底层迁移后,我做的第一个比较完整的主题功能,就是给 SiriNext 补上一套夜间模式。它不是简单地把页面颜色反转,而是重新调整了背景、正文、链接、导航数字、提示框、代码块和标签词云等元素在暗色环境下的层级与对比度。代码块原来的白色折叠渐变换成了暗色渐变,标签词云则保留不同热度的色阶,只是重新选择了一套适合深色背景的配色。经过几轮截图对照和细节修改后,整套页面终于既保留了原来的气质,也更适合夜间阅读。
主题切换按钮被放在左侧“站点概览”面板底部,做成了一个尽量克制的小胶囊按钮,只显示图标和当前状态。每次点击可以在“明亮”“黑暗”“跟随系统”三种模式之间切换,默认跟随系统,也会记住读者上一次的选择。主题配置里还可以决定是否启用这个功能,以及默认使用哪种模式。这个看起来并不复杂的小功能,前后却经过了不少设计和调试,也让我第一次更具体地感受到,今后的 SiriNext 真的可以一点点由自己重新定义。
迁移运行时数据
这次升级里还有一个不太显眼、但很重要的改动:博客的浏览计数和评论数据,也从 LeanCloud 切到了自己的 MySQL。起因是用了七八年的 LeanCloud 突然宣布将关停服务,只给用户留下约一年的数据迁移时间,大约到 2027 年初就会完全停服。而我的博客过去又一直依赖它保存文章访问量和 Valine 评论,如果这部分不迁移,博客计数和评论区都会面临失效的风险。
所以我趁这次升级,把这些运行时数据也一起接回了自己的服务器。读者看到的访问量和评论区基本还是原来的样子,但底层已经换成了自托管的 API 和 MySQL。这样一来,博客不只是框架和主题完成了升级,连这些长期积累下来的数据,也重新回到了自己手里。
自动化文章发布
除了主题和框架升级,另一个很大的变化,是文章发布流程也开始自动化了。以前发布一篇文章,需要在电脑上编辑 Markdown,然后执行 Hexo 命令编译发布。如果文章里有图片,还要做格式转换、尺寸压缩、体积压缩,再上传到图床、导出外链。整个流程非常重,也很容易打消创作积极性。
现在有了 Agent 以后,这些复杂流程都可以自动化处理。我只需要在 Notion 里编辑文章草稿,把注意力放在内容本身。甚至不一定要坐在电脑前,随时随地拿出手机写几句,也可以继续推进一篇文章。这对我来说是一个很大的变化。博客原本只是一个用来记录的地方,但现在它不只是被动地承载内容,也开始被新的工具重新激活。过去因为维护成本太高而搁置的想法,现在突然变得可以一点点实现了。
所以今年的第七周年,表面上看只是博客做了一些小修改;但对我来说,它更像是一次重新启动。