如何用TeamAI统一分发团队环境变量?env命令完全教程
【免费下载链接】teamai-cliMake Every Team AI Native项目地址: https://gitcode.com/GitHub_Trending/te/teamai-cli
TeamAI(teamai-cli,口号是 “Make Every Team AI Native”)的env命令,让你把团队环境变量集中定义在团队仓库里,一条teamai pull就能自动分发、注入到每位成员的 shell 中——从此告别“每人手动 export、配置漂移、新人环境对不齐”的麻烦。本篇是面向新手的 TeamAI env 命令完整教程,5 分钟跑通全流程。
🎯 为什么需要统一分发团队环境变量?
传统做法是每人自己在~/.zshrc里 export 变量,常见问题有三:
- 配置漂移:A 改了指向预发环境的地址,B 还连着旧环境;
- 新人上手慢:入职第一天要问同事一堆
export命令; - 无法审计:不知道团队到底在用哪些变量、值是什么。
TeamAI 的思路是:环境变量也是一种团队资产。团队在仓库的env/env.yaml里统一声明变量,teamai pull时自动生成可 source 的导出文件并注入你的 shell profile,全团队一键对齐。
⚡ 快速上手:3 条命令添加团队环境变量
以添加一个“团队 API 地址”为例:
# 1. 本地新增(已存在则更新) teamai env add API_ENDPOINT https://api.example.com --description "团队 API 地址" # 2. 推送到团队仓库,让所有人生效 teamai push # 3. 查看结果(默认脱敏显示) teamai env list关键机制:env add只改本地的env/env.yaml,必须再执行teamai push才会同步到团队仓库,之后其他成员teamai pull即可拿到相同配置。想先看看会不会改动,可加全局选项--dry-run预演,不落盘。
📋 env 子命令全览
| 命令 | 作用 | 常用选项 |
|---|---|---|
teamai env/teamai env list | 列出所有团队环境变量 | --reveal明文显示;--verbose附带描述 |
teamai env add <key> <value> | 新增或更新变量 | -d, --description <desc>添加说明 |
teamai env remove <key> | 删除变量(同样需 push 生效) | --dry-run预演 |
teamai push/teamai pull | 把本地变更推给团队 / 拉取团队最新配置 | — |
两个值得记住的细节:
- 默认脱敏:
env list默认只显示前 2 个字符 +****(如AP****),防止终端共享时泄露值;需要明文时显式加--reveal,并会提示“请确认环境无录屏”🔒。 - 变更是延迟提交:add/remove 都只改本地,命令结束会提示
Run 'teamai push' to sync to team repo,避免误操作直接污染团队仓库。
⚙️ 工作原理:变量如何注入你的 shell?
teamai pull时,TeamAI 会完成三步自动化(实现见 src/resources/env.ts):
- 解析团队仓库中的
env/env.yaml,校验格式; - 生成
~/.teamai/env.sh,内容是一系列export KEY='value'——值会被单引号安全转义,含$、反引号等特殊字符也不会被 shell 解释执行,杜绝注入风险; - 注入shell profile:自动在
~/.zshrc(zsh)或~/.bashrc(bash)中写入一段带标记的 source 区块,每次开新终端即自动加载团队变量。
这个注入块是幂等管理的:重复 pull 只会替换标记区块内的内容,不会污染你自己写的其他配置。重新开一个终端后,echo $API_ENDPOINT应能直接输出团队统一配置的值 ✅。
🛡️ 安全提醒:不要把密钥放进 env
env/env.yaml是明文键值对且会提交进团队仓库,所以请遵守一条铁律:
只放非敏感的共享配置(环境地址、开关、默认路径等),真正的密钥、Token 请留在个人未追踪的环境中。
TeamAI 也为此做了配套设计:MCP 配置里写${VAR}占位符引用变量,而不是明文;变量解析顺序为进程环境变量 →env/env.yaml→ 本机~/.teamai/env备份。这样“配置进团队仓库、密钥留在本机”的边界很清晰。
🧹 验证与清理
日常维护只需两条命令:
teamai env list # 检查当前团队变量(脱敏) teamai env list --reveal --verbose # 明文 + 描述,排查问题用 teamai env remove OLD_ENDPOINT # 删掉过时变量,再 teamai push当你卸载 TeamAI 时,注入 shell profile 的 env 区块也会被一并清理,不会留下残余。
📚 延伸阅读
- 环境变量章节(中文):docs/usage-guide.zh-CN.md
- env 子命令实现:src/env-commands.ts
- 注入 shell 的核心逻辑:src/resources/env.ts
- 命令注册(CLI 定义):src/index.ts
- 行为测试用例:src/tests/env-commands.test.ts
✅ 小结
teamai env add/list/remove三条命令完成团队环境变量的定义与分发;- 修改先落本地,
teamai push后才全团队生效; - pull 自动把变量
export进每位成员的 shell,幂等、可逆、可审计; - 记住安全铁律:env 仓库里只放共享配置,密钥永远留在本机。
按这个流程,你的团队将在第一次teamai pull后拥有完全一致的环境变量基线 🚀
【免费下载链接】teamai-cliMake Every Team AI Native项目地址: https://gitcode.com/GitHub_Trending/te/teamai-cli
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考