Copilot Agent
GitHub Copilot is GitHub's AI coding assistant, offering multi-model support and native GitHub integration through the MCP (Model Context Protocol) server.
Prerequisites
Before using Copilot with Bloom, ensure you have:
- Active GitHub Copilot Subscription: Individual, Business, or Enterprise plan
- Check your subscription at github.com/features/copilot/plans
- For organization/enterprise accounts: Ask your administrator to enable Copilot access
Installation
Follow the official GitHub Copilot CLI installation guide for your platform:
- macOS/Linux: Homebrew, install script, or npm
- Windows: WinGet or npm
- All platforms: Direct binary download available
After installation, verify it works:
copilot --version
Authentication
Copilot CLI requires GitHub authentication. On first launch, Copilot will prompt you to authenticate. You can also manually authenticate:
copilot /login
Alternatively, use a fine-grained personal access token with "Copilot Requests" permission by setting the GH_TOKEN or GITHUB_TOKEN environment variable.
Configuration
Basic Configuration
# ~/.bloom/config.yaml
agent:
defaultInteractive: copilot
defaultNonInteractive: copilot
Model Selection
Copilot supports multiple AI models. Configure via the agent section:
# ~/.bloom/config.yaml
agent:
defaultInteractive: copilot
defaultNonInteractive: copilot
copilot:
defaultModel: claude-sonnet-4.5
models:
- claude-sonnet-4.5
- claude-opus-4.5
- gpt-5.2-codex
- gemini-3-pro-preview
Configuration Commands
# Set copilot as default
bloom config set-interactive copilot
bloom config set-noninteractive copilot
# Set default model
bloom config set-model copilot claude-sonnet-4.5
# Discover available models from copilot CLI
bloom config models copilot --discover
# Discover and save to config
bloom config models copilot -d -s
Available models depend on your subscription and are discoverable via bloom config models copilot --discover.
Capabilities
| Capability | Supported | Notes |
|---|---|---|
| File Read | Yes | Read files in working directory |
| File Write | Yes | Create and modify files |
| Bash/Terminal | Yes | Execute shell commands |
| Git Operations | Yes | Full git support |
| Web Search | Yes | Search for information |
| Web Fetch | Yes | Fetch web content |
| Session Resume | Yes | Continue previous sessions |
| Human Questions | No | Runs to completion |
| GitHub MCP | Yes | Native GitHub operations |
Unique Features
GitHub MCP Server
Copilot has built-in access to the GitHub MCP server, enabling:
- Issue and PR management
- Repository operations
- GitHub API access without additional setup
Multi-Model Support
Choose from multiple AI providers through a single interface:
- OpenAI (GPT-4o)
- Anthropic (Claude)
- Google (Gemini)
Fine-Grained Permissions
Control tool access with --allow-tool and --deny-tool flags for security-sensitive environments.
Provider-Specific Options
| Option | Type | Default | Description |
|---|---|---|---|
model | string | (default) | Model to use (e.g., claude-3.5-sonnet) |
CLI Flags Reference
When Bloom runs Copilot, it uses these patterns:
# Interactive mode
gh copilot "prompt"
# With model selection
gh copilot --model claude-3.5-sonnet "prompt"
# Resume session
gh copilot --resume <session_id> "prompt"
Troubleshooting
"gh: command not found"
Cause: GitHub CLI not installed
Solution: Install GitHub CLI using the official docs.
"Copilot extension not installed"
Cause: Missing Copilot CLI extension
Solution: Install the extension using the official docs.
"Authentication required"
Cause: Not authenticated with GitHub
Solution:
# Check auth status
gh auth status
# Login if needed
gh auth login
"Copilot access denied"
Cause: No active Copilot subscription
Solution:
- Verify your GitHub account has Copilot access
- Check subscription status at github.com/settings/copilot
- For organization accounts, check with your admin
"Model not available"
Cause: Requested model not in your subscription tier
Solution:
- Check available models for your subscription
- Use a different model
- Contact GitHub support for model access
Best Practices
For GitHub-Heavy Workflows
- Use Copilot when working with GitHub issues and PRs
- Leverage the GitHub MCP for repository operations
- Use multi-model support to pick the best model for each task
Model Selection Guidelines
| Task Type | Recommended Model |
|---|---|
| Code generation | gpt-4o |
| Complex reasoning | claude-3.5-sonnet |
| Fast iterations | gpt-4o-mini |
Security Considerations
For sensitive environments:
# Restrict tool access
gh copilot --deny-tool bash "prompt"
Example Session
# Start interactive session
bloom enter
# Copilot will:
# 1. Use its multi-model capabilities
# 2. Access GitHub MCP for repo operations
# 3. Execute to completion (no human questions)
Comparison with Claude
| Aspect | Copilot | Claude |
|---|---|---|
| Human Questions | No | Yes |
| GitHub Integration | Native MCP | Via tools |
| Model Choice | Multiple | Anthropic only |
| Progress Tracking | Basic | TodoWrite |
Use Copilot when:
- Working heavily with GitHub repos, issues, and PRs
- Want to use non-Anthropic models
- Need fine-grained permission control
Use Claude when:
- Need human-in-the-loop capabilities
- Want TodoWrite progress tracking
- Prefer Anthropic's models