我写博客十几年,换过的地方两只手都数不过来。

最早在新浪博客,那时候还流行“踩空间”,背景音乐自动播放,满屏都是闪亮亮的装饰。我在上面写大学里的那些破事,失恋了、挂科了、宿舍夜谈,什么都往上扔。后来毕业了,回头看那些文字,幼稚是真幼稚,但也真真实实。可惜新浪说关就关,那些文章现在只能在硬盘角落里翻翻备份,好多还打不开了。

后来搬到Blogger,干净是干净了,但总感觉冷清。没有评论,没有互动,像对着空气说话。再后来WordPress火起来,我也跟风折腾:买域名、租主机、装主题、调插件,折腾得比写文章还勤快。最夸张的一次,为了改一个字体样式,我翻了一下午CSS文档,最后发现是缓存没清。那天我对着屏幕发呆:我到底是喜欢写东西,还是喜欢修东西?

之后又试过Medium、简书、Ghost……每个地方都待不久。Medium逼着你付费,简书满屏广告,Ghost倒是清爽,可功能太基础,想加点啥都得自己动手。有一回我在Ghost上写了大半年,突然想加个归档页面,折腾了两天没搞定,一气之下弃坑了。

我想要的是什么?其实特别简单:一个能让我安心写、读者能舒服读的地方。不吵不闹,干干净净,能留下痕迹,也能接住回响。找了一圈没找着——得,自己盖一个吧。

于是就有了 U-Blog

在这里插入图片描述

**动手之前我想得很清楚:不能只盖个门面糊弄人。我要的是整个家——有客厅给人逛,有书房自己写,有仓库存东西,有后门留个通道。**所以一开始就定了调:前台、后台、后端、组件库,全自己来。

前三个月基本是在挖地基。Express搭后端,TypeORM连PostgreSQL,Vue 3做前台,React写后台。为啥前台用Vue后台用React?没啥特别原因,就是想都试试,反正拆开了互不耽误。但我必须承认,一开始是真痛苦。白天上班写代码,晚上回来接着写,有时候为了一个bug熬到凌晨两点,第二天顶着黑眼圈去公司。最难的是搞权限系统——登录、注册、JWT、角色权限、路由守卫,一环扣一环,代码写了一大堆,一跑起来就报403。那天晚上我抽了半包烟,对着屏幕上的红字发呆,心里骂了无数遍“我这是图啥”。

但那种“自己能控制一切”的感觉,让我停不下来。最得意的是一手动态CRUD:只要加个数据库表,增删改查接口自己就跑出来了,再也不用每个模型都写一遍重复代码。我把这个设计写成一篇笔记,发在刚搭好的博客上,居然有人留言说“求开源”。那是我第一次觉得,这事好像不只是我自己在玩。


真正让我觉得“这事能成”的,是把AI请进了工地。

一开始我也跟大多数人一样,拿AI当搜索引擎用:遇到不会的语法问一下,写完代码让AI检查一下。后来发现这样太浪费了——它明明能干活,干嘛只让它当字典?

我开始试着把它当搭档。

Agent式协作:比如要加一个新的“文章标签管理”模块,我不会直接
说“写个标签管理的代码”,而是让AI先去读读仓库里“分类管理”模块怎么写的,然后照着那个风格,把目录结构、命名规范、API路径都保持一致。它输出的代码,我能直接放进项目里,不用再改格式。

按任务选模型:我发现不同AI各有长处。有的擅长拆需求——我说“我想加个评论通知功能”,它能给我列出需要哪些表、哪些接口、哪些前端组件。有的擅长落地代码——把设计变成能跑的东西。有的专门挑刺——写完的代码给它审查,能找出不少边界情况。我现在遇到复杂问题,会先让拆需求的AI帮我理清思路,再让写代码的AI干活,最后让挑刺的AI再审一遍。返工率降了一大截。

MCP(模型上下文协议):为了让AI真能看懂我的项目,我把工程上下文接进去了。这玩意儿一开始配置也挺折腾——要让AI能访问项目文件又不泄露隐私,还要保证它理解项目结构。折腾通了之后,效率提升不是一点半点。我现在可以让AI直接去翻某个文件,看看里面是怎么写的,然后照着改。它不是凭空想象,是在我的工程环境里工作。

Skill(技能模板):我把一些复杂任务拆成固定的步骤。比如“给这个模块写单元测试”,我会拆成:1. 分析模块依赖;2. 设计测试用例;3. 用仓库里的测试工具写代码;4. 跑一遍看看覆盖率;5. 补测遗漏分支。把这个流程写成模板,每次让AI按这个步骤走,结果稳得多。时间长了,这些“技能”就成了我自己的经验库,遇到类似问题直接调模板。

Rule(规则):最重要的其实是“守规矩”。我给这个仓库写了明确的规则和约定——命名用camelCase还是kebab-case、模块怎么分层、API返回格式是什么、包之间依赖顺序怎么定。规则不是绑手脚,是为了过半年回来,还能看懂自己在写什么。AI也要守这些规矩,我会在prompt里附上规则文件,让它照着来。有一次它输出一个文件用了tab缩进,而规则要求用空格,我让它重来,之后再也没出过这种问题。

这么干下来,AI真成了我的搭档。它能干活,但方向、品味、结构,得我自己定。省下来的精力,全花在琢磨功能、设计细节、想下一步怎么走。


房子盖得差不多了,我发现角落里还空着一块。

我想放个什么东西在那儿,不是广告,也不是那种“您好请问有什么可以帮您”的假客服。就想有个能说说话的存在——你懒得翻文章了、想吐槽两句、随便聊聊,它都在。

于是就有了小慧。
在这里插入图片描述

小慧是用OpenClaw搭的。OpenClaw是一套开源的Agent框架,支持插件扩展、记忆管理、工具调用。我当时挑了好几个框架,有的太重,有的文档不全,有的社区没人。OpenClaw刚好够用,而且作者更新挺勤,有问题能在GitHub上直接聊。

我用它把小慧变成了一个“会成长的助手”。刚开始它只能简单回复,后来我给它加了“读文章”的技能——它能读取我的博客文章,理解内容,然后回答相关问题。比如有人问“博主写过关于AI的文章吗”,小慧能翻出《我用AI当搭档的日子》和《模型怎么选》这两篇。再加了“查归档”的技能,它能帮你翻出某年某月写的某篇东西。前几天我找一篇2019年写的游记,自己翻半天没找着,问小慧,它五秒就给我链接了。

现在我还想让它帮我整理草稿、生成摘要、甚至提醒我该写点啥了。OpenClaw的插件机制让我可以慢慢加功能,不用动核心代码。

你知道最惊喜的是什么吗?有一次我写了一半卡住了,随口问小慧:“你觉得这段结尾该怎么收?”它居然把我之前写过的一些类似结尾翻出来,给了我几个选项。那一刻我真觉得,这个角落不只是我在经营,它也在帮我。


现在u-blog已经能住人了,但我还在慢慢添东西。

你点进去能看到:

  • 文章排得舒舒服服——字号、行距、字距我调了无数版,为了确认效果,我打印出来贴在墙上看了三天。还让几个朋友帮忙看,问他们读起来累不累。

  • 归档拉下来能看到时间线——有时候自己翻翻,原来我是从那时候开始关注这个话题的。2018年写了好多影评,2020年全是技术笔记,2023年开始有育儿心得。这些时间线就是我的生活史。
    在这里插入图片描述

  • 热力图和词云——它们不是刻意做的,是写着写着长出来的。热力图让我知道自己哪段时间特别高产,词云提醒我老爱写哪些词。有一次发现“焦虑”这个词出现的频率很高,才意识到那段日子自己状态不太对。这算是博客给我的反馈吧。
    在这里插入图片描述
    在这里插入图片描述

  • 留言和友链都开着——博客不能光输出,也得能接住回响。有时候收到一条真诚的留言,能高兴一整天。上个月有个读者留言说,我写的一篇关于转行的文章给了他勇气,他也辞职去学编程了。我回了一长段,差点写成一篇文章。(友链是蜂窝状的设计!)

在这里插入图片描述
在这里插入图片描述

  • 角落里蹲着小慧——随时等你搭话。目前她最常被问的问题是“有没有推荐的文章”和“博主最近在写啥”。我会定期看看聊天记录,了解读者想知道什么,也算是一种互动。

接下来我打算加几个东西:

  • 文章朗读:用TTS技术,让读者可以“听”博客。我试过几个引擎,最后选了微软Azure的神经语音,听着最自然。现在技术验证已经做完,下一步要集成到前台。
  • 知识图谱:把文章里的关键词、实体抽出来,连成一张网,方便探索关联内容。比如你读一篇关于Vue的文章,图谱能推荐其他前端框架的对比文章,或者我写过的相关项目经验。这个有点难,NLP那块我不熟,但慢慢啃吧。
  • 小慧写摘要:每篇文章自动生成一段摘要,放在列表页,读者扫一眼就知道感不感兴趣。OpenClaw支持调用外部模型,我打算用百川的API,试过效果还行。
  • 写作灵感库:把自己平时记的碎片、摘抄、想法存进去,小慧能帮忙整理、联想,写东西卡壳的时候推一把。现在用的是Notion记录,但太分散,想做成集成在后台的小工具。
  • 移动端优化:目前用Expo + React Native做的移动版还很粗糙,有些页面加载慢,滑动不够顺。最近在重构,目标是能像刷微博一样刷博客。

一步一步来,反正地方是自己的,不着急。


最后说说为什么这个博客叫u-blog。

“u”可以是“your”,你的博客,也是“you”,你。我希望它不只是我的自留地,也能成为每个访客的小角落。你可以只看不说话,也可以留个脚印,或者跟小慧聊几句。你来过,这个地方就有你的痕迹。

我在那儿已经写了小半年,越写越觉得:当初自己动手是值当的。不是因为技术多牛,是因为那儿真的成了我的角落——踏实、自在、想咋样就咋样。就像小时候在老家院子里种的那棵枇杷树,看着它一点点长大,开花结果,心里特别踏实。

如果你也喜欢这种“长期经营一个小角落”的感觉,欢迎来逛逛。不用带啥,随便翻翻,留个言,或者跟小慧聊两句。

在线地址: U-Blog

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐