更麻烦的是,我平时会轮着用不同的 AI IDE 和工具( Cursor 、Trae 、Qoder 、Antigravity 之类,公司报销了不少工具,也不审计,正好拿来干点私货),每换一个工具,就得重新告诉它现在 Mac mini 上是什么状态,哪些服务已经部署了,哪些不用再装,来回同步上下文挺烦的。
一开始我也想过把这些写到各个项目的 README 里,但很快就发现不现实。
我的个人项目比较多,而且很多基础服务都是共用的。比如一个 PostgreSQL 可能几个项目都在用,Grafana 、Loki 、Cloudflare Tunnel 更是整个开发环境共享的。今天为了 A 项目加了一个服务,明天 B 项目可能也会依赖它。如果把环境说明分散到每个项目里,很容易越写越乱,最后谁都不是最新版本。
现在我把这些东西独立出来,单独建了一个 Git 仓库,里面用 Vite 搭了一个文档站,专门维护整个开发环境的部署信息。既方便自己查,也方便分享给朋友,更重要的是,可以作为不同机器、不同 AI Agent 之间同步上下文的载体。
现在流程基本就是:
MacBook 这边需要新增一个服务,就生成一份部署文档,提交到 Git 。
Mac mini 上的 Hermes 拉一下最新文档,按文档完成部署。
部署完成后,再把实际部署结果、端口、启动方式等信息回写到文档里。
这样文档就成了整个开发环境的唯一事实来源( Single Source of Truth )。
我在 MacBook 上开发的时候,只要把这份文档放到工作区,不管用哪个 AI IDE ,都能直接读取当前环境信息,不用每次重新解释:“数据库在哪、日志怎么收、哪些端口已经占用了、Tunnel 怎么跑的……”