Skip to content
| Marketplace
Sign in
Visual Studio Code>AI>Vision Proxy for CopilotNew to Visual Studio Code? Get it now.
Vision Proxy for Copilot

Vision Proxy for Copilot

yeguiwu

|
53 installs
| (1) | Free
Multi-model Volcengine Ark provider for Copilot with native multimodal routing and vision proxy fallback.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Vision Proxy for Copilot

A multi-model VS Code language-model provider for Volcengine Ark. It supports Agent Plan and Coding Plan at the same time and only uses a vision proxy when the selected model cannot accept images itself.

Routing

flowchart LR
    A[Copilot request] --> B{Selected model supports vision?}
    B -->|Yes| C[Send text and images directly]
    B -->|No| D[Describe images with vision proxy]
    D --> E[Send text and image descriptions]
    C --> F[Model endpoint selected by plan]
    E --> F

Each configured model declares:

  • The exact Ark model name.
  • Whether it uses Agent Plan or Coding Plan.
  • Whether it supports native image input.
  • Whether it supports the Responses API reasoning-effort option.
  • Its advertised input and output token limits.

Plan endpoints

Plan Default OpenAI-compatible Base URL
Agent Plan https://ark.cn-beijing.volces.com/api/plan/v3
Coding Plan https://ark.cn-beijing.volces.com/api/coding/v3

The plans have independent Base URLs and independently stored API keys.

Setup

  1. Install the extension.
  2. Run Vision Proxy: Set Plan API Key.
  3. Select Agent Plan or Coding Plan and enter that plan's key.
  4. Run the command again if you subscribe to both plans.
  5. Open Copilot Chat and select any configured Vision Proxy model.

Only models belonging to plans with a configured API key are registered in the Copilot model picker. Setting or clearing a plan key refreshes the picker immediately.

Use Vision Proxy: Show Status to inspect both endpoints, key status, and the enabled model routes.

Model configuration

Models are configured with vsionproxy.models. The defaults are:

Model Agent Plan Coding Plan Image handling
Doubao Seed 2.0 Pro Yes Yes Native multimodal
GLM 5.2 Yes Yes Vision proxy
GLM 5.3 Yes Yes Vision proxy
DeepSeek V4 Pro Yes Yes Vision proxy
DeepSeek V4 Flash Yes Yes Vision proxy
Doubao Seed Evolving Yes No Native multimodal
Kimi K3 Yes No Native multimodal
Ark Code Latest No Yes Vision proxy by default

The same model has a separate entry and stable ID for each plan so it always uses that plan's Base URL and API key. Doubao Seed Evolving is registered on Agent Plan by default, matching its current subscription availability.

Example settings.json:

{
  "vsionproxy.agentPlanBaseUrl": "https://ark.cn-beijing.volces.com/api/plan/v3",
  "vsionproxy.codingPlanBaseUrl": "https://ark.cn-beijing.volces.com/api/coding/v3",
  "vsionproxy.models": [
    {
      "id": "glm-5.2-agent",
      "name": "GLM 5.2 (Agent Plan)",
      "model": "glm-5.2",
      "plan": "agentPlan",
      "family": "glm",
      "version": "5.2",
      "maxInputTokens": 1048576,
      "maxOutputTokens": 128000,
      "supportsVision": false,
      "supportsReasoning": true
    },
    {
      "id": "doubao-pro-agent",
      "name": "Doubao Seed 2.0 Pro (Agent Plan)",
      "model": "doubao-seed-2.0-pro",
      "plan": "agentPlan",
      "supportsVision": true,
      "supportsReasoning": true
    },
    {
      "id": "kimi-coding",
      "name": "Kimi K2.5 (Coding Plan)",
      "model": "kimi-k2.5",
      "plan": "codingPlan",
      "maxInputTokens": 262144,
      "maxOutputTokens": 32768,
      "supportsVision": true,
      "supportsReasoning": false
    }
  ]
}

The array in user settings replaces the default array. Set enabled to false to keep an entry without showing it in the model picker.

Vision capability

supportsVision: true sends user images and image-bearing tool results directly to that model. No vision-model request is made.

supportsVision: false sends images to vsionproxy.visionModel first and adds the resulting description to the text-only request. Configure which subscription hosts the proxy model with vsionproxy.visionModelPlan.

Use reasoningEfforts when a model only supports specific reasoning levels. GLM 5.3 and DeepSeek V4 Flash default to low, high, and max.

Do not mark ark-code-latest as vision-capable unless the model selected for it in the Ark console is known to support images; its target can change without a settings update.

Other settings

Setting Default Description
vsionproxy.visionModel doubao-seed-2.0-pro Vision proxy model
vsionproxy.visionModelPlan agentPlan Plan used for the proxy call
vsionproxy.reasoningEffort high Default for models with reasoning enabled
vsionproxy.visionReasoningEffort low Vision proxy reasoning effort
vsionproxy.requestTimeoutSeconds 300 Idle timeout before retry
vsionproxy.maxRetries 2 Transient-error retry count

API keys entered through the command are saved in VS Code SecretStorage. The plain-text agentPlanApiKey and codingPlanApiKey settings only exist as fallbacks.

Compatibility

Existing baseUrl, apiKey, textModel, maxInputTokens, and maxOutputTokens settings are read as migration fallbacks but are deprecated.

Building

npm install
npm test
npm run package

Install the generated package:

code --install-extension vsion-proxy-copilot-0.1.4.vsix --force

Requirements

  • VS Code 1.116.0 or later
  • GitHub Copilot Chat
  • An Agent Plan and/or Coding Plan subscription and API key

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft