Forge
March 5, 2026 ยท View on GitHub

A VS Code chat extension that routes AI chat through your own Azure AI Foundry endpoint โ giving your organization full control over model inference. All inference stays within your Azure tenant. Authenticate with Entra ID or API key. No GitHub authentication required. Works in air-gapped and compliance-driven environments.
The extension uses the GitHub Copilot SDK (@github/copilot-sdk) in BYOK (Bring Your Own Key) mode to route all model inference to a private Azure AI Foundry endpoint within your Azure tenant.
๐ Features & Usage โ Authentication methods, code actions, model selector, and usage guide.
Prerequisites
- VS Code 1.93 or later
- GitHub Copilot CLI
- Azure CLI (
az) โ Required for Entra ID authentication (recommended for most environments) - Azure AI Foundry endpoint and model deployment(s)
Quick Start
Ensure you've installed the prerequisites before starting.
-
Install the Forge extension โ Search for "forge-ai" in the VS Code Extensions panel, or install via the VS Code Marketplace. If your environment doesn't have Marketplace access, see Sideload Installation for the sideload option.
-
Configure settings in VS Code (
File > Preferences > Settings, search forForge):Setting Description forge.copilot.endpointYour Azure AI Foundry endpoint URL (e.g., https://myresource.openai.azure.com/)forge.copilot.authMethodAuth method: "entraId"(default) or"apiKey"forge.copilot.modelsDeployment names from your Azure AI Foundry (e.g., ["gpt-4.1", "gpt-4o"])API Key (if using
apiKeyauth): Click the โ๏ธ gear icon in the Forge chat toolbar and select "Set API Key (secure)". -
Open Forge: Click the Forge icon in the VS Code sidebar
-
Send a message: Type a message in the input field, then press Enter to send (Shift+Enter for newline)
-
Multi-turn conversations: The chat maintains session context within the same session
Architecture
Basic
graph TD
subgraph vscode["VS Code"]
sidebar["Forge Sidebar<br/>(WebviewView)"]
exthost["Extension Host<br/>Config ยท CopilotClient"]
creds["Credential Provider<br/>Entra ID / API Key"]
cli["Copilot CLI<br/>(local subprocess)"]
end
azure["Azure AI Foundry"]
sidebar <-->|"postMessage"| exthost
exthost -.->|"getToken()"| creds
exthost <-->|"JSON-RPC (stdio)"| cli
cli -->|"HTTPS"| azure
For a full enterprise topology with Azure API Management, private networking, observability, and Entra ID auth flows, see the example Enterprise Architecture reference.
Sideload Installation
From GitHub Releases (for restricted or air-gapped networks)
- Download the latest
.vsixfile from GitHub Releases - In VS Code, open Extensions (
Ctrl+Shift+X/Cmd+Shift+X) - Click
...โ Install from VSIX... - Select the downloaded
.vsixfile
Configuration
For a quick overview of required and optional settings, see the table below. For detailed explanations, Azure setup instructions, and troubleshooting, see the Configuration Reference.
Core Settings
| Setting | Type | Required | Default | Description |
|---|---|---|---|---|
forge.copilot.endpoint | string | Yes | "" | Azure AI Foundry endpoint URL (e.g., https://myresource.openai.azure.com/) |
forge.copilot.models | string[] | No | [] | Azure AI Foundry deployment names for the model selector. Must match the deployment name in Foundry, not the underlying model name. First entry is the default. |
forge.copilot.wireApi | string | No | "completions" | API format: "completions" or "responses" |
forge.copilot.cliPath | string | No | "" | Path to Copilot CLI binary (if not on PATH) |
forge.copilot.authMethod | string | No | "entraId" | Auth method: "entraId" (DefaultAzureCredential) or "apiKey" |
forge.copilot.systemMessage | string | No | "" | Custom system message appended to the default Copilot system prompt |
Example Configuration
{
"forge.copilot.endpoint": "https://myresource.openai.azure.com/",
"forge.copilot.authMethod": "entraId",
"forge.copilot.models": ["gpt-4.1", "gpt-4o"],
"forge.copilot.wireApi": "completions"
}
Note: The SDK auto-appends
/openai/v1/for.azure.comendpoints โ do not include this path in your endpoint URL.
Contributing
See CONTRIBUTING.md for development setup, building, testing, and packaging instructions.