Turn AI coding into an engineering process.
218
stars
1,172
commits
Sep 10, 2026
updated
Turn AI coding into an engineering process.
Agent definitions that enforce good software engineering: optimizing cost, time, and quality.
Current AI coding is often one-off and ad-hoc. You get code, but you don't get a repeatable process. This leads to inconsistent quality, wasted tokens, and a lack of long-term learning.
Gem Team wraps your AI with a disciplined engineering delivery system. It enforces good software engineering practices automatically, so you get better results with less effort.
Gem Team automatically uses the right model for each kind of work:
This gives you stronger verification where it matters without paying the highest model cost for every task. Configure it once in .gem-team.yaml:
model_routing:
enabled: true
tiers:
premium: "your-strong-model (provider)"
explore: "your-fast-model (provider)"
TL;DR: Gem Team turns AI coding into a structured, repeatable engineering process with built-in quality, efficiency, and learning.
Install APM first:
# macOS / Linux
curl -sSL https://aka.ms/apm-unix | sh
# Windows PowerShell
irm https://aka.ms/apm-windows | iex
# Verify
apm --version
Install Gem Team into your current project:
apm install mubaidr/gem-team --target copilot,claude,cursor,opencode,codex,gemini,windsurf
Or install for one target only:
apm install mubaidr/gem-team --target copilot
Install globally for personal use:
apm install -g mubaidr/gem-team
APM records the resolved commit in apm.lock.yaml. Repeating apm install
replays that lockfile; it does not silently upgrade an existing installation.
Refresh Gem Team explicitly when desired:
# Project-scoped installation
apm update mubaidr/gem-team --yes
# Global installation
apm update -g mubaidr/gem-team --yes
To check for an update to the APM CLI itself, use apm self-update --check.
For reproducible environments, pin a release tag:
apm install 'mubaidr/gem-team#gem-team-v<version>' --target copilot
Replace <version> with a published version from the
GitHub Releases page.
After the first install, commit the generated APM files that belong to your repo, especially apm.yml, apm.lock.yaml, and the generated harness directories such as .github/, .claude/, .cursor/, .opencode/, .codex/, .gemini/, or .windsurf/. Do not commit apm_modules/.
APM can auto-detect targets from existing harness directories, but explicit
--targetis recommended for predictable installs and fresh repositories.Direct Git installs use the canonical sources in
.apm/. Maintainers do not need to commitbuild/; release archives and checksums are generated and attached automatically to each GitHub Release.
Gem Team uses a structured workflow to turn AI coding into a reliable engineering process:
planning_context, and evidence-by-reference keep each agent's token footprint minimal while maximizing cached token reuse across waves.plan.yaml. Pause, resume, or extend work without losing context.Gem Team installs a set of specialized agents that work together under the guidance of an Orchestrator. This team follows a disciplined workflow that includes planning, implementation, verification, and learning.
task_definition with a nested handoff; constraints, evidence, and prior-wave outputs travel through it. Planner receives a bounded planning_context; reviewer uses a dedicated review handoff; every delegate receives only a role-scoped configuration snapshot.| Role | Description |
|---|---|
| Orchestrator | Classifies intent, routes work, tracks state, and enforces verification gates. Never re-verifies specialist output. |
| Planner | Creates bounded wave plans with YAGNI/KISS scope reduction: milestones, routing, handoffs, risks, and criteria. |
| Implementer | Implements features, fixes, and refactors with TDD. Covers happy paths, boundaries, errors, and state transitions. |
| Reviewer | Independent reviews for quality, security, and compliance. Read-only critic mode for decisions. |
| Debugger | Root-cause analysis, stack traces, regression bisection. Adds a reproduction test; never implements fixes. |
| Researcher | Codebase exploration in five budgeted modes: scan, question, audit, trace, deep. |
| Browser Tester | E2E browser tests with visual, accessibility, performance, network, and regression checks. |
| Mobile Tester | Mobile E2E on iOS/Android with Detox, Maestro, or Appium. |
| DevOps | Infrastructure, CI/CD, containers, health checks, rollback, and production approvals. |
| Documentation | Technical docs, READMEs, API references, diagrams, and walkthroughs. |
| Code Simplifier | Removes dead code, reduces complexity, consolidates duplicates, and improves naming. |
| Skill Creator | Extracts high-confidence patterns into reusable SKILL.md files and assets. |
Gem Team works with your favorite AI coding tools:
| Tool | Harness | Description |
|---|---|---|
| Copilot | .github/agents/ | VS Code Copilot / GitHub Copilot CLI |
| Claude | .claude/agents/ | Claude Code |
| Cursor | .cursor/agents/ | Cursor |
| OpenCode | .opencode/agents/ | OpenCode |
| Codex | .codex/agents/ | Codex CLI |
| Gemini | GEMINI.md | Gemini CLI |
| Windsurf | .windsurf/rules/ | Windsurf / Cascade |
Gem Team is designed to work out of the box with smart defaults. You can customize behavior by editing the AGENTS.md file or specific agent definitions in the .apm/agents/ directory.
gem-reviewer uses three independent axes:
review_mode: standard, high, or critic controls review intensity.review_target: plan, task, code, decision, docs, config, or integration selects what is reviewed.review_scope: changed, affected, or full limits the evidence breadth.TRIVIAL/LOW work does not invoke the planner or reviewer during planning. MEDIUM/HIGH work receives one pre-execution plan review: standard for MEDIUM, high for HIGH or high-risk work, and critic for architecture, breaking-change, or cross-domain signals. Later integration review is risk-triggered, not a routine wave gate.
Discussion is answered directly. A requested evaluation or decision becomes a
read-only challenge with review_mode: critic, review_target: decision, and
review_scope: full. Critic mode does not mutate files or claim implementation.
Its subject and context are passed through handoff:
review_mode: critic
review_target: decision
review_scope: full
handoff:
critic_subject:
objective: str
proposal: str
constraints:
- str
alternatives:
- str
evidence:
- str
decision_needed: str
critic_context:
audience: str
time_horizon: str
success_criteria:
- str
known_unknowns:
- str
If you have questions or need help, please open an issue on GitHub.
1,056 commits
116 commits
Turn AI coding into an engineering process.
218
stars
1,172
commits
Sep 10, 2026
updated
Turn AI coding into an engineering process.
Agent definitions that enforce good software engineering: optimizing cost, time, and quality.
Current AI coding is often one-off and ad-hoc. You get code, but you don't get a repeatable process. This leads to inconsistent quality, wasted tokens, and a lack of long-term learning.
Gem Team wraps your AI with a disciplined engineering delivery system. It enforces good software engineering practices automatically, so you get better results with less effort.
Gem Team automatically uses the right model for each kind of work:
This gives you stronger verification where it matters without paying the highest model cost for every task. Configure it once in .gem-team.yaml:
model_routing:
enabled: true
tiers:
premium: "your-strong-model (provider)"
explore: "your-fast-model (provider)"
TL;DR: Gem Team turns AI coding into a structured, repeatable engineering process with built-in quality, efficiency, and learning.
Install APM first:
# macOS / Linux
curl -sSL https://aka.ms/apm-unix | sh
# Windows PowerShell
irm https://aka.ms/apm-windows | iex
# Verify
apm --version
Install Gem Team into your current project:
apm install mubaidr/gem-team --target copilot,claude,cursor,opencode,codex,gemini,windsurf
Or install for one target only:
apm install mubaidr/gem-team --target copilot
Install globally for personal use:
apm install -g mubaidr/gem-team
APM records the resolved commit in apm.lock.yaml. Repeating apm install
replays that lockfile; it does not silently upgrade an existing installation.
Refresh Gem Team explicitly when desired:
# Project-scoped installation
apm update mubaidr/gem-team --yes
# Global installation
apm update -g mubaidr/gem-team --yes
To check for an update to the APM CLI itself, use apm self-update --check.
For reproducible environments, pin a release tag:
apm install 'mubaidr/gem-team#gem-team-v<version>' --target copilot
Replace <version> with a published version from the
GitHub Releases page.
After the first install, commit the generated APM files that belong to your repo, especially apm.yml, apm.lock.yaml, and the generated harness directories such as .github/, .claude/, .cursor/, .opencode/, .codex/, .gemini/, or .windsurf/. Do not commit apm_modules/.
APM can auto-detect targets from existing harness directories, but explicit
--targetis recommended for predictable installs and fresh repositories.Direct Git installs use the canonical sources in
.apm/. Maintainers do not need to commitbuild/; release archives and checksums are generated and attached automatically to each GitHub Release.
Gem Team uses a structured workflow to turn AI coding into a reliable engineering process:
planning_context, and evidence-by-reference keep each agent's token footprint minimal while maximizing cached token reuse across waves.plan.yaml. Pause, resume, or extend work without losing context.Gem Team installs a set of specialized agents that work together under the guidance of an Orchestrator. This team follows a disciplined workflow that includes planning, implementation, verification, and learning.
task_definition with a nested handoff; constraints, evidence, and prior-wave outputs travel through it. Planner receives a bounded planning_context; reviewer uses a dedicated review handoff; every delegate receives only a role-scoped configuration snapshot.| Role | Description |
|---|---|
| Orchestrator | Classifies intent, routes work, tracks state, and enforces verification gates. Never re-verifies specialist output. |
| Planner | Creates bounded wave plans with YAGNI/KISS scope reduction: milestones, routing, handoffs, risks, and criteria. |
| Implementer | Implements features, fixes, and refactors with TDD. Covers happy paths, boundaries, errors, and state transitions. |
| Reviewer | Independent reviews for quality, security, and compliance. Read-only critic mode for decisions. |
| Debugger | Root-cause analysis, stack traces, regression bisection. Adds a reproduction test; never implements fixes. |
| Researcher | Codebase exploration in five budgeted modes: scan, question, audit, trace, deep. |
| Browser Tester | E2E browser tests with visual, accessibility, performance, network, and regression checks. |
| Mobile Tester | Mobile E2E on iOS/Android with Detox, Maestro, or Appium. |
| DevOps | Infrastructure, CI/CD, containers, health checks, rollback, and production approvals. |
| Documentation | Technical docs, READMEs, API references, diagrams, and walkthroughs. |
| Code Simplifier | Removes dead code, reduces complexity, consolidates duplicates, and improves naming. |
| Skill Creator | Extracts high-confidence patterns into reusable SKILL.md files and assets. |
Gem Team works with your favorite AI coding tools:
| Tool | Harness | Description |
|---|---|---|
| Copilot | .github/agents/ | VS Code Copilot / GitHub Copilot CLI |
| Claude | .claude/agents/ | Claude Code |
| Cursor | .cursor/agents/ | Cursor |
| OpenCode | .opencode/agents/ | OpenCode |
| Codex | .codex/agents/ | Codex CLI |
| Gemini | GEMINI.md | Gemini CLI |
| Windsurf | .windsurf/rules/ | Windsurf / Cascade |
Gem Team is designed to work out of the box with smart defaults. You can customize behavior by editing the AGENTS.md file or specific agent definitions in the .apm/agents/ directory.
gem-reviewer uses three independent axes:
review_mode: standard, high, or critic controls review intensity.review_target: plan, task, code, decision, docs, config, or integration selects what is reviewed.review_scope: changed, affected, or full limits the evidence breadth.TRIVIAL/LOW work does not invoke the planner or reviewer during planning. MEDIUM/HIGH work receives one pre-execution plan review: standard for MEDIUM, high for HIGH or high-risk work, and critic for architecture, breaking-change, or cross-domain signals. Later integration review is risk-triggered, not a routine wave gate.
Discussion is answered directly. A requested evaluation or decision becomes a
read-only challenge with review_mode: critic, review_target: decision, and
review_scope: full. Critic mode does not mutate files or claim implementation.
Its subject and context are passed through handoff:
review_mode: critic
review_target: decision
review_scope: full
handoff:
critic_subject:
objective: str
proposal: str
constraints:
- str
alternatives:
- str
evidence:
- str
decision_needed: str
critic_context:
audience: str
time_horizon: str
success_criteria:
- str
known_unknowns:
- str
If you have questions or need help, please open an issue on GitHub.
1,056 commits
116 commits