TL;DR Actualiza a la 2.1.290 o posterior con
claude updatey retoma la sesión conclaude --continue: Claude Code quita solo las imágenes más antiguas y reintenta. Si no puedes actualizar,/compactresume la conversación sin las imágenes y te deja seguir.
"Request rejected as unprocessable by the model" es el rechazo de la API a una petición que lleva demasiadas imágenes, o demasiado grandes. En Claude Code aparece en sesiones largas con cientos de capturas: cada screenshot que toman Playwright MCP, Claude en Chrome o computer use, y cada imagen que pegas con Ctrl+V, se queda en la conversación y viaja en cada petición. Hasta la 2.1.289, una vez que la API rechazaba la petición, la rechazaba en todos los turnos siguientes.
El mensaje completo, tal como lo reconoce Claude Code 2.1.291:
Request rejected as unprocessable by the model (too many or oversized images, or unsupported parameters)
Por qué se quedaba atascada la sesión
La API acepta hasta 600 imágenes por petición (100 en modelos con ventana de 200k), pero avisa de que una petición con muchas imágenes grandes puede fallar antes de llegar a ese número. Claude Code ya recortaba a ese tope en cada petición, quitando las más antiguas. El problema estaba por debajo de ese tope: con varios cientos de capturas la petición lo respetaba y aun así la API podía rechazarla. Claude Code volvía a enviar las mismas capturas en el turno siguiente, y el error se repetía.
La 2.1.290 lo corrigió. Cuando llega este error, Claude Code quita las imágenes más antiguas hasta el primer escalón por debajo de las que lleva (510, 255 o 127) y reenvía la petición. Si la API vuelve a rechazarla, baja al siguiente. Cuando responde, la conversación se queda con ese límite; si ni con 127 responde, deja de quitar y te toca el paso 3. En lugar de cada imagen quitada, el modelo recibe el texto [media removed: request limit]. Esto lo he leído en el código de la 2.1.291, no lo he provocado con una sesión de cientos de capturas.
Cómo salir
1. Actualiza
claude --version
claude update
Por debajo de la 2.1.290 te falta el arreglo. Si claude update no te sube de versión porque instalaste con Homebrew o npm, cómo actualizar Claude Code tiene el comando de cada caso.
2. Retoma la misma sesión
La sesión que tenías abierta sigue con la versión vieja. Sal con /exit y vuelve a ella con la nueva:
claude --continue
El recorte se aplica a cada petición, también a la primera de una sesión retomada, así que no pierdes el trabajo hecho. Lo que sí pierde Claude son las capturas más antiguas: si necesitas que vuelva a ver una, pégala otra vez.
3. Si no puedes actualizar, compacta
/compact
Con una versión fijada por tu empresa o un build antiguo, /compact es la salida. Si el primer intento de resumen falla, Claude Code lo repite cambiando cada imagen de la conversación por el texto [image] (leído en el código de la 2.1.284), así que esa petición ya no lleva imágenes que rechazar. Sigues con un resumen escrito en lugar de las capturas. Si el resumen tampoco sale, /clear y empieza una sesión nueva.
Para que no vuelva a pasarte en sesiones largas de navegador: compacta tú en una pausa natural, antes de acumular cientos de capturas, y cuando Claude solo necesite comprobar la estructura de una página, pídele el árbol de accesibilidad de Playwright en vez de un screenshot. Si en vez de este error te aparece "Prompt is too long", es otro límite: cuándo /compact no basta.
Docs oficiales: Vision, límites por petición · Changelog de Claude Code, 2.1.290