ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

TeamAI + Git Submodule技能分发:submodules: true配置完整实战指南

TeamAI + Git Submodule技能分发:submodules: true配置完整实战指南 TeamAI Git Submodule技能分发submodules: true配置完整实战指南【免费下载链接】teamai-cliMake Every Team AI Native项目地址: https://gitcode.com/GitHub_Trending/te/teamai-cliTeamAI 是一个让团队 AI 原生的 CLI 工具口号是 Make Every Team AI Native它可以统一管理团队的 skills、rules、agents、hooks 和 MCP并自动下发到 Claude Code、Codex、Cursor 等多种 AI 工具。本篇带你掌握一个进阶能力用Git Submodule 分发技能只需在teamai.yaml里加一行submodules: true团队成员每次teamai pull时就会自动按团队仓钉住的版本填充子模块内容无需任何人手动克隆或初始化。为什么需要 Git Submodule 技能分发 默认情况下团队技能是直接提交在团队知识仓里的。但在这些场景下把技能做成独立仓库再以 submodule 挂进团队仓更优雅技能需要独立版本节奏某个技能由专人维护、单独演进团队仓只负责钉住它的版本技能体积较大或含独立依赖放进主仓会拖慢日常同步多个团队仓想共享同一份技能包submodule 指向同一个技能仓即可天然去重。开启submodules: true后TeamAI 会在每次teamai pull时自动执行git submodule update --init把子模块检出到团队仓钉住的那个精确 commit 上——版本一致性由 Git 本身保证团队成员之间永远不会出现我这边技能是新的、你那边是旧的。3 步开启 submodules: true 配置 第 1 步在团队仓添加技能 submodule假设你已经有一个独立维护的技能仓内含标准的SKILL.md结构在团队知识仓中执行git submodule add 技能仓地址 skills/common git commit -m add skills submodule git push此时skills/common在团队仓里就是一个 submodule 条目记录了指向技能仓的精确 SHA。第 2 步在 teamai.yaml 中开启开关该配置定义在远端团队配置teamai.yaml中对应配置 schema 见 src/types.tssubmodules字段默认关闭。编辑团队仓根目录的teamai.yamlteam: my-team description: 团队 AI 资源仓库 provider: git submodules: true # 开启子模块自动填充提交并合入后所有成员pull时即生效。第 3 步运行 teamai pull 验证teamai pull第一次 pull 会把子模块内容完整检出并部署到各工具的技能目录例如 Claude 的.claude/skills/。之后的每次 pull 都会自动保持子模块与团队仓钉住版本一致无需任何手动操作。详细说明可参考官方文档的「Git 子模块」一节docs/usage-guide.zh-CN.md、docs/usage-guide.md底层机制为什么它又快又稳 子模块同步逻辑集中在 src/pull.ts 的refreshTeamRepo中有三个值得了解的设计细节刻意不做浅克隆。子模块钉住的是精确 SHA而--depth浅取只拉取远端最新提交检出较旧的 pin 会直接报 reference is not a tree。因此 TeamAI 取完整子模块历史保证任何历史 pin 都能被检出。失败不污染缓存。如果某次 pull 中子模块更新失败例如网络或凭据问题TeamAI 会记录警告并保留旧的同步版本号下次 pull 会自动重新完整同步并重试而不会走版本未变化的快速路径被跳过。内容变化也能被感知。子模块更新不会移动父仓的 HEAD仅靠父仓 rev 做缓存键时可能误判无变化而跳过部署。为此 TeamAI 在更新前后对比git submodule status只要磁盘上的子模块树发生了变化比如升级 CLI 后首次填充了原本为空的子模块目录本次 pull 就会强制走完整同步确保工具目录里一定有内容。这个行为的回归测试见 src/tests/pull-submodule-skip-sync.test.ts。两个需要注意的边界情况 ⚠️仅 git 仓后端生效submodules: true只作用于团队仓为 git 后端的安装方式HTTP 源模式init --http没有本地仓库树不适用。私有子模块的凭据子模块拉取依赖环境中现成的 git 凭据。如果你的宿主机采用按命令注入 token的认证方式而不是配置 credential helper私有子模块将无法通过认证——建议为本机配置好 credential helper或让子模块指向公开仓。小结项目说明配置项teamai.yaml中submodules: true默认关闭触发时机每次teamai pull自动执行git submodule update --init版本保证按团队仓钉住的精确 SHA 检出全员一致失败处理保留旧版本号下次 pull 自动重试生效范围git 仓后端一行配置换来的是技能分发的版本可控与零手动维护。如果你的团队已经开始用 submodule 管理技能仓库不妨现在就试试这个开关 【免费下载链接】teamai-cliMake Every Team AI Native项目地址: https://gitcode.com/GitHub_Trending/te/teamai-cli创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表