Squad
在 GitHub Copilot 中,把项目协作沉淀为可审查的持久化 AI 开发团队。
按维度查看评分与理由
证据显示:README 强调人类监督,但未提供具体的最小权限机制;用户确认仅体现在 'type yes' 的示例中,未系统化;数据流透明度有部分描述(如 decisions.md、orchestration-log),但未详细说明数据流向;敏感数据处理有 PII scrubbing 提及,但未深入;依赖安全有依赖固定和审计,但未全面;外部影响有 watch 模式自动执行,但未明确权限边界;回滚有 upgrade 保留状态,但未提供回滚机制;来源归属有维护者信息,但未验证。扣分原因:多数安全特性仅提及未实现细节。
证据显示:README 与测试文件一致,但存在一些不一致(如 README 说 17 个命令,但表格列出更多);依赖可用性有 package.json 和 lock 文件,但未验证;失败消息有错误恢复分级,但未提供具体错误消息示例。扣分原因:自洽性有轻微不一致,依赖可用性未验证,失败消息不具体。
证据显示:README 描述了多种场景(快速开始、watch 模式、SDK 模式),受众明确;能力边界有描述(如 'not a replacement for engineers'),但未详细;触发精度有路由规则示例,但未全面;环境适配有 Node 版本要求,但未覆盖所有平台。扣分原因:触发精度和边界描述不够详细。
证据显示:信息架构清晰(README 有目录),安装说明详细,命名稳定(有别名),示例丰富,已知限制有 alpha 警告,许可证明确,版本控制有 changesets,维护责任有维护者列表。扣分原因:命名稳定性有别名但可能变化,已知限制仅提及 alpha,版本变更日志未提供,维护责任未验证。
证据显示:输出可用性有决策日志和面包屑,边际价值有并行执行和知识积累,成本效益有成本跟踪但未提供实际数据。扣分原因:成本效益缺乏实际数据支持。
证据显示:README 中的声明部分有测试支持(如测试文件),但未提供交叉验证;事实与推断未明确分离。扣分原因:声明可追溯性有限,交叉验证不足,事实与推断未分离。
- 该仓库为 alpha 软件,API 和 CLI 命令可能变化,生产使用需谨慎。
- watch 模式可自动执行代理,需确保权限边界和审批流程明确。
- 依赖安全未全面验证,建议使用前进行安全审计。
这个 Agent 能做什么,适合哪些场景?
Squad 是面向 GitHub Copilot 的人类主导型 AI 开发团队工具,提供 CLI 与 TypeScript SDK 两个主要组件。它把团队成员、路由规则、决策、成员历史和会话日志写入项目中的 .squad/ 目录,让团队状态随 Git 保存并跨会话保留。使用者通过 copilot --agent squad 或 VS Code 的 Copilot Chat 与团队交互,由协调者把工作分发给不同成员。CLI 还提供初始化、升级、导入导出、远程团队连接和 Ralph 轮询等功能;SDK 则支持以 squad.config.ts 生成 Markdown 团队定义。项目明确处于 alpha 阶段,接口和命令可能在发布间变更。
运行 squad init 后,Squad 会在当前项目创建 .squad/team.md、routing.md、decisions.md、agents/*/charter.md、history.md、identity/ 和 log/ 等状态文件。用户在 GitHub Copilot 中描述任务后,协调者根据 routing.md 分派成员;成员各自在独立上下文读取自身知识,并把学习结果和决策写回项目文件。squad upgrade 更新 squad.agent.md、模板和 GitHub Actions 工作流,同时保留 .squad/ 中的团队状态。squad triage(别名 watch、loop)可轮询议题,生成包含议题和团队状态的临时上下文文件,并在 --execute 时调用配置的代理命令;它还可用 git-notes 或 orphan-branch 持久化轮询状态。SDK-first 模式使用 @bradygaster/squad-sdk 的 defineSquad、defineTeam 和 defineAgent,在 squad.config.ts 中定义团队后通过 squad build 生成 .squad/ Markdown 文件。
- 使用 GitHub Copilot 的全栈开发者,希望把前端、后端、测试等职责写入仓库,并在多个开发会话间保留项目决策。
- 维护 GitHub Issues 的小型工程团队,需要用 squad watch --execute 定期发现可处理议题,并把执行交给 Copilot 会话。
- 正在新建 React 与 Node 项目的开发者,希望通过 squad init --preset default 快速生成成员、章程和路由规则。
- 需要在分支切换后继续保留团队状态的开发者,可使用 squad externalize 将 .squad/ 状态移出工作树。
- 想以 TypeScript 配置而非手写 Markdown 定义团队的工程师,可使用 squad.config.ts 和 squad build 生成团队文件。
这个 Agent 有哪些优点和局限?
- 把团队名单、路由、决策、成员历史和可搜索会话日志保存在 .squad/,团队上下文可随 Git 克隆和跨会话延续。
- 同时提供 CLI、Markdown-first 工作流和 TypeScript SDK-first 工作流,后者可由 squad.config.ts 生成团队 Markdown。
- Ralph watch 提供议题轮询、可选代理执行、健康检查、日志、状态后端及四级错误升级机制。
- 明确采用人工主导模式:优先级、审批与最终变更责任仍由人承担。
- 核心交互明确依赖 GitHub Copilot,兼容性属于平台特定,而非通用模型或 API 代理方案。
- 需要较新的 Node.js、npm、Git SSH agent 和 GitHub CLI;使用 Issues、PRs 与 Ralph 还需通过 gh auth login 完成 GitHub 认证。
- 项目标注为 alpha,README 明确说明 API 与 CLI 命令可能在版本间变化;SDK-first 模式也标为实验性且存在已知问题。
- watch 的 --execute 会启动代理会话;使用 --yolo 会免去逐次工具调用确认,因此采用前应评估本地权限与审查流程。
如何安装或部署这个 Agent?
前提:Node.js >=22.5.0、npm >=10.0.0、带 SSH agent 的 Git,以及用于 GitHub 集成的 GitHub CLI。进入 Git 仓库后运行:
npm install -g @bradygaster/squad-cli
squad init随后为 Issues、PRs 与 Ralph 登录 GitHub:
gh auth login可用 git status 检查仓库,并确认 .squad/team.md 已创建。若要从源码运行,克隆仓库后执行 npm install、npm run build,再运行 node ./packages/squad-cli/dist/cli-entry.js init。
如何使用这个 Agent?
打开 GitHub Copilot CLI 并启动 Squad:
copilot --agent squad --yolo然后用自然语言说明项目或任务,例如“我正在开始一个新项目,请建立团队;我要做一个 React 和 Node 的菜谱分享应用。”确认成员提案后即可开始协作。在 VS Code 中,也可以在 Copilot Chat 选择 Squad agent。要监控议题但不执行,运行 npx @bradygaster/squad-cli watch;要自动执行可处理议题,运行 npx @bradygaster/squad-cli watch --execute --interval 5。SDK-first 模式则创建 squad.config.ts,导入 @bradygaster/squad-sdk 的构建函数,最后执行 squad build。
这个 Agent 与同类方案有什么区别?
Squad 将 GitHub Copilot CLI 作为推荐交互入口,README 已弃用无参数运行 squad 的交互式 shell。与 Markdown-first 默认模式相比,SDK-first 模式通过 squad.config.ts 和 squad build 管理团队,但被标为实验性,生产团队建议使用 Markdown-first。