简单需求自建

传统的自托管方式是这样的:在网上找开源项目,Docker 一把梭,反向代理配置好,SSL 证书一挂,就算完成了。Nextcloud 管文件,Vaultwarden 存密码,Immich 照片备份,Jellyfin 媒体中心。这种方式本身没有任何问题,对于复杂的需求,使用成熟的开源项目是合理的选择。

但对于一些简单的需求,情况就不一样了。比如需要一个简单的书签管理工具,或者一个轻量的笔记应用,去部署一个功能臃肿的开源项目显得有点杀鸡用牛刀。而且这些项目往往包含大量你用不到的功能,不仅占用资源,还增加了维护复杂度。

基于编程代理的方式完全不同。不再去寻找现成的开源项目,而是直接让 AI 帮你写代码。对于一个简单的书签管理工具,编程代理可以在几分钟内写出一个轻量级的实现,只包含你需要的功能。没有多余的配置选项,没有复杂的依赖关系,代码清晰易懂。

这种方式的主要好处是花费的时间更少,而且更有掌控性。使用开源项目,你需要花时间研究它的配置方式,学习它的架构,遇到问题要翻阅文档和 issue。而使用编程代理生成的代码,你完全了解它的实现逻辑,出了问题可以直接定位,想改功能随时可以改。代码是你自己的,不是黑盒。

举一个具体的例子。假设你需要将某个网站的内容转换为 RSS 订阅源。使用开源项目的话,你可能需要找到类似 RSS Hub 这样的工具,然后学习如何配置它,如何编写路由规则,如何处理页面解析。如果页面结构发生变化,你还需要去更新配置文件。

而使用编程代理,你只需要告诉它你的需求,它就会直接写出一个脚本来抓取页面、解析内容、生成 RSS。最重要的是,页面内容的解析逻辑也可以交给编程代理处理。网站改版了?让编程代理重新分析页面结构,更新解析代码。你不需要去研究 HTML 结构,不需要写复杂的 CSS 选择器,编程代理会帮你搞定这些细节。

这种转变的核心在于思维方式的改变。对于复杂的专业需求,继续使用成熟的开源项目是明智的选择。比如 Nextcloud 这种功能齐全的协作平台,或者 Immich 这种强大的照片管理系统,自己从头实现并不现实。编程代理的价值在于那些简单、具体、个性化的需求。与其为了一个简单的功能去部署一个庞大的开源项目,不如让编程代理帮你写一个轻量级的解决方案。

实现起来并不复杂。你需要一台服务器,一个域名,然后在服务器上安装好编程代理。需要什么服务,直接告诉编程代理,它会帮你写代码、配置环境、部署服务。不需要学习复杂的框架,不需要阅读冗长的文档,不需要处理各种依赖冲突。编程代理会处理这些细节,你只需要描述你的需求。对于简单需求,这才是更高效的方式。