DeepSeek Harness: instalación, capacidades y primer lanzamiento

Written by

in

DeepSeek Harness, o dsh para abreviar, es un arnés de agente de IA de código abierto de DeepSeek AI. Si el modelo responde preguntas, entonces el arnés le da la mano: lee y edita archivos, ejecuta comandos, mantiene sesiones, muestra la trayectoria de ejecución y se permite expandirse con complementos. El proyecto se distribuye bajo la licencia MIT y se encuentra en versión preliminar pública.

La idea principal de DeepSeek Harness está formulada como “todo es un complemento”, literalmente “todo es un complemento”. Todo el producto se basa en esto: adaptadores de modelo, un registro de herramientas, un registro de sesión, una interfaz e incluso el propio ciclo del agente. Se basa en el marco Cordis, por lo que un desarrollador no puede simplemente agregar un nuevo comando, sino reemplazar todo el comportamiento del agente sin bifurcar el kernel.

Puede trabajar con dsh de varias maneras: a través de la interfaz web local, a través de una aplicación de escritorio, desde la línea de comandos en modo sin cabeza o desde el SDK de Python. A continuación se muestra la instalación, el primer lanzamiento y una descripción general de las capacidades.

Lo que necesitas

La interfaz web y la CLI requieren Node.js. El proyecto tiene requisitos estrictos:

  • Node.js 22.19.0 o posterior en la línea 22.x.
  • Node.js 24.0.0 o posterior en la línea 24.x.
  • Node.js 23.x no es compatible con ningún parche: esta línea no es LTS y ya ha sido descontinuada.

Además de Node.js, necesitará la clave API de DeepSeek. Se crea en su cuenta personal en platform.deepseek.com. La aplicación de escritorio no necesita Node.js: el entorno ya está empaquetado allí.

Puedes comprobar la versión con el comando:

node -v

Instalación mediante npx

La forma más rápida de conocer el proyecto es no instalar nada globalmente. Simplemente ejecuta:

npx @deepseek-ai/dsh web

El comando descargará el paquete @deepseek-ai/dsh de npm, configurará un servidor web local y abrirá la interfaz en el navegador. Por defecto escucha la dirección:

Si no necesita abrir el navegador, por ejemplo en una máquina remota, agregue el indicador –no-open:

npx @deepseek-ai/dsh web --no-open

Cuando se inicia a través de SSH, dsh imprime la dirección pero no intenta abrir el navegador: la dirección local es propiedad del cliente o editor SSH.

Instalación global

Si necesitas una herramienta constantemente, es más conveniente instalarla globalmente. El paquete proporciona el binario dsh:

npm install -g @deepseek-ai/dsh
dsh web

Después de esto, el comando dsh está disponible desde cualquier directorio. La actualización se realiza de la forma habitual:

npm install -g @deepseek-ai/dsh@latest

Aplicación de escritorio

Para aquellos que no quieren tener una terminal y Node.js, DeepSeek lanza versiones de escritorio. Están disponibles en la página de descarga oficial:

  • macOS: Apple Silicon, macOS 13 o posterior, formato DMG.
  • Windows: ensamblado de 64 bits, formato EXE.

La aplicación funciona con los mismos archivos locales, puede realizar tareas en segundo plano y almacena sesiones de la misma forma que la versión web. Esta es una opción conveniente para el trabajo diario, cuando no desea activar el servidor manualmente cada vez.

Construyendo a partir de fuentes

Si necesita control total sobre el código, sus propios parches o el desarrollo de complementos, el proyecto se recopila del repositorio. Necesitará pnpm y el repositorio corrige una versión específica, por lo que primero debe habilitar Corepack:

corepack enable
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web

El comando pnpm run build prepara el paquete y los artefactos del frontend, y pnpm dsh web ejecuta la versión ya compilada sin reconstruir. Para el desarrollo, existe un modo pnpm run dev:web: construye, inicia el servidor y reconstruye los paquetes de clientes cuando cambian las fuentes.

Primer lanzamiento

Después de iniciar la interfaz web, el procedimiento es el siguiente.

Primero, abra Configuración → Modelos e ingrese la clave API de DeepSeek. La clave se guarda en el archivo $DSH_HOME/.credentials.yaml y solo queda un enlace en la configuración. La página de configuración recibe una descripción ya enmascarada del secreto, por lo que es imposible leer la clave desde la interfaz. Los cambios de modelo se aplican a partir de la siguiente solicitud; no es necesario reiniciar el servidor.

Luego seleccione su carpeta de trabajo a través de Elegir espacio de trabajo. Mientras el espacio de trabajo no esté seleccionado, el campo de entrada de la tarea permanece atenuado. Esto se hace intencionalmente: el agente debe comprender los límites dentro de los cuales se le permite leer y cambiar archivos.

Después de esto, puedes enviar la primera tarea. Por ejemplo:

Summarize this repository and identify its main packages.

El agente leerá el proyecto, elaborará un plan, solicitará las herramientas necesarias y mostrará el resultado. Para operaciones que requieren confirmación según la política de acceso actual, dsh preguntará antes de ejecutar.

Modelos y proveedores

DeepSeek se conecta en un solo paso: la tarjeta del proveedor en la configuración contiene solo un campo para la clave API. Además, puede agregar servicios de terceros. El directorio integrado conoce identificadores como anthropic, openai, moonshotai para Kimi y zai para GLM.

Para su propia puerta de enlace, proxy corporativo o servidor local, existe un modo API de modelo personalizado. Pregunta:

  • identificador de proveedor permanente;
  • nombre para mostrar;
  • Dirección base API;
  • protocolo: Finalizaciones de chat OpenAI, respuestas OpenAI o mensajes antrópicos;
  • Clave y lista de modelos.

El protocolo es importante: un proveedor habla un protocolo. Si una puerta de enlace admite tanto OpenAI como Anthropic, deberá ser descrita por dos proveedores. Para los modelos, puede especificar el tamaño de la ventana contextual, la cantidad máxima de tokens de salida y los tipos de datos de entrada admitidos, incluidas las imágenes.

Los modelos de DeepSeek tienen niveles de razonamiento apagado, bajo, alto y máximo. El nivel se selecciona en el menú Esfuerzo al lado del modelo. Para tareas rutinarias en el repositorio, un modelo rápido es suficiente, pero para tareas arquitectónicas complejas tiene sentido aumentar el esfuerzo o tomar un modelo de clase superior.

Complementos y modo Creador

Los complementos son la característica principal de DeepSeek Harness. A través de ellos se añaden herramientas, habilidades, elementos de interfaz y aplicaciones completas. La interfaz tiene un administrador de complementos con conjuntos oficiales y experimentales: comandos de agentes, confirmación automática, tareas programadas, entrada de voz, terminal, subagentes.

Destaca por separado el modo Creador. En este modo, puedes pedirle al agente que escriba un complemento directamente en el chat. Descargará la habilidad de desarrollo del complemento Cordis, creará una estructura de paquete, escribirá código, instalará el complemento y verificará su estado. Hay un ejemplo en la página oficial del proyecto donde se ensambla un temporizador Pomodoro flotante de esta manera.

Los complementos también se pueden instalar desde la línea de comando. Para un perfil web, el comando tiene este aspecto:

dsh plugin --profile web add some-dsh-plugin

Se admiten paquetes Npm, enlaces como github:owner/repo, directorios locales y archivos tgz. Después de la instalación, es útil comprobar que la capa del complemento esté realmente incluida en la configuración:

dsh --profile web --dump-config

El comando imprime el árbol de complementos ensamblado sin iniciar el servidor. Si no hay una capa nueva, lo más probable es que el paquete no haya declarado un manifiesto dsh.bundle y se haya instalado como una biblioteca normal en lugar de como un complemento incluido.

La configuración experimental incluye Mercados de complementos personalizados. Este es un archivo JSON de índice con una lista de complementos, sus versiones, íconos y fuentes. Al habilitar el conjunto, obtienes una pestaña Descubrir en la página de complementos y la capacidad de conectar mercados de terceros. Como cualquier fuente de terceros, dicho mercado sólo debe agregarse si se confía en sus autores.

Trayectoria y auditoría

Para cada sesión, dsh escribe un registro de eventos de solo anexar: Trayectoria. Almacena las indicaciones del sistema, el razonamiento, las llamadas a herramientas y sus resultados, la programación de subagentes y las inserciones de contexto. La reanudación de la sesión, las bifurcaciones, la búsqueda y la reproducción se basan en este registro.

El beneficio práctico es que la conversación deja de ser una caja negra. En la interfaz, puede abrir la trayectoria y ver qué herramientas se llamaron, cuánto tiempo tomó cada paso, qué archivos se cambiaron y cuántos tokens se gastaron en la solicitud. Si un agente se comporta de manera extraña, el motivo suele ser visible aquí y no en una respuesta breve en el chat.

Las sesiones se encuentran en ~/.dsh/sessions en forma de registros JSONL. Puede leerlos, buscarlos y crear sus propios análisis. Esto también hace posible calcular con precisión los gastos y los aciertos de caché que no son visibles en una factura API normal.

Tareas y cronogramas en segundo plano

DeepSeek Harness puede funcionar no solo en el modo “preguntar y recibir una respuesta”. Las tareas se pueden iniciar en segundo plano y programarse. Por ejemplo, pídale al agente que recopile un informe semanal de las notas del proyecto todos los viernes a las 17:00. En la interfaz, dichas tareas son visibles por separado: puede verificar el estado, ver el historial y abrir los detalles de ejecución.

Existe un perfil sin cabeza para la automatización. Inicia una sesión, imprime la respuesta final y sale:

dsh --profile headless "run the tests"

Este modo es conveniente para CI, cron y scripts donde no se necesita una interfaz web. Además del modo sin cabeza, están disponibles los perfiles sdk y acp: el primero atiende a clientes SDK a través de JSON-RPC, el segundo atiende a clientes de automatización a través de ACP stdio.

Subagentes, MCP y habilidades

Una tarea compleja se puede descomponer entre subagentes. El agente principal planifica el trabajo y los subagentes individuales trabajan en sus áreas. Esto ayuda a mantener el contexto compacto y no arrastrar todo el historial a cada solicitud.

Las herramientas externas y las fuentes de datos se conectan a través de MCP. La documentación incluye una guía separada para la memoria MCP, así como integraciones como sesiones de revisión de GitHub. Las habilidades describen procedimientos repetibles que el agente carga según sea necesario, en lugar de mantener todas las instrucciones en un mensaje del sistema todo el tiempo.

Perfiles, paquetes y parches

La configuración dsh se ensambla a partir de tres capas. Bundle es un conjunto de líneas de configuración y código de complemento, es decir, una pieza de funcionalidad lista para usar. Perfil es una composición de paquetes con nombre, que se almacena en $DSH_HOME/profiles/. Patch es un archivo YAML que cambia las líneas ya cargadas por identificador, las deshabilita o agrega otras nuevas.

El orden de aplicación es el siguiente: primero los paquetes en orden de perfil, luego el parche de perfil, luego el parche general $DSH_HOME/cordis.patch.yml y al final las superposiciones transmitidas a través de –patch. Esto significa que casi cualquier configuración se puede anular sin tocar las fuentes del paquete. Puedes ver el árbol resultante con el comando:

dsh --profile web --dump-config

Un perfil web estándar se llama web, un perfil sin servidor se llama headless. Sus archivos de configuración se encuentran en $DSH_HOME/profiles/web/cordis.patch.yml y $DSH_HOME/profiles/headless/cordis.patch.yml. Aquí es donde dsh escribe los cambios realizados a través de la interfaz de configuración.

SDK de Python

Existe un SDK oficial para proyectos de Python. Se instala en un entorno virtual y trae consigo un tiempo de ejecución nativo, por lo que el sistema Node.js no es necesario para el trabajo normal:

python -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install deepseek-harness-sdk

Un ejemplo de inicio mínimo se ve así:

from pathlib import Path

from deepseek_harness import DeepSeekHarness

workspace = Path("C:/work/disposable-workspace").resolve()
dsh_home = Path("C:/work/example-dsh-home").resolve()

with DeepSeekHarness(
    provider="deepseek-official",
    model="deepseek-v4-flash",
    max_tokens=49_152,
    cwd=str(workspace),
    dsh_home=str(dsh_home),
    profile="sdk-minimal",
) as harness:
    result = harness.run(
        "Inspect the repository and fix the failing tests.",
        session_id="example-001",
    )

print(result.final_response)

El SDK inicia el proceso dsh incluido con el perfil mínimo sdk y lo reutiliza antes de salir del administrador de contexto. El perfil mínimo está intencionalmente limitado: tiene bash o pwsh, lectura de imágenes y un directorio de trabajo, pero no tiene herramientas web, subagentes ni algunas de las herramientas de archivos. Para tareas puntuales, esto es una ventaja: hay menos superficie para controlar.

A qué prestar atención

DeepSeek Harness es una vista previa para desarrolladores versión 0.1.0-rc.x. El README advierte explícitamente que la compatibilidad se romperá. Para experimentos, proyectos personales y automatización, esto está bien, pero para un proceso que genera dinero en este momento, vale la pena sopesar el riesgo y mantener un plan de respaldo.

El segundo punto es Node.js. Si tiene 22.18 o 23.x, la instalación fallará o se comportará de manera impredecible. Verifique la versión con anticipación: el proyecto utiliza node:sqlite y el borrado integrado de TypeScript de tipos que necesitan una nueva rama.

El tercer punto es el sandbox y los derechos. De forma predeterminada, el agente opera con una política cercana a la escritura en el espacio de trabajo: puede cambiar archivos en la carpeta seleccionada y las operaciones potencialmente peligrosas requieren confirmación. El modo de acceso total a peligros ofrece más libertad, pero el riesgo aumenta. Antes de experimentar con un repositorio real, es útil realizar una confirmación o una copia de seguridad.

El cuarto punto es el costo. DSH en sí es gratuito, pero, por inferencia, le paga al proveedor en tokens. Para sesiones largas, el almacenamiento en caché de prefijos es importante: dsh redacta las solicitudes para que el historial y los esquemas de herramientas permanezcan sin cambios durante el mayor tiempo posible. Si el puntaje resulta ser más alto de lo esperado, observe no solo el precio por token, sino también la proporción de ingresos en efectivo en la trayectoria.

Vale la pena intentarlo

DeepSeek Harness es de interés principalmente para aquellos que desean no sólo “otro chat con un modelo”, sino un entorno controlado para los agentes. Hay una trayectoria transparente, trabajo normal con archivos y comandos, tareas en segundo plano, subagentes y una expansión verdaderamente profunda a través de complementos. La capacidad de reemplazar un bucle de agente por uno propio es poco común y potencialmente muy útil para la investigación y la orquestación personalizada.

Si necesita una herramienta estable para el trabajo diario remunerado, ahora es más prudente tratar a dsh como un segundo agente junto al principal: pruébelo en un proyecto personal, compare el costo y la calidad de sus tareas y solo entonces transfiéralo al flujo de trabajo.

Enlaces

https://www.deepseek.com/harness/
https://www.deepseek.com/download/
https://github.com/deepseek-ai/deepseek-harness
https://deepseek-harness.github.io/deepseek-harness/en/guide/quickstart
https://deepseek-harness.github.io/deepseek-harness/en/guide/providers
https://deepseek-harness.github.io/deepseek-harness/en/guide/python-sdk
https://platform.deepseek.com/

Fuentes

https://github.com/deepseek-ai/deepseek-harness/blob/master/README.md
https://github.com/deepseek-ai/deepseek-harness/blob/master/apps/cli/README.md
https://deepseek-harness.github.io/deepseek-harness/en/guide/quickstart
https://deepseek-harness.github.io/deepseek-harness/en/guide/providers
https://deepseek-harness.github.io/deepseek-harness/en/guide/python-sdk
https://deepseek-harness.github.io/deepseek-harness/en/guide/plugin-market
https://dshdocs.com/getting-started/installation/
https://dshdocs.com/concepts/profiles-bundles-patches/
https://dshdocs.com/guides/dsh-vs-claude-code/

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

DemensDeum
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.