Claude CLI v2.1.154 rompe vLLM local — Un parche de una línea lo soluciona

Claude CLI v2.1.154 introdujo soporte para flujos de trabajo, pero al hacerlo añadió tres nuevos roles de mensajes en la API (ctx, msg y system) que rompieron la compatibilidad con servidores locales de vLLM. La solución es un cambio de una línea en las definiciones del protocolo Anthropic de vLLM.
El problema
Las versiones de Claude CLI ≥2.1.154 ahora envían mensajes con roles más allá de user y assistant. El endpoint de la API Anthropic de vLLM solo aceptaba los dos roles originales, provocando que las solicitudes del CLI fallaran al apuntar a una instancia local de vLLM.
El parche de una línea
El parche actualiza el campo role en vllm/entrypoints/anthropic/protocol.py para permitir los nuevos roles:
--- a/vllm/entrypoints/anthropic/protocol.py
+++ b/vllm/entrypoints/anthropic/protocol.py
@@ -65,7 +65,7 @@ class AnthropicContentBlock(BaseModel):
class AnthropicMessage(BaseModel):
"""Message structure"""
- role: Literal["user", "assistant"]
+ role: Literal["user", "assistant", "ctx", "msg", "system"]Eso es todo. Tras aplicar este cambio, puedes usar los flujos de trabajo más recientes de Claude CLI con modelos locales basados en vLLM como MiniMax-M2.7 (el único modelo probado por el autor).
Si ejecutas un endpoint local compatible con Anthropic en vLLM, aplica este parche para seguir funcionando con Claude CLI ≥2.1.154.
📖 Lee la fuente completa: r/LocalLLaMA
👀 Ver también

Corregir maxTokens del modelo Ollama Cloud: Límite es 16K, no el valor configurado
Ollama cloud limita la salida a 16,384 tokens sin importar la configuración de maxTokens. Establécelo en 14,000 para evitar errores EOF. Reestructura salidas largas o redirige agentes pesados al proveedor directo.

10 Consejos Prácticos para Usar Claude Code de un Usuario de Reddit
Un usuario de Reddit comparte técnicas específicas para Claude Code, incluyendo el uso de /effort high con 'ultrathink' para pensamiento extendido, crear ramas de conversación aisladas con /fork y configurar ganchos personalizados en .claude/settings.json.

Los Patrones de Código Superan las Guías de IA: Portando una Extensión de Firefox a Chrome
Un desarrollador fracasó dos veces al portar una extensión de Firefox a Chrome usando indicaciones de IA, y luego tuvo éxito al extraer la lógica central independiente del navegador con una interfaz BrowserShell, reduciendo el código específico de Chrome a 5 líneas significativas.

Asistente de IA extrae datos de sueño del Apple Watch para la clínica: 5 errores comunes
Un asistente de IA extrajo datos de sueño del Apple Watch en un CSV para una clínica. Problemas clave: tiempo en cama vs dormido, zonas horarias, desplazamiento de fechas, noches sin sueño perdidas y valores de HR inventados.