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
- Keep context updated: Add relevant information to workspace context files
- Reference patterns: Maintain
.workspace/context/code-patterns.mdwith examples - 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-copilotIDE 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.mdwith 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.