Modelos gratuitos de OpenRouter para Kilo Code: selección y pruebas de herramientas
Elige un candidato y comprueba el ciclo de herramientas
Para una primera prueba gratuita en Kilo Code, cohere/north-mini-code:free es un candidato concreto. Su endpoint público anuncia precios de entrada y salida cero, tools y tool_choice. Eso permite seleccionarlo para una prueba pequeña de herramientas. No demuestra que sea el mejor modelo para tu repositorio.
El 23 de octubre de 2026 consultamos la documentación oficial y descargamos el catálogo público de OpenRouter. Verificamos los comandos de metadatos que aparecen abajo. No enviamos solicitudes de inferencia ni probamos herramientas en Kilo. Tampoco medimos latencia ni comparamos calidad de código. Usa esta captura fechada como punto de partida y elige un modelo que complete la misma tarea en tu versión de Kilo.
Elige el proveedor antes que el modelo
El proveedor integrado de Kilo y una conexión directa a OpenRouter tienen cuentas, rutas y cuotas distintas. Antes de investigar un fallo, comprueba la etiqueta del proveedor en la configuración activa.
| Conexión | Cuenta y controles | Qué significa gratuito |
|---|---|---|
| Proveedor Kilo mediante Kilo Gateway | Cuenta Kilo y rutas gestionadas por Kilo | Una oferta de Kilo como kilo-auto/free, sujeta a sus condiciones actuales. |
| Proveedor OpenRouter con tu clave OpenRouter | Cuenta, actividad, rutas y límites de OpenRouter | Una entrada gratuita exacta del catálogo o openrouter/free. |
Usar tu clave OpenRouter en Kilo a veces se llama BYOK. Es distinto de BYOK de proveedores en OpenRouter, que utiliza una clave de un proveedor subyacente y tiene sus propias reglas de facturación. Ni la cuota gratuita de Kilo ni la del proveedor subyacente se transfieren a una conexión directa a OpenRouter. Consulta la comparación oficial de conexiones y la documentación del proveedor Kilo.
Reproduce el filtro de candidatos gratuitos
Ejecuta este comando en Bash o Zsh con curl y jq instalados. Lee el catálogo público, no envía credenciales ni código del repositorio y no realiza inferencia. Los 30 segundos limitan esta descarga de metadatos, no las tareas de Kilo.
set -o pipefail
curl -fsS --max-time 30 https://openrouter.ai/api/v1/models |
jq -er '
.data
| if type == "array" then . else error("missing data array") end
| map(select(.id | endswith(":free")))
| map(select((.pricing.prompt | tonumber?) == 0
and (.pricing.completion | tonumber?) == 0))
| map(select((.supported_parameters // []) | index("tools")))
| if length > 0 then . else error("no matching candidates") end
| sort_by(.id)[]
| [.id, .pricing.prompt, .pricing.completion,
.context_length, .top_provider.max_completion_tokens] | @tsv'
Cada fila muestra ID exacto, precio de entrada, precio de salida, contexto y límite de salida del proveedor principal del catálogo. Los precios ausentes o no numéricos no pasan. Un error HTTP, JSON inválido o una lista vacía termina con error. Investiga el fallo antes de tratar una captura antigua como catálogo actual.
Nuestra captura contenía 468 entradas. Diecisiete ID terminaban en :free, todos tenían precio de entrada y salida cero y 16 incluían tools. Excluimos nvidia/nemotron-3.5-content-safety:free porque no incluía tools. El filtro de variantes exactas también excluye ID de pago y enrutadores. Más adelante explicamos la opción separada openrouter/free.
Estos dos ejemplos de los 16 candidatos muestran por qué conviene comprobar también el límite de salida. Son ejemplos de metadatos, no una clasificación de rendimiento.
| ID exacto | Contexto, tokens | Salida máxima del proveedor principal, tokens | Prueba de herramientas en Kilo |
|---|---|---|---|
cohere/north-mini-code:free |
256000 | 64000 | No realizada |
nvidia/nemotron-3-super-120b-a12b:free |
262144 | 235929 | No realizada |
Estos máximos no son tamaños de prompt recomendados ni garantías de que una solicitud larga funcione. Las instrucciones del sistema, definiciones de herramientas, archivos y resultados anteriores consumen contexto. La variante gratuita puede tener límites distintos de la de pago. Repite el comando al retomar un proyecto.
Comprueba el endpoint de la entrada
El campo tools del modelo no garantiza que todas sus rutas admitan tu solicitud. Antes de fijar un proveedor, lee los metadatos de sus endpoints. Este segundo GET público muestra los endpoints actuales del primer ejemplo.
set -o pipefail
curl -fsS --max-time 30 \
'https://openrouter.ai/api/v1/models/cohere/north-mini-code:free/endpoints' |
jq '.data.endpoints[] | {provider_name, pricing, context_length,
max_completion_tokens, supported_parameters, supports_tool_choice}'
Nuestra consulta devolvió un endpoint Cohere con precio de tokens cero y ambos parámetros de herramientas. Sigue siendo una capacidad declarada. No demuestra que Kilo haya enviado argumentos válidos o recibido correctamente el resultado de una herramienta.
La documentación de rutas explica que tools es una preferencia por defecto. OpenRouter prefiere proveedores compatibles cuando existen. Si ninguno admite el parámetro, puede ignorarlo. require_parameters: true exige admitir todos los parámetros enviados y puede dejar la solicitud sin proveedor compatible.
En las versiones descritas en la página de OpenRouter de Kilo, integra esta configuración del modelo en kilo.json. Conserva tu configuración de conexión. Kilo reenvía options sin validar sus valores.
{
"provider": {
"openrouter": {
"models": {
"cohere/north-mini-code:free": {
"options": {
"provider": { "require_parameters": true }
}
}
}
}
}
}
Revisa por separado las políticas de datos. El aviso del endpoint gratuito Nemotron indica que registra el uso y prohíbe datos confidenciales o personales. Si una restricción de privacidad elimina el único endpoint compatible, deja de utilizar esa ruta.
Realiza una prueba manual de lectura de archivo
En los ajustes de Kilo, abre Providers, conecta OpenRouter con una clave de la página de claves y selecciona el ID exacto comprobado. Inicia una tarea nueva en una carpeta que contenga solo un probe.txt inocuo con una línea distintiva. No incluyas esa línea en el prompt ni adjuntes el contenido como contexto.
Usa este prompt.
Lee probe.txt mediante una herramienta de lectura y devuelve su línea exacta.
No edites archivos, ejecutes comandos, navegues por la web ni uses herramientas externas.
Detente después de devolver la línea.
- Aprueba solo la lectura prevista. Busca un evento real de herramienta con la ruta correcta.
- Comprueba que la línea coincide y que la tarea termina. Adivinar la respuesta o explicar cómo leer el archivo no cuenta.
- Cancela tras cinco solicitudes al modelo o dos minutos, lo que ocurra primero. Son límites propuestos para esta prueba, no límites del proveedor.
- Consulta la actividad de OpenRouter para comprobar modelo real, proveedor, solicitudes y cargo. Detente si el modelo o coste difiere de la ruta gratuita prevista.
- Registra el resultado. Después de aprobar la lectura, prueba una edición pequeña en otra tarea desechable y revisa el diff antes de usar un repositorio real.
Fecha y versión de Kilo:
Proveedor seleccionado / ID solicitado / modelo y proveedor reales:
Precios del catálogo y opciones de ruta:
Evento de lectura observado / línea correcta / tarea terminada:
Solicitudes / importe cobrado / cuerpo del error:
Resultado: no realizada, aprobada o fallida
Nuestro registro de aceptación es no realizada. Solo comprobamos metadatos del catálogo y del endpoint. La compatibilidad real de Kilo, los cargos, la calidad de edición y la latencia siguen sin medir. Una lectura correcta valida el ciclo de herramienta de esa conexión, no el rendimiento de programación. Otros clientes mantenidos, como Cline, requieren sus propias pruebas aunque utilicen el mismo ID OpenRouter. Las configuraciones de Roo Code son referencias históricas: su extensión, Cloud y Router cerraron el 15 de mayo de 2026.
Separa la selección gratuita de los controles de gasto
El ID exacto con :free debe existir. Añadir el sufijo a un ID de pago no lo crea. openrouter/free elige al azar un modelo gratuito tras filtrar capacidades y, usado solo, mantiene sus rutas dentro de modelos gratuitos. Registra el modelo devuelto. Para comparaciones repetibles, elige un ID exacto.
Las reglas de variantes gratuitas advierten que una lista de respaldo models puede continuar hacia un modelo de pago. Cada modelo cobra su propia tarifa. Mantén gratuita toda la lista y comprueba por separado plugins o servicios de pago. Los créditos promocionales pagan una factura, no cambian el precio. Un tope de gasto limita los cargos permitidos, pero no convierte una ruta de pago en gratuita.
La política publicada indica 20 solicitudes por minuto y 50 al día en modelos gratuitos. El máximo diario sube a 1000 tras compras de créditos elegibles anunciadas como 10 dólares. Comprar créditos es un pago opcional. Comprueba free_model_daily_requests mediante GET /api/v1/key autenticado para conocer contador y nivel diarios reales. Revisa limit_remaining y effective_budget para los controles de gasto aplicables. La referencia de límites describe excepciones y ajustes del umbral. No deduzcas tu cuota solo de is_free_tier. Los intentos fallidos pueden consumir solicitudes diarias y una tarea de agente puede generar varias.
Identifica el error y cuándo detenerte
Guarda cuerpo del error, ID de solicitud, modelo seleccionado y proveedor. Consulta la guía de errores, incluidos errores dentro de una transmisión iniciada con HTTP 200.
| Síntoma | Cómo distinguir la causa | Cuándo detenerse |
|---|---|---|
429 |
Revisa X-RateLimit-*, Retry-After, metadatos del proveedor y contador diario. La cuota OpenRouter y la saturación del proveedor requieren respuestas distintas. |
Detente al alcanzar la cuota diaria. Para un límite transitorio, respeta la espera y permite como máximo un reintento manual. Si se repite, detente. Cambiar de modelo no reinicia la cuota de la cuenta. |
404 que menciona el modelo o la ausencia de endpoints |
Compara el ID exacto con el catálogo actual y revisa endpoints y restricciones de ruta. Un ID existente puede carecer de ruta elegible. | Detente hasta corregir el ID o disponer de una ruta permitida. Reintentar no crea endpoints. No elimines una regla de privacidad para conseguir una respuesta. |
402 o 403 de presupuesto |
Lee error.metadata.limit_source y el uso de la cuenta antes de cambiar límites. Revisa respaldos de pago, saldo, topes de clave y presupuestos del espacio de trabajo. |
Detén la prueba gratuita ante una ruta de facturación inesperada. Identifica primero qué capa bloquea la solicitud antes de recargar saldo. |
| Error de contexto o texto en lugar de una herramienta | Revisa endpoint exacto, argumentos, permisos y presupuesto de contexto. Reduce a la prueba de un archivo. | Permite una prueba corregida. Detente si falla la ejecución o se alcanza el límite de solicitudes. |
Una restricción regional también puede causar 404, como explica la documentación oficial de rutas regionales. El código de estado por sí solo no identifica la causa.
Consulta nuestra página de Kilo Code y la comparación con Cline para conocer las diferencias entre clientes.