Aider y Claude Code no son dos versiones de la misma herramienta: Aider es una CLI gratuita de programación en pareja bajo Apache-2.0 que edita los archivos que le entregas y confirma cada cambio en git, mientras que Claude Code es el agente propietario de Anthropic que planifica, ejecuta comandos y solicita permiso. La diferencia que la configuración no puede borrar es el protocolo que cada uno habla con un endpoint de terceros: Aider usa chat-completions de OpenAI, mientras que Claude Code necesita uno de tres formatos con estructura de Anthropic, de los cuales Anthropic Messages es el que expone una pasarela común; y ese único hecho determina a qué modelos puedes acceder, qué plan paga y cuánto cuesta la migración.
Primero, una aclaración, porque la página de resultados los mezcla. Otra empresa, dedicada al software contable, también opera con el nombre Aider y publica precios para la automatización del cierre de periodos. Esos precios pertenecen a ese producto. Esta página trata sobre la CLI de programación en aider.chat, distribuida como el paquete aider-chat de Aider-AI/aider, y sobre Claude Code, distribuido como @anthropic-ai/claude-code. Si estás eligiendo entre el asistente Claude y la CLI, en lugar de entre dos CLI, Claude vs Claude Code es la página que necesitas.
Cuál deberías elegir
| Decide según | Elige Aider cuando | Elige Claude Code cuando |
|---|---|---|
| Flujo de trabajo | Quieres dirigirlo: añadir archivos concretos al chat, revisar un diff y mantener cada cambio en su propio commit | Quieres que la herramienta explore, ejecute comandos y encadene pasos sin tener que entregarle primero cada archivo |
| Permisos | Un comando de shell que propone el modelo queda detrás de un sí explícito, y las ediciones se aplican como commits de git que puedes revertir | Quieres modos de permisos graduados y ampliarlos deliberadamente, con sandboxing y checkpoints subyacentes |
| Protocolo y plan | Tu endpoint es compatible con OpenAI, o quieres modelos de varios laboratorios desde una sola instalación; no hay ninguna cuenta que sustituir | Tu endpoint habla Anthropic Messages y aceptas que una credencial de pasarela suspenda la suscripción de claude.ai durante esa sesión |
| Vía de coste | Solo tokens medidos, sin cuota de software, asiento ni suscripción de por medio | Una suscripción plana se adapta a tu ritmo, o quieres deliberadamente facturación por token contra una clave que posees |
| Coste de migración | Vienes de un editor común: dos variables de entorno y un id de modelo bastan para iniciarlo | Vienes de Aider: nada se traslada, porque ambos leen archivos de configuración completamente distintos |
Un dato más para la elección, expresado como fechas en lugar de adjetivos. El repositorio de Aider está activo y no archivado, pero el último commit a main es del 22 de mayo de 2026, y la versión instalable más reciente es aider-chat 0.86.2, del 12 de febrero de 2026; la anterior fue del 13 de agosto de 2025 (PyPI y el historial de commits de main, comprobados el 21 de septiembre de 2026). Claude Code publicó ocho versiones de npm en los seis días hasta el 19 de septiembre de 2026 — de la 2.1.271 a la 2.1.278 — con latest en 2.1.278 y la etiqueta stable en 2.1.267 (registro de npm, comprobado ese mismo día). No se encontró ninguna declaración del mantenedor sobre el rumbo de Aider; interpreta la diferencia como evidencia de cadencia, no como un anuncio.
El límite del protocolo, en dos bloques
# Aider — OpenAI chat-completions. The openai/ prefix is mandatory: it is
# what tells Aider to speak that protocol to OPENAI_API_BASE instead of
# resolving the id against its own provider table.
export OPENAI_API_BASE=https://api.kunavo.com/v1
export OPENAI_API_KEY=sk-kn-...
aider --model openai/claude-sonnet-5
# Claude Code — Anthropic Messages. ANTHROPIC_BASE_URL is an ORIGIN; the
# client appends /v1/messages itself, so a value ending in /v1 produces
# /v1/v1/messages. The credential variable picks an HTTP header.
export ANTHROPIC_BASE_URL=https://api.kunavo.com
export ANTHROPIC_AUTH_TOKEN=sk-kn-...
# Pin models Kunavo serves. Claude Code's default and its opus/sonnet aliases
# follow Anthropic's newest models; the sonnet alias asks for Sonnet 5.5, which
# Kunavo does not serve, so unpinned, /model sonnet, opusplan's execution phase
# and sonnet subagents 404. Opus 5.5 needs Claude Code v2.1.280 or later
# (claude update).
export ANTHROPIC_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-5-5
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5
claudeLa página de Aider sobre API compatibles con OpenAI documenta exactamente ese par de variables y afirma que debes anteponer el prefijo openai/ al nombre del modelo. La guía de compatibilidad con pasarelas de Claude Code afirma que una pasarela debe exponer al menos uno de tres formatos: Anthropic Messages, seleccionado mediante ANTHROPIC_BASE_URL; Amazon Bedrock InvokeModel, con CLAUDE_CODE_USE_BEDROCK=1; o Agent Platform rawPredict de Google Cloud, con CLAUDE_CODE_USE_VERTEX=1. Un endpoint de chat-completions de OpenAI no aparece en ninguna de las dos listas. Todo se comprobó el 21 de septiembre de 2026.
Dos consecuencias que suelen causar problemas. Primero, la variable de credenciales elige una cabecera: ANTHROPIC_AUTH_TOKEN envía Authorization: Bearer, ANTHROPIC_API_KEY envía x-api-key, y la incorrecta llega a la pasarela en una cabecera que esta no lee, lo que termina en un 401. Segundo, Aider decide el formato de edición, el repo map y el desglose de costes comparando el id que pasas con una tabla incluida en el paquete; por tanto, un id de pasarela con prefijo openai/ que no reconoce termina usando ediciones del archivo completo sin línea de coste, algo que precios de Aider explica íntegramente. El fallback equivalente de Claude Code es distinto: para un id que no reconoce, supone una ventana de contexto de 200K, o de 1M cuando el id contiene [1m]. Aider, para un id desconocido, supone una ventana ilimitada y un modelo gratuito.
Flujo de trabajo, permisos y herramientas
| Comportamiento | Aider (versión 0.86.2) | Claude Code (2.1.x) |
|---|---|---|
| Licencia y código fuente | Apache-2.0, distribuido con código fuente en PyPI | Propietario: el campo license del paquete npm dice "SEE LICENSE IN README.md", el paquete tiene cero dependencias y su entrada bin es un ejecutable compilado. Su repositorio de GitHub contiene el registro de cambios, ejemplos y plugins, sin árbol de código fuente para el cliente |
| Modos de chat | code, ask, architect y help; el modo arquitecto realiza dos solicitudes al modelo por turno, y la propia documentación de Aider advierte que "puede tardar más y aumentar los costes" | Seis modos de permisos, desde solo lecturas hasta todo; el modo con el que comienza una sesión depende del plan o del proveedor |
| Bucle de herramientas | Sin compatibilidad con MCP ni selección de herramientas dirigida por el modelo en 0.86.2; su único uso del campo tools es una función con nombre forzado para los formatos de edición *_func | Subagentes, hooks, comandos, skills, plugins y servidores MCP, todos disponibles con cualquier proveedor |
| Comandos de shell | Controlados: un comando que propone el modelo muestra "Run shell command?" y requiere un sí explícito. --yes-always cambia eso | Regulados por el modo de permisos activo; skip-permissions cubre el más amplio y lo que te cuesta |
| Git | Confirma por sí mismo cada edición, confirma primero los cambios sucios preexistentes y añade "(aider)" a los metadatos del autor y del committer. Se desactiva con --no-auto-commits, --no-dirty-commits o --no-git | Gestiona los flujos de Git cuando se lo pides, en lugar de confirmar automáticamente cada edición; los checkpoints ofrecen una vía independiente para rebobinar |
| Instrucciones del proyecto | Un archivo de convenciones solo cuando se pasa con --read; no hay gestión automática de CONVENTIONS.md ni AGENTS.md en 0.86.2 | CLAUDE.md se carga con todos los proveedores; AGENTS.md necesita una sesión que obtenga los indicadores de funciones |
Comportamiento de Aider leído del código fuente publicado de 0.86.2 y de aider.chat/docs/git.html y la página de modos; comportamiento de Claude Code tomado de disponibilidad de funciones y modos de permisos. Todo comprobado el 21 de septiembre de 2026.
Cuánto cuesta cada uno, en los mismos términos
| Partida | Aider | Claude Code |
|---|---|---|
| El cliente | $0 — Apache-2.0, y aider.chat no anuncia ningún plan, nivel, asiento ni servicio alojado | Incluido en un plan de Claude, o ejecutado contra una clave que posees |
| Suscripción individual | No existe | Pro, «$20 si se factura mensualmente», o $17 al mes con el descuento anual ($200 facturados por adelantado). Max, «Desde $100 al mes» |
| Asientos | No existe | Asiento estándar de equipo: $20 por asiento/mes, facturado anualmente; $25 mensualmente. Enterprise: US$20 por asiento/mes, facturado anualmente, más uso a tarifas de API |
| Tokens | La facturación la realiza el endpoint al que apunta OPENAI_API_BASE | Por token, al propietario de la credencial, una vez activa una credencial de pasarela o una clave de Console |
| Gasto observado | No hay ninguna cifra publicada | La propia página de costes de Anthropic indica «alrededor de $13 por desarrollador por día activo y $150-250 por desarrollador al mes» en implementaciones empresariales, con costes inferiores a $30 por día activo para el 90 % de los usuarios |
Las cifras de los planes se tomaron de claude.com/pricing y las cifras de gasto de la página de costes de Anthropic, ambas consultadas el 21 de septiembre de 2026. Tres advertencias. El rango de gasto empresarial se limita a implementaciones empresariales y no representa a una persona ni a un equipo pequeño. En el HTML renderizado por el servidor de esa página no se publica un precio de Max 20x, por lo que esta página no imprime uno; precios de Claude Code usa la misma forma prudente. Además, dos páginas de Anthropic discrepan sobre el asiento premium de Team: la página de precios indica $100 por asiento/mes, facturado anualmente ($125 mensualmente), mientras que la página de integraciones de terceros dice «Teams: $150/asiento (Premium)». Confirma el precio del asiento al finalizar la compra; esta página no elige uno.
Una estimación práctica para la misma sesión
Esto es aritmética ilustrativa de tokens, no el coste medido de una tarea ni un límite de facturación. Supón diez turnos, cada uno con 200,000 tokens de contexto y 3,000 tokens de salida. Las dos columnas solo difieren en si el contexto se vuelve a facturar como entrada nueva en cada turno o se lee a la tarifa de lectura de caché después de que un turno lo escriba. Las tarifas son precios vigentes del catálogo de Kunavo por millón de tokens; se excluyen los cargos por escritura en caché y cualquier herramienta externa.
| Modelo | Entrada/salida por 1M | Lectura de caché por 1M | Cada turno sin caché | Contexto leído desde la caché |
|---|---|---|---|---|
| Claude Haiku 4.5 | $0.70 / $3.50 | $0.07 | $1.505 | $0.371 |
| Claude Sonnet 5 | $1.40 / $7.00 | $0.14 | $3.010 | $0.742 |
| Claude Opus 5 | $3.50 / $17.50 | $0.35 | $7.525 | $1.855 |
Por qué esta tabla y no un precio cliente frente a cliente: la diferencia entre esas dos columnas es la única palanca de costes que se comporta de forma distinta en cada herramienta. En Claude Code no es un ajuste que elijas: la guía de compatibilidad de Anthropic afirma que, cuando una pasarela no reenvía cache_control sin cambios, «No error: the conversation bills as uncached input on every turn». En Aider no existe un valor predeterminado comparable que perder, porque la caché de prompts está detrás del interruptor opcional --cache-prompts y la página de caché de prompts de Aider nombra familias de proveedores concretas; aquí no se probó si los bloques de caché sobreviven al trayecto compatible con OpenAI hacia un endpoint arbitrario. Bajo estos supuestos, la diferencia en Claude Sonnet 5 es de $3.010 frente a $0.742 para los mismos diez turnos. La caché de prompts explica los mecanismos.
El importe del catálogo de Kunavo es un mínimo de facturación, no un límite: cuando el upstream informa de su cargo, la factura es el mayor entre el coste del catálogo y el coste del upstream multiplicado por el margen aplicable. La recarga mínima es de $10 en crédito prepago: un mínimo de financiación, no una tarifa por tarea ni una suscripción. Consulta detalles de facturación.
A qué no puede acceder un endpoint de terceros
En Aider, el límite está en la documentación, no en el plan. Las cadenas ANTHROPIC_API_BASE y ANTHROPIC_BASE_URL no aparecen en ninguna parte del árbol publicado de 0.86.2, y --openai-api-base es la única sobrescritura de la URL base que incluye; por tanto, no hay una ruta documentada de Anthropic-Messages desde Aider. Sí incluye un interruptor general --set-env, así que interprétalo como una ausencia en la documentación, no como un bloqueo demostrado. El reconocimiento del id del modelo es la verdadera puerta, y API compatible con OpenAI explica la estructura de esa ruta.
En Claude Code, los límites son explícitos y conviene leerlos antes de comprometerte. El cliente desactiva Remote Control y los ajustes administrados por el servidor siempre que ANTHROPIC_BASE_URL no sea api.anthropic.com. Otra lista requiere iniciar sesión en claude.ai y no está disponible con ninguna credencial de pasarela: sesiones en la nube, dispositivos móviles, Slack, Routines, Ultrareview, Code Review, Remote Control, la extensión de Chrome, uso del ordenador, Artifacts y dictado por voz. Desktop es la excepción parcial documentada de esa lista: Anthropic afirma que el enrutamiento mediante pasarela puede configurarse en la aplicación o por un administrador, y que Claude Desktop en 3P ejecuta su pestaña Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una pasarela autohospedada. La búsqueda de herramientas MCP está desactivada de forma predeterminada detrás de un host que no sea de primera parte, y la transmisión de herramientas detallada está desactivada a menos que se establezca CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING=1. El descubrimiento de modelos es opcional mediante CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1, consulta GET /v1/models?limit=1000, considera cualquier redirección un fallo y conserva solo los ids que contienen claude o anthropic. Anthropic también afirma que no admite dirigir Claude Code a modelos que no sean Claude mediante ninguna pasarela; por eso claude-code-router, un proyecto de terceros, se documenta por separado y no como una función oficial.
Configura cualquiera de los dos y lee el primer cargo
Kunavo documenta ambos protocolos en el mismo host y en rutas distintas: https://api.kunavo.com/v1 en formato OpenAI para Aider, y https://api.kunavo.com como origen en formato Anthropic Messages para Claude Code. Es una referencia de configuración publicada, no un resultado de compatibilidad; aquí no se ha probado ningún cliente en tiempo de ejecución contra el endpoint, y la lista de funciones de Claude Code depende de comportamientos de la pasarela (anthropic-beta pass-through, cache_control preservación, pings keep-alive, count_tokens, /v1/models) que nadie ha verificado en ella. Mantén disponible una ruta operativa mientras pruebas cualquiera de los dos, ejecuta una única tarea acotada y lee el cargo que realmente registró tu cuenta. Empieza por la guía de integración de Aider o la guía de integración de Claude Code, con ANTHROPIC_BASE_URL para la trampa entre origin y /v1, y crea una cuenta de Kunavo cuando estés listo para financiar una clave.
¿Sigues reduciendo las opciones? opencode vs Claude Code y Cline vs Claude Code comparan otros dos clientes sobre la misma cuestión de protocolo, y alternativas a Aider cubre qué más puede ocupar el puesto de terminal.
Preguntas frecuentes
¿Cuál es la diferencia entre Aider y Claude Code?
Aider es un asistente de codificación de línea de comandos gratuito y Apache-2.0 que edita los archivos que añades al chat y confirma cada cambio en git; Claude Code es una herramienta agéntica propietaria de Anthropic que, según sus propias palabras, lee tu base de código, edita archivos, ejecuta comandos y se integra con tus herramientas de desarrollo. La diferencia estructural es el protocolo que habla cada uno con un endpoint de terceros. La ruta documentada de Aider es OpenAI chat-completions: OPENAI_API_BASE, OPENAI_API_KEY y un prefijo openai/ obligatorio en el id del modelo. Claude Code requiere exactamente uno de tres formatos: Anthropic Messages, Amazon Bedrock InvokeModel o rawPredict de Agent Platform de Google Cloud; un endpoint de OpenAI chat-completions no está entre ellos. Un endpoint que sirva únicamente uno de esos dos protocolos solo puede servir a uno de estos dos clientes.
¿Aider sigue teniendo mantenimiento en 2026?
El repositorio está activo y no está archivado —Aider-AI/aider, Apache-2.0—, pero la cadencia es el dato que conviene comprobar, y se expresa mejor mediante fechas. El último commit en la rama principal es del 22 de mayo de 2026. La versión instalable más reciente es aider-chat 0.86.2, subida a PyPI el 12 de febrero de 2026, y la anterior fue del 13 de agosto de 2025. GitHub Releases se detiene en v0.86.0 del 9 de agosto de 2025, por lo que las dos vistas oficiales de lo que cuenta como última versión discrepan; PyPI es lo que resuelve pip install. El trabajo fusionado desde 0.86.2 está en main como 0.86.3.dev y no forma parte de ninguna versión instalable. No se encontró ninguna declaración de un mantenedor sobre la dirección del proyecto, así que considéralo evidencia de cadencia y no un anuncio.
¿Puede Claude Code usar el mismo endpoint de API que Aider?
Solo si ese endpoint sirve ambos protocolos. Aider se comunica con un endpoint genérico de terceros mediante OpenAI chat-completions en una ruta /v1/chat/completions; Claude Code necesita Anthropic Messages en /v1/messages, y la guía de compatibilidad de gateways de Anthropic no incluye en ningún lugar un endpoint de OpenAI chat-completions entre los formatos que puede exponer un gateway. Un gateway que solo sea compatible con OpenAI no puede servir Claude Code en absoluto. Anthropic también afirma claramente que no respalda, mantiene ni audita productos gateway de terceros y no admite enrutar Claude Code a modelos que no sean Claude mediante ningún gateway: es una posición de soporte, no un bloqueo técnico.
¿Qué es más barato, Aider o Claude Code?
El software cliente no es donde está el gasto. Aider cuesta $0 y no te factura nada; Claude Code está incluido en una suscripción de Claude —Pro a $20 al mes si se factura mensualmente, Max desde $100 al mes— o se factura por token contra una clave de Anthropic Console o una credencial de gateway. La cifra comparable son los tokens, y los dos clientes los consumen de forma distinta: Aider reenvía los archivos del chat y, en modo arquitecto, emite dos solicitudes de modelo por turno, mientras que Claude Code ejecuta un bucle agéntico cuyo trabajo en segundo plano Anthropic tarifa normalmente por debajo de $0.04 por sesión y cuyos equipos de agentes utilizan aproximadamente 7x más tokens que las sesiones estándar cuando los compañeros ejecutan en modo de planificación. No existe ninguna prueba controlada que compare estos dos clientes en las fuentes comprobadas aquí, así que no se puede afirmar que ninguno sea más barato para terminar una tarea determinada.
¿Una credencial de gateway cancela mi suscripción de Claude en Claude Code?
La suspende durante esa sesión en lugar de cancelarla. La documentación del gateway de Anthropic afirma que, mientras está activa una variable de credencial de gateway o apiKeyHelper, no se utiliza la suscripción claude.ai del desarrollador: la credencial sustituye al inicio de sesión de la suscripción durante esa sesión, no se aplican los límites de uso de la suscripción y ese tráfico se factura por token a quien posee la credencial. Establecer únicamente ANTHROPIC_BASE_URL no sustituye la suscripción: las solicitudes se enrutan a través del gateway, pero el inicio de sesión guardado de claude.ai sigue siendo la credencial activa. El inicio de sesión guardado vuelve cuando eliminas la variable. Aider no tiene un mecanismo equivalente porque no incluye ninguna cuenta propia.
¿Qué pierdo en Claude Code si lo dirijo a un endpoint de terceros?
Dos listas separadas. Claude Code desactiva Remote Control y los ajustes administrados por el servidor siempre que ANTHROPIC_BASE_URL apunte a un host distinto de api.anthropic.com, independientemente de lo que reenvíe la pasarela. Por separado, un conjunto documentado de funciones requiere iniciar sesión en claude.ai y, por tanto, no está disponible con ninguna credencial de pasarela: sesiones en la nube, Claude Code en dispositivos móviles, Claude Code en Slack, Routines, Ultrareview, Code Review, la extensión de Chrome, uso del ordenador, Artifacts y dictado por voz. Claude Code Desktop aparece en esa lista con una excepción que Anthropic declara en la misma página: el enrutamiento mediante pasarela puede configurarse en la aplicación o por un administrador, y Claude Desktop en 3P ejecuta su pestaña Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una pasarela autohospedada. La búsqueda de herramientas MCP está desactivada de forma predeterminada detrás de un host que no sea de primera parte, y los conectores importados desde claude.ai solo se cargan con una suscripción a claude.ai. El bucle central del agente no está restringido: la CLI, Agent SDK, las extensiones de VS Code y JetBrains, los subagentes, hooks, comandos, skills, la memoria CLAUDE.md, los plugins, los servidores MCP, los checkpoints, el sandboxing y Workflows funcionan con todos los proveedores.
¿Puedo trasladar mi configuración de Aider a Claude Code sin rehacerla?
Ninguna parte se traslada, porque las dos herramientas leen archivos distintos. Aider lee ~/.aider.conf.yml para las flags, .aider.model.settings.yml para el formato de edición y el comportamiento del repo-map, .aider.model.metadata.json para la ventana de contexto y el coste, y un archivo de convenciones solo cuando se lo pasas con --read — la versión 0.86.2 no tiene gestión automática de CONVENTIONS.md ni AGENTS.md. Claude Code lee CLAUDE.md, .claude/settings.json, .mcp.json y sus directorios de skills, hooks y plugins. Nada de un conjunto es un formato que el otro entienda, así que el traslado es una reescritura de la configuración, no una conversión. Cuánto tarde depende de tu repositorio y no se ha medido aquí.
Comprobado el 21 de septiembre de 2026 mediante la consulta de cada fuente mencionada: las páginas de git, modos de chat, caché de prompts y compatibilidad con OpenAI de aider.chat, los metadatos del paquete aider-chat en PyPI, la entrada de @anthropic-ai/claude-code en el registro de npm, claude.com/pricing y la documentación de Anthropic sobre pasarelas, disponibilidad de funciones y costes. Las afirmaciones sobre el código fuente de Aider se leyeron en la etiqueta publicada 0.86.2, y las fechas del repositorio proceden de los feeds públicos de commits y versiones de GitHub, no de la API REST limitada por frecuencia. No se encontró ninguna comparación de rendimiento entre estos dos clientes en las fuentes consultadas, así que esta página no hace ninguna afirmación de rendimiento en uno u otro sentido, y cada cifra en dólares es un precio publicado o aritmética ilustrativa de tokens.