SuperAPI AI 工具集

nuxt-env

部署与运维

查看项目

更新于 10-16 04:57

技能介绍

用途:在 Nuxt 项目中建立基于 SOPS + age 的加密环境变量管理流程,适用于需要把 .env 安全共享给团队与 CI 的场景,也支持将项目接入 env:pull、env:push、env:encrypt、env:decrypt 工作流。

主要能力:检查并安装系统依赖 sops 与 age-keygen(缺失时 brew install sops age);确认目标项目 devDependencies 含 chalk(缺失则 bun add -d chalk);检查并生成 age 密钥对(test -f ~/.config/sops/age/keys.txt,缺失时 mkdir -p ~/.config/sops/age && age-keygen -o ~/.config/sops/age/keys.txt),并用 age-keygen -y 显示公钥供写入 .sops.yaml 与团队共享。随后创建 secrets 与 .tmp 目录、配置 .gitignore(忽略 .tmp/ 与明文 JSON,保留加密文件)、创建 .sops.yaml(需将 AGE_PUBLIC_KEY_HERE 替换为真实 age 公钥)、复制脚本 sops-bundle.ts、env-variables.ts、libs/load-env.ts,并向 package.json 写入 env:export、env:apply、env:apply:dry、env:decrypt、env:encrypt、env:pull、env:push 命令,最后做安装与文件校验。

使用方式:初始化后,bun run env:push 导出 .env 并加密;bun run env:pull 解密并写回 .env;env:encrypt 将 .tmp/env-bundle.json 加密为 secrets/env-bundle.sops.json;env:decrypt 反向还原;env:export 导出 JSON;env:apply 写回 .env,env:apply:dry 为试运行。

限制与注意:涉及系统依赖安装、密钥生成与 .gitignore 修改,需在目标项目根目录操作;明文 JSON 不应提交,只有加密文件被跟踪;脚本若已存在会跳过并警告。环境变量格式、错误处理、权限模型等资料暂未提供。