Skip to content

dsh-eslat

Verified

dsh-eslat · v2.0.0 · MIT · Web UI

EsLat — traducción al español de Latinoamérica de toda la interfaz web de DeepSeek Harness (DSH): 1615 etiquetas en 36 namespaces del cliente

Install

dsh plugin add dsh-eslat

Confirm the layer applied with dsh --profile default --dump-config — see the install guide.

Source

Tags

Creators

Readme

dsh-eslat · EsLat

English summary — EsLat is a DeepSeek Harness language bundle that translates the whole web GUI into neutral Latin American Spanish: 1,615 labels across all 36 client namespaces shipped by DSH 0.2.0-rc.2 — conversation, sidebar, settings, trajectory, tool calls, status summaries, dialogs, errors and empty states. Nothing is left falling back to English. Install with dsh plugin add dsh-eslat, or from the Plugins page in the sidebar. Revert to English with Settings → Idioma → English. Full documentation below is in Spanish.

Traducción completa al español neutro de Latinoamérica de la interfaz web de DSH. Es un paquete de idioma: registra el idioma es y un diccionario para cada namespace que el cliente de DSH publica, de modo que la interfaz entera —no solo las herramientas— aparece en español.

Conversación      →  Escribe un mensaje o una tarea, / para comandos, @ para archivos o sesiones
Barra lateral     →  Espacios de trabajo · Sesiones · Archivar · Fijar · Cambiar nombre
Ajustes           →  Configuración · Apariencia · Permisos · Tamaño de letra · Atajos
Trayectoria       →  Turnos · Llamadas · Solicitudes · Mediciones · Uso de tokens
Herramientas      →  Leer / Escribir / Editar / Buscar en el contenido / PowerShell / Crear subagente
Estados           →  En ejecución / Preparando la llamada / Fallida / Detenida
Resúmenes         →  Leyendo archivos · Completado en 12 s · Se leyeron archivos y se ejecutaron comandos

Instalación

Es un bundle de DSH (dsh.bundle.patch), así que se instala como cualquier otro plugin.

Desde npm

dsh plugin add dsh-eslat

o en la interfaz web: barra lateral → Plugins → Add plugin → escribe el nombre del paquete → Install. El diálogo acepta también una dirección Git, un tarball o una ruta local absoluta.

Desde un tarball

Sin cuenta de npm y sin permisos de compilación: el tarball trae la mitad Cliente ya construida.

dsh plugin add ./dsh-eslat-2.0.0.tgz

Desde un repositorio Git

dsh plugin add github:Amador-Aguilar/dsh-eslat

Este paquete no necesita prepare ni autorizar scripts de compilación: el bundle del navegador (lib/client.js) se publica construido, no se genera al instalar.

En este equipo (desarrollo)

En el perfil desktop está instalado desde el registro ("dsh-eslat": "^2.0.0"). Para probar cambios locales sin publicar, instálalo desde la ruta del proyecto con el gestor de plugins: queda como link: y los cambios de src/ + node tools/build.mjs se aplican al recargar la página.

Activación

Al montarse, el plugin registra el idioma y sus diccionarios, y selecciona Español una sola vez, sustituyendo únicamente el idioma por defecto (en). Después:

Situación Qué ocurre
La interfaz estaba en inglés (por defecto) Pasa a Español; toda la interfaz cambia
Ya estaba en chino u otro idioma elegido No se toca nada: solo sustituye el idioma por defecto
El usuario cambia a otro idioma en Configuración → Idioma Se respeta para siempre; el plugin no vuelve a forzar el español
Un shell nativo vuelve a anunciar su idioma por defecto El plugin recupera el español, porque la elección no fue del usuario

La memoria de esa decisión vive en localStorage del navegador (dsh-eslat:activation). Si el almacenamiento no está disponible, el plugin selecciona español en cada carga cuando la interfaz está en inglés.

Para volver atrás: Configuración → General → Idioma → English. Para desinstalarlo, página Plugins.

Cobertura

1.615 de 1.615 claves (100 %) en 36 de 36 namespaces. La verificación por clave lo garantiza y falla si alguna falta.

Grupo Namespaces Claves
Conversación y chat conversation 367 · chat 186 553
Trayectoria y entregables trajectory 192 · deliverables 60 252
Navegación y paneles workspace 112 · sidebarRight 34 · sidebarBrowser 19 · sidebarFiles 11 · sidebarDocumentPreview 11 · sidebar 5 · sidebarTerminal 1 193
Ajustes y preferencias settings 34 · shortcuts 28 · permission.access 17 · settings.permission 12 · settings.theme 9 100
Tareas y automatización schedule.manager 133 · job 39 · workflowRun 18 · schedule.catalog 16 206
Herramientas y agentes cordis 51 · subagent 39 · model 23 · slash.menu 9 · skill 8 130
Comandos y diálogos question 31 · command 28 · feedback 20 · plan 17 · goal 12 · approval 1 109
Base compartida common 41 · open-in-app 15 · reference 11 · documentMarkdown 4 · settings.locale 1 72

Dialecto

Español neutro de Latinoamérica, con estas decisiones aplicadas en todo el paquete:

Se usa En lugar de
Configuración Ajustes
presiona / haz clic pulsa / pincha
agregar añadir
computadora, celular ordenador, móvil
archivo fichero
costo coste
dd/mm/aaaa, millar con punto (1.615) formato inglés

Términos que se mantienen: Bash, PowerShell, JSON, ZIP, TTFT, tok/s, Markdown, Cordis, sandbox, preset y los nombres de modelos.

test/verify.mjs incluye un guardián de dialecto: falla si reaparece un lexema peninsular (ordenador, fichero, puls…, añad…, vosotros, móvil, coger, pinch…, zumo, patata, coche).

Identidad del plugin

Capa Valor Dónde se define
Nombre visible EsLat locale/{en,es}.json → meta.title
Nombre técnico (npm y id del módulo del navegador) dsh-eslat package.json → name
Icono «Es» sobre «Lat»: degradado azul + cian, 36×36 icon.svg
Autor Amador Aguilar (@amador_aguilar en npm, Amador-Aguilar en GitHub) package.json → author
Repositorio github.com/Amador-Aguilar/dsh-eslat package.json → repository

La autoría formal la registra npm al publicar (npm owner ls dsh-eslat); la tarjeta de Plugins solo muestra icono, título y descripción.

Estructura

package.json              manifiesto: dsh.bundle.patch + dsh.client (platform web)
cordis.patch.yml          capa de parche del bundle: inserta la fila eslat
lib/index.js              mitad Host: inerte, solo mantiene el paquete en el árbol del Loader
lib/client.js             mitad Cliente construida (generada) — todo el comportamiento vive aquí
lib/client.js.map         source map de identidad del bundle
locale/{en,es}.json       título y descripción del plugin en la página Plugins
icon.svg                  icono de la tarjeta (36×36, convención de DSH)
src/<namespace>.es.json   un diccionario por namespace; añadir cobertura es añadir un archivo
src/language.json         definición del idioma: id, etiqueta y respaldo
tools/build.mjs           construye lib/client.js y su map a partir de src/
tools/extract-shipped-keys.mjs   descubre los namespaces de DSH y regenera la instantánea de claves
test/verify.mjs           claves, marcadores, dialecto, frescura del bundle y requisitos de publicación
test/smoke.mjs            ejecuta la mitad Cliente contra dobles de prueba
test/shipped-en.json      instantánea de los diccionarios ingleses de DSH 0.2.0-rc.2

Solo se publica la primera mitad: src/, tools/ y test/ son material del repositorio.

Por qué la mitad Cliente es un archivo construido

DSH sirve cada plugin del navegador como un bundle lazy-CJS ya construido: el host lee exports["./client"] y el navegador evalúa el archivo, que debe estar en la forma del cargador de módulos (window.__ModuleLoader__.load({ id, factory })) y no puede importar nada, porque el protocolo no admite require relativos entre bundles. Por eso los diccionarios viven en src/ y se incorporan al bundle generado.

Desarrollo

node tools/build.mjs             # regenera lib/client.js y su map
node test/verify.mjs             # claves, marcadores, dialecto, frescura, publicación
node test/verify.mjs --strict    # además exige cobertura 100 %
node test/smoke.mjs              # comportamiento de la mitad Cliente
node tools/extract-shipped-keys.mjs   # re-descubre los namespaces de la imagen instalada

verify distingue errores (clave inexistente, marcador {…} que no cuadra, bundle obsoleto, lexema peninsular) de cobertura pendiente, que informa; --strict la exige y es lo que corre prepublishOnly.

test/shipped-en.json es una instantánea extraída de DSH 0.2.0-rc.2. Si una versión futura renombra o añade claves, node tools/extract-shipped-keys.mjs refresca la instantánea y verify dice exactamente qué falta.

Publicar

prepublishOnly encadena build + verify --strict + smoke, así que no puede salir una versión con cobertura incompleta.

npm run verify     # build + verificación + pruebas
npm publish        # con OTP: npm publish --otp=123456

Requisitos que verify comprueba: dsh.bundle.patch presente, la fila del patch con el nombre del paquete, name/version válidos, mitad Cliente construida y en files, engines.dsh, licencia y prepublishOnly.

Limitaciones

  • Claves atadas a una versión — la verificación está anclada a DSH 0.2.0-rc.2. Una clave renombrada aguas arriba revierte esa etiqueta al inglés hasta que se actualice el diccionario; el extractor y el verificador lo detectan.
  • Los datos no se traducen — rutas de archivos, descripciones de comandos, resúmenes derivados de los argumentos de cada herramienta y la respuesta del modelo siguen en el idioma en que lleguen.
  • Enumeraciones de tres o más elementos — DSH une los resúmenes cerrados con un separador fijo, sin ranura para la conjunción final, así que una lista de tres sale con comas en lugar de «y».
  • Sin reglas de plural propias — se usan las ranuras .one/.other que DSH consulta; es comparte con en la regla singular/plural.
  • Sin configuración — el plugin no declara esquema: activarlo o desactivarlo en la página Plugins es el único mando.