programa
La mayoría de comparativas entre agentes de código se convierten en una carrera por ver quién es más rápido, barato, con más herramientas o mejor en benchmarks. Ese enfoque pasa por alto la pregunta que diferencia a estos dos: ¿cuánto del runtime del agente puede sustituir un desarrollador?
DeepSeek Harness y Claude Code responden a esa pregunta en capas distintas. Harness expone adaptadores de modelo, almacenamiento, sandboxes y el bucle del agente como plugins. Claude Code empaqueta su bucle propio en torno a Claude y añade puntos de extensión para el flujo de trabajo. Ese límite es más importante aquí que comparar DeepSeek y Claude como modelos.
Di a ambas herramientas el mismo repositorio roto y el mismo modelo de Claude para ver qué cambiaba con el runtime. Un único caso de uso no puede clasificar los productos, pero muestra por qué el harness no es un detalle de fondo. Me centraré en diferencias de elección de modelo, configuración, verificación, registros y coste.
Resumen
- Si el runtime forma parte del trabajo: Harness expone el adaptador de modelo, el almacenamiento, el sandbox y el bucle del agente como plugins reemplazables, con soporte para varios proveedores de modelos.
- Si el trabajo principal es el código de la aplicación: Claude Code empaqueta más del runtime y amplía su flujo con Skills, hooks, MCP y funciones relacionadas.
- Prueba con el mismo modelo: ambos generaron un parche idéntico a nivel de bytes y pasaron la suite original. En esta ejecución en Windows, Claude Code informó 55,0 segundos; Harness registró 125,4 segundos tras tres solicitudes de aprobación.
- Coste: DeepSeek Harness no tiene licencia de pago; el uso del modelo se factura con el proveedor elegido, con costes de infraestructura cuando corresponda. Claude Code está incluido en los planes de pago de Claude.
- Regla rápida: empieza con Claude Code para trabajo habitual de aplicaciones. Empieza con Harness cuando modificar o inspeccionar el runtime forma parte de la tarea.
Introducción a los agentes de IA
DeepSeek Harness vs Claude Code: comparación rápida
|
Dimensión |
DeepSeek Harness |
Claude Code |
|---|---|---|
|
Qué es |
Runtime de agente con piezas reemplazables |
Agente de código empaquetado |
|
Licencia y estado |
MIT, vista previa para desarrolladores, sin versión estable |
Propietario, producto en producción |
|
Modelos |
DeepSeek, Anthropic, OpenAI, Bedrock, Vertex, Azure, local |
Claude, directo o vía Bedrock y Vertex |
|
Bucle reemplazable |
Sí, una entrada de plugin que puedes sobrescribir |
No, las extensiones se conectan alrededor |
|
Unidad de extensión |
Plugin de Cordis, cualquier capacidad del runtime |
Plugin que agrupa skills, hooks, agentes, MCP |
|
Historial de ejecuciones |
Registro de eventos tipado solo-anexado, reproducible |
Transcripción JSONL, checkpoints, OpenTelemetry |
|
Superficies |
Interfaz web local, CLI headless, SDK de Python |
Terminal, IDE, escritorio, web, Slack, CI |
|
Configuración |
Requiere configurar proveedor y conocer los perfiles |
Menor configuración por defecto; permisos, hooks, MCP y proyecto opcionales |
¿Qué es DeepSeek Harness?
DeepSeek Harness es un harness de agentes de código abierto en vista previa para desarrolladores. Proporciona el runtime en el que los modelos usan herramientas y contexto, y puede ejecutar modelos de proveedores distintos a DeepSeek. Su README avisa de que las actualizaciones pueden romper configuraciones existentes.
Si te interesa probarlo, te recomendamos empezar por nuestro tutorial de DeepSeek Harness.
Cómo funciona DeepSeek Harness
El bucle del agente está implementado como un plugin. Harness usa Cordis para componer adaptadores de modelo, herramientas, sesiones, almacenamiento, sandboxes y el bucle.
Cordis permite que los plugins encuentren servicios e intercambien eventos. Los cambios de dependencias cargan o descargan plugins; las recargas en caliente limpian listeners obsoletos y tareas en segundo plano.
El perfil por defecto muestra el bucle como configuración. dsh --profile headless --dump-default-config incluye esta entrada:
- id: agent-loop
name: '@deepseek-ai/dsh-agent-loop'
config:
agents: []
Esa entrada puede reemplazarse mediante cordis.patch.yml, lo que muestra que el propio bucle no es fijo.
Panel de plugins con las piezas del runtime. Vídeo del autor.
Los cuatro modos de runtime
DeepSeek Harness ofrece cuatro modos de ejecución.
- Standard: el modo completo de agente de código
- PTC/Code: combina varias llamadas de herramientas en un programa TypeScript
- Minimal: mantiene solo bash persistente y str_replace_editor
- Creator: para inspeccionar y probar el runtime
DeepSeek usó el modo Minimal para sus benchmarks.
¿Qué es Claude Code?
Claude Code es el agente de código propietario de Anthropic y su harness de agentes para uso local o gestionado en terminal, IDE, escritorio, web, Slack y CI.
La CLI se inicia con claude dentro del directorio del proyecto. Ese directorio pasa a ser el ámbito de ficheros por defecto y la sesión lee las instrucciones del proyecto desde CLAUDE.md. Más tarde puedes ampliar el acceso a ficheros o añadir servicios externos.
Anthropic presenta estas interfaces como formas de acceder a Claude Code. Las sesiones locales se ejecutan en tu máquina. Las sesiones en la nube se ejecutan en entornos gestionados o en servidores operados por tu organización. Remote Control permite dirigir el trabajo local desde el navegador.
Los mejores puntos de partida son nuestro tutorial de Claude Code y la guía de buenas prácticas de Claude Code.
Bucle integrado y extensiones
Anthropic describe Claude Code como el harness de agentes alrededor de Claude, con un bucle repetido de contexto, acción y verificación. El usuario puede dirigirlo durante la ejecución.
Claude Code guarda las sesiones en local y compacta contextos antiguos cuando se llena la ventana. CLAUDE.md y la memoria automática mantienen instrucciones seleccionadas y detalles del proyecto entre sesiones. Los subagentes usan ventanas de contexto separadas y devuelven resúmenes a la sesión principal.
Cómo funciona la capa de extensiones de Claude Code
Claude Code admite varios mecanismos de extensión. CLAUDE.md, skills, hooks, MCP, subagentes, plugins, Agent Teams y el Agent SDK amplían su flujo de trabajo.
Estas extensiones operan alrededor del bucle integrado de Claude Code. Los hooks pueden imponer reglas de llamadas a herramientas, mientras que el Agent SDK ofrece herramientas y gestión de contexto desde el código.
DeepSeek Harness vs Claude Code: arquitectura y control
DeepSeek Harness expone partes de bajo nivel del runtime para su sustitución. Claude Code mantiene fijo su bucle integrado y admite extensiones alrededor.
Runtime reemplazable frente a agente empaquetado
DeepSeek Harness trata el runtime como infraestructura configurable: puedes reemplazar adaptadores de modelo, almacenamiento, sandboxes y el bucle mediante entradas del perfil. Claude Code mantiene fijo su bucle integrado y amplía el flujo alrededor.
DeepSeek Harness puede usar ese mecanismo para cambiar de proveedor de modelos u otras partes del runtime. La palabra «plugin» también tiene distinto alcance aquí:
- Los plugins de Claude Code agrupan funciones alrededor del bucle.
- Los plugins de DeepSeek Harness pueden definir partes del propio runtime.
Compatibilidad de modelos y elección de proveedor
DeepSeek Harness admite más proveedores de modelos. Ejecuta DeepSeek, Anthropic, OpenAI, proveedores cloud y endpoints locales compatibles. Claude Code ejecuta… bueno, Claude. Es decir, DeepSeek Harness puede alojar Claude, pero Claude Code no puede alojar DeepSeek.
Eso me permitió mantener constante el modelo en las pruebas. Comparar un modelo de DeepSeek en Harness contra Claude en Claude Code cambia dos variables a la vez.
La elección del proveedor añade configuración de credenciales y endpoints, incluidos los IDs exactos de los modelos. Claude Code controla la familia de modelos y gran parte del comportamiento de las peticiones.
Cambiar de proveedor no garantiza un comportamiento idéntico. Los modelos pueden admitir distintos formatos de herramientas, tamaños de contexto o controles de razonamiento. Harness mantiene disponible la configuración de plugins alrededor, pero el adaptador del proveedor debe encajar con el endpoint seleccionado.
Registros de sesión y trazabilidad
DeepSeek Harness registra prompts, inyecciones de contexto, llamadas a herramientas y decisiones de permisos en un flujo de eventos solo-anexado. Su vista de trayectoria muestra el origen de cada registro y permite reanudar, bifurcar, buscar y reproducir.
Claude Code guarda transcripciones JSONL, admite reanudar y bifurcar, y emite trazas de OpenTelemetry.
Ambos exponen el historial de sesión, pero DeepSeek Harness muestra más del camino de ejecución en la interfaz.
Vista de trayectoria reconstruyendo una ejecución completa. Vídeo del autor.
Entornos de ejecución y permisos
DeepSeek Harness usa bubblewrap o Landlock en Linux, Seatbelt en macOS y un token con ACL restringido en Windows. Si el sandbox no puede iniciarse, Harness detiene el comando. Claude Code ofrece modos de permisos más reglas de permitir, preguntar y denegar. En esta ejecución, el sandbox de Windows condicionó la ruta de verificación y los tiempos.
Las etiquetas de acceso difieren, así que no fue posible igualar ambas configuraciones exactamente.
-
Los presets de permisos de DeepSeek Harness incluyen
read-only,workspace-writeydanger-full-access. -
Claude Code separa ediciones automáticas, aprobación manual, planificación y acceso a comandos por reglas. Además, hace snapshots de archivos antes de editar para deshacer sin Git.
En sesiones actuales Pro, Max y Team en terminal y VS Code, el modo Auto es el modo inicial integrado de Claude Code. Un clasificador revisa acciones en segundo plano. La prueba usó explícitamente acceptEdits, por lo que su comportamiento de permisos refleja la configuración de la prueba y no el valor por defecto actual.
Esa distinción importa al comparar recuentos de aprobaciones.
La ubicación de la ejecución también difiere. Harness se ejecuta principalmente en la máquina que hospeda su interfaz web o un proceso headless. Claude Code puede ejecutarse en local, en entornos gestionados por Anthropic o en infraestructura autoalojada. Remote Control añade una interfaz en el navegador mientras la ejecución sigue en local.
Prueba práctica: DeepSeek Harness vs Claude Code
Para ver si esas diferencias de runtime afectaban a la ejecución, di a ambas herramientas el mismo bug de una línea en TypeScript. Si solo quieres el tiempo medido, este es tu apartado.
Configuración de la prueba: mismo modelo, repositorio y prompt
Escribí una librería de rachas de hábitos en TypeScript con una línea defectuosa. Medía días de calendario redondeando milisegundos transcurridos.
- Una finalización a las 23:50 seguida de otra a las 00:10 parecía el mismo día.
- Una finalización a las 08:00 seguida de las 20:00 del día siguiente parecía un día perdido.
Diez tests fijos revelaron tres fallos.
Cada nuevo clon tenía las dependencias instaladas antes del cronometraje. Ambos agentes recibieron la misma instrucción y usaron Claude Sonnet 5. El repositorio y el prompt eran fijos; las herramientas, permisos y comportamiento del sandbox dependían de cada producto.
Las configuraciones de permisos no eran equivalentes. DeepSeek Harness empezó en workspace-write, pero su sandbox de Windows no pudo iniciarse. La interfaz web solicitó aprobación y concedí danger-full-access tres veces. Claude Code usó accept-edits y solo pudo ejecutar el comando de test desde bash.
Esta tarea acotada usó solo código y tests locales. Los agentes debían encontrar y editar una línea incorrecta y luego ejecutar la suite. Las dependencias se instalaron antes de medir, aunque Harness optó por ejecutar npm install de nuevo.
Resultados: parche idéntico, rutas de aprobación distintas
Claude Code informó 55,0 segundos. Ejecutó la suite, encontró el bug, editó un fichero fuente y volvió a lanzar los tests. Diez de diez pasaron.
En esta prueba en Windows, DeepSeek Harness tardó 125,4 segundos. Encontró el mismo helper daysBetween sin usar, hizo la misma edición y ejecutó la suite original con éxito.
Los diffs fueron idénticos byte a byte:
-import { DAY_MS } from './dates.js';
+import { daysBetween } from './dates.js';
function gapInDays(earlier: number, later: number): number {
- return Math.round((later - earlier) / DAY_MS);
+ return daysBetween(earlier, later);
}
La ruta de aprobaciones y el trabajo repetido en shell explican la mayor parte de la diferencia de tiempo.
Por qué DeepSeek Harness tardó más en Windows
El sandbox workspace-write de DeepSeek Harness no pudo iniciarse en Windows, así que la interfaz web pidió un modo de permisos más amplio tres veces. Tras la aprobación, Harness ejecutó la suite original, editó src/streak.ts y volvió a ejecutar la suite. Diez de diez tests pasaron.
El resultado no dice nada sobre Harness en Linux o macOS. Como ambas ejecuciones usaron el mismo ID de modelo, la diferencia de tiempo no proviene de la familia de modelos. Aun así, los permisos y rutas de herramientas distintos condicionaron cada ejecución.

Ambas ejecuciones llegaron a diez tests superados. Imagen del autor.
Qué aísla la prueba con el mismo modelo
Compartir el mismo ID de modelo no hizo idénticas las peticiones. Cada producto aportó su propio prompt de sistema, descripciones de herramientas, contexto y reglas de permisos. Cualquiera de esas entradas puede afectar a la siguiente respuesta del modelo.
Por tanto, esta configuración controla mejor la familia de modelos que una comparación DeepSeek-versus-Claude, pero no aísla todas las variables.
También hice solo una ejecución cronometrada por configuración. Harían falta repeticiones en orden aleatorio antes de tratar los tiempos o recuentos de herramientas como métricas de rendimiento estables.
DeepSeek Harness vs Claude Code: coste, benchmarks y límites de la prueba
Un caso en Windows no puede zanjar la comparación general de rendimiento o precio. Sí muestra por qué importan los detalles de los benchmarks.
Aviso sobre benchmarks: DeepSeek usó el modo Minimal
Las puntuaciones publicadas por DeepSeek usaron el modo Minimal, no el modo Standard usado en esta comparación. Pruebas independientes con otro harness informaron resultados más bajos. No reproduje esas pruebas. Los resultados en modo Minimal no establecen el rendimiento en modo Standard ni miden Claude Code.
Coste: cargos por API frente a suscripciones de Claude
DeepSeek Harness no tiene licencia de pago, pero siguen aplicando costes de modelo e infraestructura. La API de DeepSeek usa precios punta y valle. Claude Code está incluido en planes de pago de Claude. Consulta la página de precios de Anthropic antes de presupuestar.
La ejecución con Harness costó unos 0,11 $ a tarifas de lista del API de Anthropic. Claude Code mostró 0,349 $ usando credenciales de suscripción. Como esas cifras proceden de sistemas de facturación distintos, no son una comparación de precios directa.
Los planes individuales de Claude listan Pro a 20 $ al mes y Max a 100 $ o 200 $ al mes, mientras que DeepSeek Harness no tiene suscripción equivalente; factura el proveedor del modelo. Los modelos locales eliminan cargos de API pero consumen recursos de cómputo de la máquina.
Los equipos también deben considerar sandboxes alojados y cómputo autoalojado cuando esos servicios estén fuera de la factura del modelo. Esos costes no aparecen en la licencia de Harness.
Estabilidad: vista previa para desarrolladores vs producto en producción
Harness seguía en estado release candidate durante la prueba. Los equipos deberían fijar versiones de paquetes porque las actualizaciones pueden romper perfiles o sesiones guardadas; Claude Code ya está en producción.
Limitaciones de DeepSeek Harness y Claude Code
Ningún sistema cubre todos los flujos de trabajo. Los límites provienen de partes distintas de su diseño.
Limitaciones de DeepSeek Harness
Harness expone más piezas del runtime, pero eso también deja más configuración y pruebas a tu cargo:
-
El proyecto sigue en vista previa para desarrolladores y las actualizaciones pueden romper perfiles o sesiones guardadas
-
Credenciales del proveedor, IDs de modelo y reglas de endpoint requieren configuración manual
-
Su sandbox
workspace-writefalló al iniciar en este estudio en Windows y requirió tres aprobaciones dedanger-full-access -
El SDK de Python actual no tiene wheel para Windows
La observación sobre el sandbox se aplica solo a la ejecución en Windows descrita antes. No repetí la prueba en Linux o macOS.
Las notas de la versión v0.1.0-rc.7 mencionan una corrección de latencia para Bash persistente y una actualización de node-pty para mayor compatibilidad PTY. Esto hace que la observación sea específica de versión y de Windows.
Limitaciones de Claude Code
Claude Code asume más decisiones del runtime, pero sus límites fijos descartan ciertos experimentos:
-
Ejecuta modelos Claude y no ofrece ruta para otras familias de modelos
-
Su bucle de sesión integrado no se expone como componente reemplazable
-
Claude Code requiere acceso de pago o créditos de API facturados por separado, ambos con límites de uso
-
Las sesiones largas pueden compactar contexto antiguo, así que las reglas persistentes deben ir en
CLAUDE.md
Estos límites importan sobre todo cuando una tarea requiere otro proveedor de modelos o un bucle a medida.
DeepSeek Harness vs Claude Code: ¿cuál elegir?
Deja los nombres de los modelos a un lado. ¿Tu tarea es terminar el código de la aplicación o cambiar el runtime que hace el trabajo?
Elige DeepSeek Harness si el propio runtime es el proyecto. Encaja con pruebas entre proveedores, bucles o sandboxes a medida y trabajos que dependen de trazas de ejecución detalladas. Su estado de prerelease implica responsabilizarse de cambios de versión y pruebas de configuración.
Elige Claude Code si trabajas en una base de código existente y quieres que el agente inspeccione ficheros, edite código y ejecute las comprobaciones del proyecto con menos configuración del runtime. En esta prueba en Windows, ejecutó la suite original sin las tres aprobaciones de acceso total que necesitó Harness.
Usa ambos si ese reparto refleja el trabajo real. Un equipo podría usar Claude Code para el día a día y Harness para experimentar con prompts, herramientas o el bucle del agente.
Conclusiones
Ambas herramientas pueden inspeccionar un repositorio, editar archivos y ejecutar comandos. Lo que las separa es la propiedad del runtime: Harness expone sus partes como plugins, mientras que Claude Code empaqueta el bucle integrado y te permite ampliar el flujo de trabajo alrededor.
Si tuviera que elegir por esta prueba, empezaría con Claude Code para trabajo rutinario de aplicaciones. Empezaría con Harness cuando cambiar o inspeccionar el runtime sea la razón de la tarea. Es un caso en Windows con Harness en prerelease, no una clasificación definitiva.
Para comparativas cercanas, consulta nuestros artículos sobre Grok Build, Cursor, OpenCode, Codex y otras alternativas a Claude Code.
DeepSeek Harness vs Claude Code: preguntas frecuentes
¿Puede DeepSeek Harness reutilizar las instrucciones de proyecto de Claude Code?
Sí. Harness lee CLAUDE.md y AGENTS.md, así que las instrucciones del repositorio pueden trasladarse. Las Skills de Claude Code siguen siendo independientes.
¿Puede DeepSeek Harness ejecutar Claude Code o Codex como subagente?
Sí. Las compilaciones de prerelease incluyen paquetes opcionales de proveedores de subagentes para Claude Code y Codex. Fija la versión de Harness antes de depender de su configuración.
¿Permite Claude Code cambiar a un modelo diferente?
No, solo ejecuta Claude. Harness puede alojar Claude, pero Claude Code no puede alojar DeepSeek.
¿Qué plataformas admiten actualmente el SDK de Python de DeepSeek Harness?
La wheel actual es compatible con Linux en x64 o arm64 y con versiones recientes de macOS arm64. No hay wheel para Windows, y el ejemplo de composición usa acceso completo al sistema de archivos.
¿Tiene Claude Code restricciones de plataforma como el SDK de Python de Harness?
No exactamente. No tiene un sandbox nativo para Windows, así que necesita WSL2 para /sandbox en Windows, pero la CLI en sí funciona en macOS, Linux y Windows.
¿Puede el modo Code de DeepSeek Harness ejecutar programas en Python?
No con el backend incluido. El modo PTC (también llamado Code) reconoce lenguajes de programación, pero el runtime documentado de código actualmente proporciona un backend de TypeScript.
¿Puede DeepSeek Harness ejecutar modelos locales?
Sí. Añade un proveedor personalizado que exponga un endpoint compatible con OpenAI, como un servidor local de Ollama o vLLM, y luego registra el ID del modelo en DeepSeek Harness.
Soy ingeniero de datos y creador de comunidades. Trabajo con canalizaciones de datos, nube y herramientas de IA, al tiempo que escribo tutoriales prácticos y de gran impacto para DataCamp y programadores emergentes.

