Codify 实测:把开发环境配置变成 Terraform 模式
用 JSON5 来定义开发环境,这个思路挺有意思。Codify 的核心逻辑就是想把那种依赖文档、脚本和“口口相传”的环境配置给标准化,搞了一套类似 Terraform 的
下一篇
分享一个Claude账号被封的奇怪规律 →
plan + apply 工作流。我最关注的是它和 Nix 的区别。Nix 虽然强得离谱,但学习曲线简直是噩梦,而且它倾向于接管你的整个系统。Codify 走的是实用主义路线,用 JSON5 降低门槛,安装软件的方式和人手动装没区别,这意味着它能和现有的环境共存,不需要你为了用它而重建整个系统。代价当然是鲁棒性不如 Nix,但对于大多数开发者来说,这种折中反而更高效。
目前它支持的资源库大概 50 多个,覆盖了 Git、SSH、VS Code 以及常见的包管理器(Homebrew/apt/dnf),基本能覆盖主流的开发工具链。
具体的配置逻辑大致是这样的:
{
// 假设的配置结构
resources: {
vscode: {
installed: true,
extensions: ["esbenp.prettier-vscode", "dbaeumer.vscode-eslint"]
},
homebrew_packages: ["git", "node", "python3"]
}
}实操起来,它的流程是:
一、编写 JSON5 配置文件定义你需要的工具和设置。
二、运行 plan 查看将要发生的变更(防止误删)。
三、执行 apply 正式部署到本地。
四、如果环境变了,用 refresh 同步状态。
这种声明式管理环境的方案比写几百行 .sh 脚本要清晰得多。不过,私有插件市场还没开放(据说在搞安全验证),目前的扩展能力主要依赖于官方维护的资源库。
源码地址:
https://github.com/codifycli/codify