HUMAIN Node for Copilot Chat
Bring HUMAIN Node models into GitHub Copilot Chat. Every model available to your
HUMAIN Node API key appears directly in the Copilot model picker — with streaming,
tool calling, and vision support.
Built on VS Code's official Language Model Provider API, the same integration
path Copilot uses for its own models.
Features
- All your models, automatically — the model list is fetched from
GET /v1/models using your key, so the picker only ever shows models you're
allowed to call.
- Streaming — responses stream token-by-token like native Copilot models.
Models that don't support streaming are detected and called non-streamed
automatically.
- Tool calling — models that advertise function-calling support can use
Copilot's tools (file search, terminal, etc.).
- Vision — models that support image input can analyze screenshots and
pasted images.
- Identity override — models answer "which model are you?" with their
HUMAIN Node model ID (optional, see configuration).
- Secure key handling — your API key is stored in VS Code SecretStorage,
never in settings, source control, or logs.
Requirements
- VS Code 1.116 or newer
- A HUMAIN Node account with an API key
Installation
Install from the VS Code Marketplace, or from the command line:
code --install-extension Fawaz.humain-node-copilot
Getting started
- Install the extension.
- Open the Command Palette (
Ctrl+Shift+P) and run HUMAIN Node: Set API Key.
Paste your key when prompted — it is stored securely and never written to disk.
- Open Copilot Chat, click the model picker, and choose a HUMAIN Node model.
- Start chatting.
Tip: run HUMAIN Node: Test Connection any time to verify your key and
see how many models are available to it.
Configuration
| Setting |
Default |
Description |
humainNode.baseUrl |
https://api.node.humain.com/v1 |
HUMAIN Node inference gateway origin (the /v1 base URL). |
humainNode.identityInjection |
true |
Adds a system instruction so the model identifies itself as <model> via HUMAIN Node when asked. Disable to let each model answer from its own training. |
Commands
| Command |
Purpose |
HUMAIN Node: Set API Key |
Store your API key in SecretStorage |
HUMAIN Node: Clear API Key |
Remove the stored API key |
HUMAIN Node: Refresh Models |
Re-fetch the model list from HUMAIN Node |
HUMAIN Node: Test Connection |
Verify the key and list available models |
How it works
The extension registers a VS Code language model chat provider
(vendor: humain) via vscode.lm.registerLanguageModelChatProvider. Copilot Chat
then interacts with it through two callbacks:
provideLanguageModelChatInformation — returns the models from
GET https://api.node.humain.com/v1/models, mapping each model's metadata to
Copilot capabilities:
| HUMAIN metadata |
Copilot capability |
node.supports_function_calling |
tool calling |
node.supports_images |
image input |
node.max_context_tokens |
maxInputTokens |
node.max_output_tokens |
maxOutputTokens |
provideLanguageModelChatResponse — streams
POST /v1/chat/completions (Server-Sent Events) and reports text, tool-call,
and token-usage fragments back to Copilot.
Models whose metadata reports supports_streaming: false — or that reject a
streamed request with non_stream_required — are automatically retried as a
single non-streamed completion, so every model works.
Privacy & security
- Your API key is stored in VS Code SecretStorage and sent only to the
configured gateway (
humainNode.baseUrl).
- Requests go directly from VS Code to HUMAIN Node — no third-party relay.
- The key is never written to settings, logs, or source control.
Development
npm install
npm run compile # build
npm run watch # build on change
Press F5 in VS Code to launch an Extension Development Host for testing.
Release
npm run package # produce humain-node-copilot-<version>.vsix
npx vsce login <publisher-id> # once; paste your Marketplace-scoped PAT
npx vsce publish patch # bump version and publish
License
MIT
HUMAIN Node for Copilot Chat is not affiliated with or endorsed by
HUMAIN. All trademarks belong to their respective owners.