ARTICLE · 1156239
做了两个工具后,我开始重新理解软件开发
做了两个工具后,我开始重新理解软件开发
最近,我做了一个 EPUB 电子书阅读器,又升级了以前开发的 Obsidian 插件 Lumen。
两个工具都实现了一件事:电脑只需要安装 Codex CLI 或 pi,不用提前打开它们,阅读器和插件就可以按需调用其 AI 能力。
做完第二个工具,我突然意识到,我们可能还在用五年、十年前的观念理解软件。
以前开发一个软件,通常要把界面、业务逻辑和执行能力组织成一个完整产品。
但现在,软件可以有不同的分工。
阅读器负责阅读,Obsidian 负责知识管理,Codex 或 pi 负责智能任务的执行。它们通过接口连接,不需要把所有能力都做在一起。
这让我第一次真正理解了 Headless(无头化)的价值。
不过,比无头化本身更重要的,是它改变了我对软件设计的思考。
未来开发软件,不一定要开发 AI 软件。
比如开发一个三维建模软件。
我们未必需要自己做 AI 建模、AI 渲染,也不一定要接入大模型 API。
但在设计软件时,就应该考虑:
它的哪些能力可以开放?外部 Agent 能否理解并操作模型?它能读取什么、修改什么?哪些操作需要用户授权?
也就是说,我们要思考的不仅是人怎么操作软件,还包括其他智能系统怎么操作软件。
我觉得,这可能比急着开发一个 AI 工具更重要。
因为如果产品的全部价值只是调用模型完成某项任务,那么模型能力升级后,这个产品很容易失去优势。
但一个专业阅读器、建模软件或知识管理工具不一样。
它们有自己的专业对象、交互方式和工作场景。它们可以继续存在,也可以不断接入新的智能能力。
与其追着模型的能力开发软件,不如让软件具备接入未来模型能力的条件。
这甚至不一定要求软件本身包含 AI。
它只需要有清晰的架构、可以调用的能力,以及合理的权限边界。
以前我们设计软件,主要考虑人如何使用它。
现在,还要考虑 AI 如何使用它。
这是我做完两个小工具以后,对软件开发最大的认知变化。