Docs

VS Code y Copilot

En VS Code los modelos entran por Copilot Chat, así que configurar VS Code y configurar Copilot son lo mismo. Copilot acepta modelos propios a través de su proveedor Custom Endpoint, que habla el formato de OpenAI. Que es exactamente lo que sirve Helmcode.

Aviso: esto afecta al chat y al modo agente. El autocompletado en línea — esas sugerencias grises mientras escribes — sigue siendo de Copilot y no se puede redirigir. Igual con la búsqueda semántica y todo lo que dependa de los embeddings de GitHub: siguen necesitando tu cuenta.

Qué necesitas

Una versión de VS Code con el proveedor Custom Endpoint (llegó en la 1.122; antes había un ajuste github.copilot.chat.customOAIModels que hoy está deprecado), la extensión de Copilot Chat instalada y tu API key de Helmcode.

Configuración

1. Abre el editor de modelos

En el selector de modelos del chat, pulsa el engranaje. O abre la paleta de comandos y busca Chat: Manage Language Models.

2. Añade un proveedor

Elige Add Models y luego Custom Endpoint.

Te pedirá un nombre de grupo, un nombre visible y la API key. Pon Helmcode como nombre y pega tu key, la que empieza por sk-.

Cuando pregunte por el tipo de API, elige Chat Completions.

3. Declara los modelos

Se abre un fichero chatLanguageModels.json. Déjalo así:

[
  {
    "name": "Helmcode",
    "vendor": "customendpoint",
    "apiKey": "${input:helmcodeApiKey}",
    "apiType": "chat-completions",
    "models": [
      {
        "id": "deepseek-v4-flash",
        "name": "DeepSeek V4 Flash",
        "url": "https://api.helmcode.com/v1/chat/completions",
        "toolCalling": true,
        "vision": true,
        "maxInputTokens": 1015808,
        "maxOutputTokens": 32768
      },
      {
        "id": "glm5.3",
        "name": "GLM 5.3",
        "url": "https://api.helmcode.com/v1/chat/completions",
        "toolCalling": true,
        "vision": true,
        "maxInputTokens": 1015808,
        "maxOutputTokens": 32768
      },
      {
        "id": "glm5.3-flash",
        "name": "GLM 5.3 Flash",
        "url": "https://api.helmcode.com/v1/chat/completions",
        "toolCalling": true,
        "vision": true,
        "maxInputTokens": 1015808,
        "maxOutputTokens": 32768
      },
      {
        "id": "qwen3.6",
        "name": "Qwen 3.6",
        "url": "https://api.helmcode.com/v1/chat/completions",
        "toolCalling": true,
        "vision": true,
        "maxInputTokens": 229376,
        "maxOutputTokens": 32768
      },
      {
        "id": "gemma4",
        "name": "Gemma 4",
        "url": "https://api.helmcode.com/v1/chat/completions",
        "toolCalling": true,
        "vision": true,
        "maxInputTokens": 229376,
        "maxOutputTokens": 32768
      }
    ]
  }
]

4. Elige el modelo y pruébalo

Abre el chat, despliega el selector de modelos y elige uno de los que acabas de añadir. Pídele algo corto. Si responde, está saliendo por Helmcode.

Tres detalles que importan

  • La url es la completa, con /chat/completions al final. Esto es distinto del resto de herramientas, donde solo se pone la base. VS Code añade la ruta por su cuenta según el tipo de API, y darle la dirección entera evita que se equivoque.
  • toolCalling: true es lo que habilita el modo agente. Sin eso el modelo aparece en el chat pero no puede usar herramientas ni editar ficheros.
  • maxInputTokens es la ventana menos el presupuesto de salida. VS Code SUMA los dos y trata el resultado como la ventana de contexto, así que los números de arriba son contexto - maxOutputTokens — 1M para deepseek-v4-flash, glm5.3 y glm5.3-flash, 256K para qwen3.6 y gemma4. Si declaras la ventana entera como presupuesto de entrada y encima un presupuesto de salida, VS Code dejará crecer la conversación por encima del límite real, y eso aparece a media sesión como un error de longitud de contexto, sin aviso de compactación.

maxOutputTokens es un presupuesto del cliente, no un tope del servidor: súbelo si necesitas respuestas más largas, recordando que el razonamiento sale de ese mismo presupuesto.

La key

"apiKey": "${input:helmcodeApiKey}" hace que VS Code te la pida y la guarde en su almacén de secretos, en vez de dejarla escrita en el fichero. Es lo que quieres: ese fichero acaba fácilmente en un repositorio o en una copia de seguridad.

Modelo recomendado

glm5.3-flash para el modo agente, que es donde importa el millón de contexto, con deepseek-v4-flash como alternativa sobre la misma cuota. qwen3.6 para preguntas de chat y para todo aquello en lo que prefieras velocidad. Todos los modelos del bloque aceptan imágenes, así que una captura en el chat funciona con cualquiera.

Problemas conocidos

  • El autocompletado no cambia. Es de Copilot y no se puede redirigir a otro proveedor. Si lo que quieres es que las sugerencias en línea salgan de Helmcode, la herramienta es Zed, que sí lo permite.
  • Algunas funciones siguen pidiendo cuenta de GitHub, como la búsqueda semántica sobre el repositorio. No es un problema de tu key.
  • El proveedor llegó en la 1.122. Las versiones anteriores tenían el ajuste github.copilot.chat.customOAIModels, hoy deprecado: si lo tienes puesto, quítalo y usa el proveedor.
  • Si el modelo aparece pero no edita ficheros, casi siempre es que falta toolCalling o está en false.

Copilot fuera de VS Code

Esta página cubre Copilot dentro de VS Code, que es donde vive el proveedor Custom Endpoint. Copilot en JetBrains, en Visual Studio o en su CLI no ofrece el mismo mecanismo de endpoint personalizado.

Si trabajas en JetBrains, la vía para usar Helmcode es otro plugin que acepte una base URL de OpenAI, o Continue, que sí tiene versión para JetBrains.