Skip to content

Releases

v3.38.41 - Vision Fallback & Capability Fixes

Choose a tag to compare

@github-actions github-actions released this 30 Dec 22:03

Release v3.38.41

🚀 Melhorias no Vision Fallback e Detecção de Capacidades

Esta versão foca em tornar o sistema de Vision Fallback mais robusto e inteligente, garantindo que o redirecionamento para modelos com suporte a visão ocorra de forma transparente, independentemente de como a imagem é enviada.

🛠️ O que mudou?

1. Detecção Inteligente de Conteúdo de Visão

  • Auto-detecção em Texto: Agora o sistema detecta automaticamente se você colou um data:image/ ou uma referência copilot-file:// diretamente no campo de mensagem, mesmo que o checkbox "Include Media" não esteja marcado.
  • Gatilho de Fallback: Se conteúdo de visão for detectado em um modelo que não o suporta (como gpt-4o-mini), o fallback é acionado automaticamente.

2. Correção na Lógica de Capacidades Estáticas

  • Fix Chat Model: Corrigido um erro onde o nó Chat Model falhava ao verificar capacidades em modo offline/estático devido a uma estrutura de objeto incorreta.
  • Suporte Multimodal: A verificação de suporte agora inclui explicitamente a flag multimodal, garantindo compatibilidade com modelos Google Gemini e outros que usam essa nomenclatura.

3. Consistência entre Nós

  • Sincronização da lógica de detecção de visão entre os nós Chat Model, Chat API e OpenAI.
  • Melhoria nos logs de depuração para facilitar a identificação de quando e por que um fallback foi acionado.

📦 Impacto

  • Usuários do GPT-4o Mini: Agora podem enviar imagens com segurança; o sistema cuidará de usar o gpt-4o (ou seu fallback preferido) apenas para o processamento da imagem, economizando tokens e evitando erros de API.

Data do Release: 2025-12-30
Versão: 3.38.41

Release v3.38.40

Choose a tag to compare

@github-actions github-actions released this 30 Dec 21:46

Release Notes - v3.38.40

Release Date: 2025-12-30
Type: Enhancement + Model Sync
Previous Version: 3.38.39

🎯 Summary

Synchronized static model list with GitHub Copilot API data and implemented dynamic vision capability detection. Nodes now prioritize API cache for capability checks, with static list as fallback.

✨ New Features

Dynamic Vision Capability Detection

Before: Only checked static model list for vision support
After: Checks API cache first, then static list as fallback

New DynamicModelsManager Methods:

// Check if model supports vision from API cache
DynamicModelsManager.modelSupportsVision(token, modelId): boolean | null

// Check if model supports tools/function calling
DynamicModelsManager.modelSupportsTools(token, modelId): boolean | null

// Get all capabilities from cache
DynamicModelsManager.getModelCapabilities(token, modelId): {
  vision: boolean;
  tools: boolean;
  streaming: boolean;
  maxContextTokens: number;
  maxOutputTokens: number;
  isPremium: boolean;
} | null

// Get model from cache by ID
DynamicModelsManager.getModelFromCache(token, modelId): CopilotModel | null

Priority Order:

  1. 🥇 API Cache - Most accurate, always up-to-date
  2. 🥈 Static List - Fallback when cache unavailable

📋 Updated Model List

New Models Added (from API)

Model Provider Vision Context Output Category
gpt-5.1 OpenAI ✅ 264K 64K versatile
gpt-5.2 OpenAI ✅ 264K 64K versatile
gpt-5-codex OpenAI ✅ 400K 128K powerful
gpt-5.1-codex OpenAI ✅ 400K 128K powerful
gpt-5.1-codex-mini OpenAI ✅ 400K 128K powerful
gpt-5.1-codex-max OpenAI ✅ 400K 128K powerful
claude-sonnet-4.5 Anthropic ✅ 144K 16K versatile
claude-haiku-4.5 Anthropic ✅ 144K 16K versatile
claude-opus-4.5 Anthropic ✅ 144K 16K powerful
claude-opus-41 Anthropic ✅ 80K 16K powerful
gemini-3-pro-preview Google ✅ 128K 64K powerful
gemini-3-flash-preview Google ✅ 128K 64K lightweight
grok-code-fast-1 xAI ❌ 128K 64K lightweight

Updated Model Capabilities

Model Change
gpt-5 Context: 128K → 400K, Output: 64K → 128K
gpt-5-mini Context: 128K → 264K
claude-sonnet-4 Context: 128K → 216K
gpt-4o-mini Vision: ❌ (confirmed no vision)

New Provider: xAI

Added support for xAI (Grok) models:

  • grok-code-fast-1 - Fast coding model (no vision)

🔧 Technical Changes

GitHubCopilotModels.ts

// New interface field
interface GitHubCopilotModel {
  // ... existing fields
  isPremium?: boolean;  // NEW: Indicates premium subscription required
}

// New manager methods
GitHubCopilotModelsManager.getFreeModels(): GitHubCopilotModel[]
GitHubCopilotModelsManager.getPremiumModels(): GitHubCopilotModel[]

// Updated category types
category: "versatile" | "powerful" | "lightweight" | "reasoning" | ...

// Updated provider types  
provider: "OpenAI" | "Anthropic" | "Google" | "Microsoft" | "xAI"

All Nodes Updated

Vision check flow in ChatModel, ChatAPI, and OpenAI nodes:

// BEFORE: Only static list
const modelInfo = GitHubCopilotModelsManager.getModelByValue(model);
const supportsVision = modelInfo?.capabilities?.vision;

// AFTER: API cache first, then static fallback
let supportsVision = DynamicModelsManager.modelSupportsVision(token, model);
if (supportsVision === null) {
  // Fallback to static list
  const modelInfo = GitHubCopilotModelsManager.getModelByValue(model);
  supportsVision = !!(modelInfo?.capabilities?.vision);
}

📁 Files Changed

  • shared/models/GitHubCopilotModels.ts - Updated model list and added new methods
  • shared/utils/DynamicModelsManager.ts - Added capability check methods
  • nodes/GitHubCopilotChatModel/GitHubCopilotChatModel.node.ts - Dynamic vision check
  • nodes/GitHubCopilotChatAPI/GitHubCopilotChatAPI.node.ts - Dynamic vision check
  • nodes/GitHubCopilotOpenAI/GitHubCopilotOpenAI.node.ts - Dynamic vision check

🔄 Migration Notes

No breaking changes. The static model list is still used as fallback. For best results:

  1. First API call populates the cache with accurate model data
  2. Subsequent calls use cached data for capability checks
  3. Cache expires after 1 hour, auto-refreshes on next call

📊 Default Models Updated

export const DEFAULT_MODELS = {
  GENERAL: "gpt-4.1",         // Free, with vision
  CODING: "gpt-5-codex",      // Premium, best for coding
  VISION: "gpt-4o",           // Free, with vision
  VISION_FALLBACK: "gpt-4.1", // Fallback for vision
  REASONING: "o3-mini",       // Best reasoning
  TOOLS: "gpt-4.1",           // Free with tools
  MULTIMODAL: "gemini-2.5-pro",
  FREE: "gpt-4.1",            // Best free model
  PREMIUM: "gpt-5.2"          // Best premium model
};

Release v3.38.38

Choose a tag to compare

@github-actions github-actions released this 30 Dec 21:02

Full Changelog: v3.38.37...v3.38.38

Release v3.38.37

Choose a tag to compare

@github-actions github-actions released this 30 Dec 20:26

Full Changelog: v3.38.36...v3.38.37

Release v3.38.36

Choose a tag to compare

@github-actions github-actions released this 30 Dec 17:13

Full Changelog: v3.38.35...v3.38.36

Release v3.38.34

Choose a tag to compare

@github-actions github-actions released this 30 Dec 03:41

Full Changelog: v3.38.33...v3.38.34

Release v3.38.33

Choose a tag to compare

@zhiru zhiru released this 29 Dec 21:12

🚀 Novidades

🧪 Test Single Chat Model

  • Adicionada a opção de testar um modelo específico no nó GitHub Copilot Test.
  • Agora é possível selecionar o modelo de uma lista dinâmica (com informações de multiplicador de custo).
  • Permite enviar uma mensagem personalizada para validar a resposta do modelo.

🔧 Workflow de Release

  • Corrigido o workflow do GitHub Actions para não usar um corpo de release fixo e desatualizado.
  • Agora utiliza `generate_release_notes: true` para gerar notas automáticas baseadas nos commits, permitindo também a edição manual sem sobrescrita indesejada de informações antigas.

📦 Instalação

npm install github:zhiru/n8n-nodes-github-copilot#v3.38.33

Release v3.38.32

Choose a tag to compare

@github-actions github-actions released this 29 Dec 21:09

🚀 n8n-nodes-github-copilot v3.38.32

✅ Changes in this release:

  • Fixed Copilot-Vision-Request header for vision/image requests
  • Added automatic detection of image_url content in messages
  • New GitHubCopilotSpeech node for audio transcription
  • New FileChunkingApiUtils and FileOptimizationUtils

📦 Installation (Docker)

# Inside n8n container:
cd /home/node/.n8n/custom
curl -L -o dist.zip https://github.com/zhiru/n8n-nodes-github-copilot/releases/download/v3.38.32/n8n-nodes-github-copilot-dist.zip
unzip -o dist.zip
rm dist.zip

Then restart your n8n container.

Release v3.38.31

Choose a tag to compare

@github-actions github-actions released this 29 Dec 21:00

🔧 Fix: Add required headers for premium models

Premium models (Claude, Gemini, GPT-5, etc.) now work correctly.

Changes

  • Add X-GitHub-Api-Version: 2025-05-01 header
  • Add X-Interaction-Type: copilot-chat header
  • Add OpenAI-Intent: conversation-panel header
  • Add Copilot-Integration-Id: vscode-chat header

Impact

Without these headers, premium models (1x+ multiplier) returned 403 Forbidden.
Free models (0x multiplier) worked without them.

Now all 39 chat-compatible models work correctly.

v3.38.30

Choose a tag to compare

@zhiru zhiru released this 29 Dec 19:52

🎯 Use API billing.multiplier with X-GitHub-Api-Version 2025-05-01

Changes

  • Add billing interface to CopilotModel type with multiplier, is_premium, restricted_to
  • Add X-Interaction-Type and OpenAI-Intent: model-access headers
  • Modify getCostMultiplier() to use billing.multiplier from API when available
  • Keep fallback to ID-based estimation for backward compatibility
  • Now returns 39 models (vs 31) with accurate billing data

Technical Details

With the new X-GitHub-Api-Version: 2025-05-01 header, the API now returns billing.multiplier directly.

Source: microsoft/vscode-copilot-chat networking.ts

See docs/202510261800-billing-multiplier-api-discovery.md for details.