Skip to Content
IntegracionesDeepSeek Harness

Configuración de DeepSeek Harness

DeepSeek Harness  (nombre del comando dsh) es el harness de agentes oficial y de código abierto de DeepSeek, construido sobre una arquitectura en la que todo es un plugin — modelos, herramientas, skills, sesiones, sandboxes y la interfaz son plugins intercambiables. Por defecto llama a la API oficial de DeepSeek; apunta su plugin de modelos a OfoxAI y el mismo harness alcanza más de 100 modelos.

dsh está en vista previa para desarrolladores y sus mantenedores advierten que habrá cambios incompatibles. Esta guía está escrita para @deepseek-ai/dsh 0.1.2-rc.1.

Pasos de configuración

1. Instalar dsh

Instala primero Node.js. dsh se distribuye en npm como @deepseek-ai/dsh y proporciona el comando dsh una vez instalado.

npm install -g pnpm # omitir si ya está instalado pnpm add -g @deepseek-ai/dsh dsh --version

El directorio bin global de pnpm debe estar en tu PATH; ejecuta pnpm bin -g para localizarlo.

Durante la instalación, pnpm puede mostrar la advertencia Ignored build scripts: node-pty, koffi …. Ignórala — ambos paquetes incluyen binarios precompilados para todas las plataformas y no necesitan compilación local.

Para probarlo sin instalarlo globalmente:

npx @deepseek-ai/dsh web

2. Configurar el proveedor OfoxAI

dsh guarda su configuración en $DSH_HOME~/.dsh en macOS y Linux, %USERPROFILE%\.dsh en Windows. Elige cualquiera de las dos rutas siguientes.

Elige la Base URL que corresponda a tu red: usa api.ofox.ai en redes internacionales y api.ofox.io desde China continental. Ambos son el espejo del mismo servicio — la misma API Key funciona en los dos y la ruta es /v1 en ambos casos.

dsh web

La terminal imprime una URL con token (http://127.0.0.1:3080 por defecto) y abre tu navegador. Haz clic en Settings, en la esquina inferior izquierda:

Abrir los ajustes de dsh

Cambia a Models en la navegación de la izquierda:

El panel de ajustes Models

La entrada integrada deepseek-official habla directamente con DeepSeek, así que enrutar a través de OfoxAI implica añadir un proveedor personalizado: haz clic en Add a custom provider:

Añadir un proveedor personalizado

Rellena los campos siguientes y haz clic en Fetch available models:

CampoValor
Provider IDofox
Display nameofox
Base URLhttps://api.ofox.ai/v1
API protocolopenai-completions
API keytu API Key de OfoxAI

Rellenando el proveedor personalizado

En la captura, API protocol aparece como openai-responses: ese es el valor por defecto del formulario y solo lo aceptan los modelos DeepSeek. Elige openai-completions para cubrir todo el catálogo.

Marca los modelos que quieras, haz clic en Add selected y, de vuelta en el formulario, haz clic en Create provider:

Eligiendo los modelos que añadir

De vuelta en la vista de sesión, la primera vez tendrás que elegir un espacio de trabajo (el directorio del proyecto que dsh puede leer y escribir). Después, todos los modelos del grupo ofox quedan disponibles en el selector de modelos, en la esquina inferior derecha del cuadro de texto:

Eligiendo un modelo de ofox en una sesión

La clave se escribe en $DSH_HOME/.credentials.yaml (legible solo por tu propio usuario del sistema) y la configuración del proveedor en $DSH_HOME/settings.yaml. Ambas surten efecto de inmediato, sin reiniciar.

Los IDs de modelo deben incluir el prefijo del proveedor — anthropic/claude-sonnet-5, no claude-sonnet-5 a secas, que será rechazado. Explora el catálogo completo en el Mercado de modelos .

3. Configurar la API Key

apiKeyEnv nombra una credencial en lugar de contener la clave. dsh la resuelve en un orden fijo: el entorno en el que se lanzó dsh, luego $DSH_HOME/.credentials.yaml, luego el .env de tu proyecto y por último el .env de tu directorio personal. Si usaste la Web UI, la clave ya está guardada y puedes omitir este paso.

~/.zshrc
export OFOX_API_KEY=<tu OFOXAI_API_KEY>

4. Verificar

dsh --profile headless "Responde exactamente: OK. No llames a ninguna herramienta."

Recibir OK de vuelta significa que la capa de modelos está llegando a OfoxAI. Para el trabajo diario, lanza la interfaz web con dsh web, o ejecuta una sola tarea y sal con dsh --profile headless "run the tests".

Diferencias entre plataformas

El contenido del archivo de configuración es idéntico en las tres plataformas — solo cambian las rutas y la sintaxis de las variables de entorno.

macOSLinuxWindows
Raíz de configuración $DSH_HOME~/.dsh~/.dsh%USERPROFILE%\.dsh
Persistir la API Key~/.zshrc~/.bashrcsetx
Sandbox de la herramienta de shellBashBashPowerShell (el sandbox Bash se desactiva automáticamente)

Solución de problemas

TIMEOUT: Request timed out. — dsh es una aplicación Node y no lee http_proxy / all_proxy, así que tener un proxy de sistema funcionando no implica que dsh pueda conectarse. Si el dominio de baseURL no es accesible en tu red, los usuarios de China continental deberían cambiar al espejo https://api.ofox.io/v1.

MISSING_CREDENTIAL — la credencial indicada por apiKeyEnv no se resolvió a ningún valor. Confirma que la variable de entorno está activa en la terminal desde la que se lanzó dsh, o que la clave está guardada en $DSH_HOME/.credentials.yaml. La otra causa es elegir el modelo equivocado: la ruta integrada deepseek-official lista sus modelos en el selector incluso sin ninguna clave configurada, con nombres muy parecidos a los de tu ruta personalizada.

La respuesta llega vacía y no aparece ningún error — la trampa más fácil de pisar: combinar api: openai-responses con un modelo de Anthropic hace que la solicitud termine con normalidad (finish reason: stop) pero sin contenido. Mueve ese modelo a una ruta openai-completions, o a una ruta anthropic-messages apuntada a https://api.ofox.ai/anthropic.

INVALID_REQUEST / HTTP 400 endpoint_not_supported — el cuerpo de la respuesta dice Model '…' does not support the /v1/responses endpoint on this platform. Please use /v1/chat/completions instead. Los modelos de Google y Qwen hacen esto bajo openai-responses. De nuevo, cambia api a openai-completions.

La carga de plugins falla con un error de ruta duplicada — el mismo nombre de ruta se registró dos veces. Comprueba si tanto $DSH_HOME/cordis.patch.yml como settings.yaml definen ofox.

Avanzado: configurar mediante la capa de parches

settings.yaml contiene los ajustes de usuario en tiempo de ejecución y surte efecto en la siguiente solicitud. Para cambiar la composición de plugins en sí — sustituir o desactivar un plugin — usa la capa de parches en $DSH_HOME/cordis.patch.yml:

~/.dsh/cordis.patch.yml
- id: llm-pi-ai config: providers: ofox: apiKeyEnv: OFOX_API_KEY api: openai-completions baseURL: https://api.ofox.ai/v1 - id: agent-default-model config: provider: ofox model: deepseek/deepseek-v4-pro-0813

Ejecuta dsh web --dump-config para imprimir el árbol de plugins compuesto y confirmar que tu configuración se aplicó.

Modelos recomendados

Para modelos recomendados, consulta el Mercado de modelos .

dsh evoluciona rápidamente y sus campos de configuración pueden cambiar entre versiones. Contrástalo con el repositorio oficial de DeepSeek Harness .

Last updated on