BMAD-METHOD/workspace-utils/docs/github-copilot.md

11 KiB

BMAD Workspace Integration - GitHub Copilot

Overview

BMAD workspace utilities integrate seamlessly with GitHub Copilot in VS Code, providing enhanced AI-assisted development with intelligent context sharing and collaborative workspace management.

Setup

1. Prerequisites

  • VS Code with GitHub Copilot extension installed
  • GitHub Copilot subscription active
  • BMAD project initialized

2. Initialize Workspace

npm run workspace-init

This creates:

  • Copilot-aware session tracking
  • AI context files optimized for Copilot suggestions
  • Integration with VS Code's workspace settings

3. Verify Integration

npm run workspace-status

Should show:

  • Active session detected (github-copilot)
  • 🤖 AI assistance integration enabled
  • 📁 Copilot context files prepared

GitHub Copilot Integration Features

🤖 AI-Enhanced Development

  • Context-Aware Suggestions: Workspace context informs Copilot suggestions
  • Multi-File Understanding: Copilot can reference workspace context across files
  • Collaborative AI: Workspace tracks AI-assisted code for team visibility
  • Quality Integration: AI suggestions tracked through workspace quality metrics

🧠 Intelligent Context Management

Copilot-Optimized Commands

npm run workspace-init       # Creates Copilot-aware session
npm run workspace-status     # Shows AI assistance metrics
npm run workspace-sync       # Updates context for better Copilot suggestions
npm run workspace-health     # Includes AI code quality checks

AI Context Files

# Context files optimized for Copilot
.workspace/context/copilot-context.md      # Current development context
.workspace/context/code-patterns.md        # Established code patterns
.workspace/context/ai-decisions.md         # AI-assisted decisions
.workspace/quality/ai-metrics.json         # AI code quality tracking

VS Code + Copilot Integration Patterns

1. Enhanced Code Completion

The workspace provides context that improves Copilot suggestions:

// File: .workspace/context/copilot-context.md
# Current Development Context

## Project Patterns
- Using TypeScript with strict mode
- React functional components with hooks
- Jest for testing with custom matchers
- Error handling with custom error classes

## Current Feature: User Authentication
- Implementing OAuth 2.0 flow
- Using JWT tokens for session management
- Validating with Zod schemas
- Following existing AuthService patterns

When Copilot sees this context, it generates more relevant suggestions that match your project patterns.

2. AI-Assisted Agent Handoffs

# Handoff work with AI context
npm run workspace-handoff create --to dev --work "Copilot helped implement auth flow" --notes "AI suggested OAuth patterns, validated with team standards"

# Track AI-assisted development
npm run workspace-sync  # Updates AI metrics and context

3. Quality Tracking for AI Code

# Monitor AI-generated code quality
npm run workspace-health  # Includes AI code metrics

# Sample health report for AI code:
# - Copilot suggestion acceptance rate: 85%
# - AI-generated code coverage: 92%
# - Pattern consistency with existing code: 94%

Best Practices for Copilot Users

🚀 Starting AI-Assisted Development

1. Initialize Context

# Start workspace
npm run workspace-init

# Update context for Copilot
npm run workspace-sync

2. Prepare Context Files

Create .workspace/context/copilot-context.md:

# Development Context for Copilot

## Current Sprint Goals
- Implement user authentication system
- Add data validation layer
- Create responsive dashboard UI

## Code Standards
- TypeScript strict mode
- Functional React components
- Comprehensive error handling
- 90%+ test coverage requirement

## Architecture Patterns
- Clean Architecture with dependency injection
- Repository pattern for data access  
- Command/Query separation
- Event-driven updates

🔧 During Development

Optimizing Copilot Suggestions

  1. Keep context updated: Add relevant information to workspace context files
  2. Reference patterns: Maintain .workspace/context/code-patterns.md with examples
  3. Track decisions: Document AI-suggested approaches in .workspace/decisions/

Context-Driven Development

# Before major feature work
npm run workspace-sync  # Ensures Copilot has latest context

# After Copilot generates significant code
npm run workspace-handoff create --notes "Copilot implemented OAuth flow"

# Regular quality checks
npm run workspace-health  # Monitor AI code quality

📊 AI Code Quality Management

Tracking AI Contributions

The workspace system tracks:

  • AI Suggestion Acceptance Rate: How often you accept Copilot suggestions
  • Code Quality Metrics: Quality of AI-generated vs human-written code
  • Pattern Consistency: How well AI code matches project patterns
  • Test Coverage: Coverage of AI-generated code vs requirements
# View AI metrics
npm run workspace-health --ai-focus

# Sample output:
# 🤖 AI Code Metrics:
#   • Suggestion acceptance: 78%
#   • Quality score: 92/100
#   • Pattern consistency: 89%
#   • Test coverage: 85%

VS Code Workspace Configuration

1. Workspace Settings

Add to .vscode/settings.json:

{
  "github.copilot.enable": {
    "*": true,
    "yaml": false,
    "plaintext": false
  },
  "github.copilot.advanced": {
    "secret_key": "github-copilot-bmad-workspace",
    "length": 500,
    "temperature": 0.1
  },
  "bmad.workspace.integration": true,
  "bmad.workspace.contextFiles": [
    ".workspace/context/copilot-context.md",
    ".workspace/context/code-patterns.md"
  ]
}

2. Tasks Integration

Add to .vscode/tasks.json:

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "BMAD: Workspace Init",
      "type": "shell",
      "command": "npm run workspace-init",
      "group": "build",
      "presentation": {
        "echo": true,
        "reveal": "always",
        "focus": false,
        "panel": "shared"
      }
    },
    {
      "label": "BMAD: Sync Context for Copilot",
      "type": "shell", 
      "command": "npm run workspace-sync",
      "group": "build"
    },
    {
      "label": "BMAD: AI Health Check",
      "type": "shell",
      "command": "npm run workspace-health --ai-focus",
      "group": "test",
      "presentation": {
        "reveal": "always"
      }
    }
  ]
}

3. Keybindings

Add to .vscode/keybindings.json:

[
  {
    "key": "ctrl+shift+w ctrl+shift+i",
    "command": "workbench.action.tasks.runTask",
    "args": "BMAD: Workspace Init"
  },
  {
    "key": "ctrl+shift+w ctrl+shift+s",
    "command": "workbench.action.tasks.runTask", 
    "args": "BMAD: Sync Context for Copilot"
  },
  {
    "key": "ctrl+shift+w ctrl+shift+h",
    "command": "workbench.action.tasks.runTask",
    "args": "BMAD: AI Health Check"
  }
]

Advanced Copilot Integration

1. Context-Aware Prompts

Use workspace context to improve Copilot prompts:

// Example: Using workspace context in comments for better suggestions
// Based on .workspace/context/auth-patterns.md, implement OAuth login
// Following the AuthService pattern established in the workspace
// Include error handling as defined in .workspace/context/error-patterns.md
function loginWithOAuth(provider) {
  // Copilot will generate code matching your established patterns
}

2. AI Decision Tracking

# Track AI-suggested architectural decisions
npm run workspace-handoff create --to architect --work "Review Copilot-suggested auth architecture" --notes "AI suggested JWT with refresh tokens, need validation"

3. Quality Gates for AI Code

# Set up quality gates that include AI metrics
npm run workspace-health --exit-code  # Fails CI if AI code quality below threshold

Troubleshooting

Common Issues

"Copilot not using workspace context"

  • Ensure context files are in .workspace/context/
  • Update context with npm run workspace-sync
  • Restart VS Code to refresh Copilot context

"Poor quality AI suggestions"

  • Check workspace context is current: npm run workspace-status
  • Update code patterns: Edit .workspace/context/code-patterns.md
  • Verify session tracking: Should show github-copilot IDE type

"AI metrics not tracking"

  • Initialize workspace: npm run workspace-init
  • Check health status: npm run workspace-health
  • Verify VS Code workspace settings include BMAD integration

Copilot-Specific Issues

"Suggestions don't match project patterns"

  • Update .workspace/context/copilot-context.md with current patterns
  • Add examples to .workspace/context/code-patterns.md
  • Sync context: npm run workspace-sync

"AI quality scores are low"

  • Review Copilot suggestion acceptance rate
  • Update context files with better examples
  • Consider adjusting Copilot temperature in VS Code settings

Performance Optimization

Context File Management

# Keep context files optimized for Copilot
npm run workspace-cleanup --ai-optimize

# Compress large context files
npm run workspace-sync --compress

Selective AI Context

Only include relevant context for current work:

<!-- .workspace/context/copilot-context.md -->
# Current Focus: Authentication Module

## Relevant Patterns (for this sprint only)
- OAuth 2.0 implementation patterns
- JWT token validation
- Error handling for auth failures

## Not Currently Relevant
<!-- Keep other patterns commented until needed -->
<!-- - Payment processing patterns -->
<!-- - Data visualization patterns -->

Integration Examples

Example 1: Feature Development with AI Assistance

# 1. Initialize workspace
npm run workspace-init

# 2. Prepare context for new feature
echo "Implementing user profile management with Copilot assistance" > .workspace/context/current-work.md

# 3. Sync context for Copilot
npm run workspace-sync

# 4. Develop with Copilot
# (VS Code: Copilot uses workspace context for better suggestions)

# 5. Track AI contribution
npm run workspace-handoff create --work "Profile management with AI assistance" --notes "Copilot suggested efficient CRUD patterns"

# 6. Quality check
npm run workspace-health --ai-focus

Example 2: AI-Assisted Code Review

# 1. After development phase
npm run workspace-sync  # Update context with recent changes

# 2. Create review handoff
npm run workspace-handoff create --to qa --work "Review AI-assisted profile implementation"

# 3. QA checks AI code quality
npm run workspace-health  # Shows AI code metrics

# 4. Address any quality issues
# (Use workspace context to improve code consistency)

This guide optimizes GitHub Copilot integration with BMAD workspace for enhanced AI-assisted development. The workspace system provides context that improves AI suggestions while maintaining team collaboration and code quality.