# Quick Start Guide
## For Users
### Installation
1. **Install the VS Code Extension**
```bash
code --install-extension dynamic-grounding-copilot-0.1.0.vsix
```
2. **First Time Setup**
- The extension will automatically prompt to download the MCP server binary
- Click "Install Now" - it downloads the pre-built binary for your platform
- Enter your Google Gemini API key when prompted
- Done! No Rust required.
3. **Get API Key**
- Visit https://aistudio.google.com/app/apikey
- Create a free API key
- Paste into VS Code when prompted
### Usage
Ask GitHub Copilot natural language questions with `@workspace`:
- `@workspace find all authentication code`
- `@workspace how does the payment system work?`
- `@workspace analyze the relationship between these services`
## For Developers
### Creating a Release
1. **Tag and Push**
```bash
git tag v0.1.0
git push origin v0.1.0
```
2. **GitHub Actions Automatically**:
- Compiles binaries for all platforms:
- Windows (x64)
- macOS (Intel x64 & Apple Silicon arm64)
- Linux (x64 & arm64)
- Creates GitHub release
- Uploads all binaries
3. **Extension Auto-Downloads**:
- Detects user's platform
- Downloads correct binary from GitHub releases
- No Rust toolchain needed
### Binary Distribution Flow
```
User installs extension
↓
Extension detects platform (win32/darwin/linux + x64/arm64)
↓
Fetches latest release from GitHub API
↓
Downloads platform-specific binary
↓
Stores in extension global storage
↓
Makes executable (Unix) / Ready to run (Windows)
↓
Starts MCP server
↓
Registers with GitHub Copilot
```
### Supported Platforms
| Windows | x64 | `dynamic_grounding_for_github_copilot-windows-x64.exe` |
| macOS | Intel (x64) | `dynamic_grounding_for_github_copilot-darwin-x64` |
| macOS | Apple Silicon (arm64) | `dynamic_grounding_for_github_copilot-darwin-arm64` |
| Linux | x64 | `dynamic_grounding_for_github_copilot-linux-x64` |
| Linux | arm64 | `dynamic_grounding_for_github_copilot-linux-arm64` |
### Fallback Option
If binary download fails (no internet, unsupported platform):
- Extension offers `cargo install` option
- Opens terminal with install command
- User with Rust can install manually
### Testing Before Release
1. **Build binaries locally**:
```bash
cargo build --release --target x86_64-pc-windows-msvc
cargo build --release --target x86_64-apple-darwin
cargo build --release --target aarch64-apple-darwin
cargo build --release --target x86_64-unknown-linux-gnu
```
2. **Manual test**:
- Upload binaries to a test GitHub release
- Install extension
- Verify download works
## Architecture
**Extension Package**: 1.36 MB (no binaries bundled)
**Downloaded Binary**: ~5-15 MB per platform (only downloads what's needed)
**Total User Download**: ~7-17 MB (extension + binary for their platform)
**Benefits**:
✅ Plug-and-play user experience
✅ No Rust toolchain required
✅ Small extension package
✅ Fast installation
✅ Cross-platform support
✅ Automatic updates via GitHub releases