# DESIGN.md — @goodandready/dsh-russian-lang ## Product / Purpose - **Назначение**: Комплексный плагин нативной русской локализации, умной экранной типографики, исправления раскладки клавиатуры и инспектора перевода для DeepSeek Harness (DSH v0.2.0-rc.2+). - **Аудитория**: Русскоязычные инженеры, разработчики и пользователи DSH, работающие с локальными и облачными ИИ-моделями в веб-интерфейсе. - **Статус**: Production (v0.3.26+), поддержка 100% UI-покрытия ядра и 65+ плагинов экосистемы (8 584 ключа, 101 пространство имён). ## User Surfaces - **DSH UI / слоты и точки монтирования**: 1. `plugins.item` и `plugins.row.config`: Карточка настроек (`id: 'dsh-russian-lang'`) и встроенная строка настроек (`key: '@goodandready/dsh-russian-lang#dsh-russian-lang'`) во вкладке «Настройки → Плагины → Настройки плагинов». 2. `conversation.session.header.utilities`: Быстрый переключатель языка `RU ⇄ EN` в один клик в шапке активной сессии. 3. `conversation.chat.assistant-actions`: Кнопка «Перевести на русский» в тулбаре реплик ассистента. 4. Инспектор перевода (Alt+I): интерактивное исследование UI-элементов, подсветка источников (`Core`, `Plugin`, `DOM`, `Untranslated`), редактирование оверрайдов и копирование баг-репортов. 5. Переключение раскладки (Alt+L) и транслитерация (Alt+T) в полях ввода сообщений. - **DSH Managed Config vs Legacy Config**: - DSH v0.2.0-rc.2+ / v0.1.7+: пространство `dsh-russian-lang` (согласно `cordis.patch.yml` и форме настроек). - DSH <= 0.1.6: пространство `russian-lang` (автоматический fallback). - **HTTP API (`lib/index.js`)**: - `/api/dsh-russian-lang/dict/core`: словарь ядра DSH. - `/api/dsh-russian-lang/dict/plugins`: словари плагинов (по требованию, query `?names=...`). - `/api/dsh-russian-lang/dict/all`: полный объединённый словарь для обратной совместимости. - `/api/dsh-russian-lang/update`: проверка и установка обновлений плагина. - `/api/dsh-russian-lang/translate`: серверный перевод реплик модели (LibreTranslate/Google). - **CLI (`bin/dsh-i18n.mjs`)**: - `extract `: извлечение ключей из исходного кода. - `validate `: валидация словарей, скобок и терминов глоссария. - `scaffold `: генерация шаблона локализации для нового плагина. - **Документация**: - `README.md`: публичная документация для пользователей и разработчиков. - `docs/design/DESIGN.md`: дизайн-контракт UI/UX/API. - `docs/index.md`: навигация по внутренней документации проекта. ## Visual Direction - **Атмосфера**: Высокоточный, чистый интерфейс системного уровня (Swiss typographic / Graphite DSH theme). - **Принципы**: Нативная интеграция в дизайн-систему ядра DSH. Отсутствие чужеродных шрифтов, цветов и навязчивых баннеров. - **Не копировать**: Сторонние UI-библиотеки, жестко закодированные hex-цвета, стили других вендоров. ## Foundations - **Цветовая палитра**: Исключительно семантические CSS-переменные DSH: - Фон слоёв: `var(--dsw-alias-bg-layer-3)`, `var(--dsw-alias-bg-layer-2)` - Границы: `var(--dsw-alias-border-l2)`, `var(--dsw-alias-border-l1)` - Текст: `var(--dsw-alias-label-primary)`, `var(--dsw-alias-label-secondary)`, `var(--dsw-alias-label-tertiary)` - Акценты: `var(--dsw-alias-accent-primary)`, `var(--dsw-alias-accent-hover)` - **Типографика**: Наследуемый системный шрифт интерфейса DSH (`font: inherit`). Размеры: 15px заголовок карточки, 13px поля настроек, 12px бейджи и подсказки. - **Изоляция стилей**: Префикс `rl-` для всех селекторов, компактные переменные `--rl-bg`, `--rl-border`, `--rl-text-1..3`. Атрибут `