@goodandready/dsh-russian-lang 0.2.3 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,86 @@
1
+ {
2
+ "dsh-gitea": {
3
+ "baseUrl": "URL сервера Gitea",
4
+ "baseUrlHint": "например https://gitea.example.com",
5
+ "ciFail": "CI завершился с ошибкой",
6
+ "ciPass": "CI пройден успешно",
7
+ "ciPending": "CI выполняется",
8
+ "collapse": "Свернуть",
9
+ "daysAgo": "дн. назад",
10
+ "description": "Инструменты и учётные данные Gitea или Forgejo.",
11
+ "discard": "Сбросить",
12
+ "expand": "Развернуть",
13
+ "hoursAgo": "ч назад",
14
+ "issues": "Задачи (Issues)",
15
+ "justNow": "только что",
16
+ "loading": "Загрузка данных Gitea…",
17
+ "minutesAgo": "мин назад",
18
+ "noIssues": "Нет открытых задач",
19
+ "noPulls": "Нет открытых pull request",
20
+ "noRepos": "Репозитории не найдены",
21
+ "openInGitea": "Открыть в Gitea",
22
+ "password": "Пароль / Токен доступа",
23
+ "passwordHint": "Персональный токен доступа Gitea с правами api, repo, issue",
24
+ "pullRequests": "Запросы на слияние (Pull Requests)",
25
+ "refresh": "Обновить",
26
+ "repos": "Репозитории",
27
+ "save": "Сохранить",
28
+ "saved": "Настройки сохранены",
29
+ "saving": "Сохранение…",
30
+ "status": "Статус подключения",
31
+ "statusConnected": "Подключено к Gitea",
32
+ "statusDisconnected": "Не подключено",
33
+ "statusError": "Ошибка подключения",
34
+ "title": "Интеграция с Gitea",
35
+ "token": "Токен API",
36
+ "tokenHint": "Токен авторизации Gitea API",
37
+ "username": "Имя пользователя",
38
+ "usernameHint": "Логин вашей учётной записи в Gitea",
39
+ "viewCommit": "Посмотреть коммит",
40
+ "viewIssue": "Посмотреть задачу",
41
+ "viewPull": "Посмотреть PR",
42
+ "viewRepo": "Посмотреть репозиторий",
43
+ "worktreeBranch": "Ветка worktree",
44
+ "gitAhead": "Впереди",
45
+ "gitBehind": "Позади",
46
+ "gitChanges": "Изменения",
47
+ "gitClean": "Рабочая копия чистая",
48
+ "gitCommits": "Недавние коммиты",
49
+ "gitDirty": "Есть незакоммиченные изменения",
50
+ "gitEmpty": "В репозитории нет коммитов",
51
+ "gitHint": "Сведения о состоянии локального git-репозитория и удалённой ветки",
52
+ "gitNoChanges": "Нет изменений",
53
+ "gitNoCommits": "Нет коммитов для отправки",
54
+ "gitNoRemote": "Удалённый репозиторий не настроен",
55
+ "gitPulled": "Ветка обновлена из удалённого репозитория",
56
+ "gitPushed": "Коммиты успешно отправлены в Gitea",
57
+ "gitRemote": "Удалённый репозиторий (Remote)",
58
+ "gitStatus": "Статус Git",
59
+ "gitSynced": "Ветка синхронизирована с Gitea",
60
+ "gitUpToDate": "Ветка актуальна",
61
+ "giteaBranch": "Ветка",
62
+ "giteaCommit": "Коммит",
63
+ "giteaOwner": "Владелец / Организация",
64
+ "giteaRepo": "Репозиторий",
65
+ "giteaToken": "Персональный токен",
66
+ "giteaUrl": "URL сервера",
67
+ "giteaUser": "Пользователь",
68
+ "repoCloned": "Репозиторий успешно клонирован",
69
+ "repoCloning": "Клонирование репозитория…",
70
+ "gitSync": "Синхронизация",
71
+ "graphClose": "Закрыть граф",
72
+ "graphEmpty": "В репозитории не найдено коммитов",
73
+ "graphLoadMore": "Загрузить ещё коммиты",
74
+ "graphLoading": "Загрузка графа коммитов…",
75
+ "graphTitle": "Граф коммитов Git",
76
+ "intro": "Создайте учётные данные DSH, вставьте туда токен API, затем укажите только имя учётных данных ниже (например, GITEA_TOKEN).",
77
+ "openGraph": "Граф коммитов",
78
+ "saveFailed": "Сохранить failed",
79
+ "settingsUnavailable": "Настройки unavailable (namespace not registered).",
80
+ "tokenEnv": "Имя учётных данных",
81
+ "tokenEnvHint": "Имя учётных данных DSH, а не сам токен. По умолчанию GITEA_TOKEN.",
82
+ "tokenOff": "Токен не настроен",
83
+ "tokenOn": "Токен настроен",
84
+ "unsaved": "Не сохранено"
85
+ }
86
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "dsh-cost-meter": {
3
+ "catalogUnavailable": "Каталог OpenRouter недоступен: ",
4
+ "chipRate": "тариф",
5
+ "chipUnknown": "тариф ?",
6
+ "field.currency": "Символ валюты",
7
+ "field.displayTimeZone": "Часовой пояс отображения",
8
+ "field.usdRate": "Курс к USD",
9
+ "flat": "фикс.",
10
+ "hint.currency": "Символ валюты в виджете (например $, ₽, €).",
11
+ "hint.displayTimeZone": "Часовой пояс IANA для расписания пиковых/ночных тарифов.",
12
+ "hint.usdRate": "Курс обмена: количество единиц валюты за 1 USD (например 80 для ₽).",
13
+ "modal.close": "Закрыть",
14
+ "modal.title": "Тарифы и стоимость моделей",
15
+ "offPeak": "ночь",
16
+ "peak": "пик",
17
+ "rate.custom": "Пользовательский",
18
+ "rate.default": "По умолчанию",
19
+ "rate.input": "Вход: {price} / 1M токенов",
20
+ "rate.output": "Выход: {price} / 1M токенов",
21
+ "rate.unit": "/ 1M ток.",
22
+ "table.model": "Модель",
23
+ "table.provider": "Провайдер",
24
+ "table.rate": "Тарифная ставка",
25
+ "table.total": "Итого",
26
+ "title": "Счётчик стоимости токенов",
27
+ "totalCost": "Общая стоимость",
28
+ "modelNotFound": "Модель не найдена в каталоге OpenRouter. Задайте цены вручную в настройках или сопоставьте модель через modelMap.",
29
+ "modelsBreakdown": "Детализация по моделям",
30
+ "noPriceSpecified": "тариф не указан",
31
+ "noUsageYet": "Провайдер ещё не передал данные об использовании для этой сессии.",
32
+ "routeUnknown": "маршрут неизвестен",
33
+ "sessionTokens": "Токены сессии",
34
+ "settings.loading": "Загрузка настроек…",
35
+ "settings.save": "Сохранить",
36
+ "settings.saveFailed": "Не удалось сохранить настройки: ",
37
+ "settings.saved": "Сохранено",
38
+ "settings.saving": "Сохранение…",
39
+ "settings.unavailable": "Настройки недоступны (namespace ещё не зарегистрирован).",
40
+ "subtitle": "Стоимость сессии в шапке, тарифы токенов и детализация по моделям"
41
+ }
42
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "@goodandready/dsh-time-machine": {
3
+ "autoHeal": "Восстановление промпта при сбое",
4
+ "autoSnapshot": "Автоснимок перед правкой файлов",
5
+ "close": "Закрыть",
6
+ "confirmDelete": "Удалить эту контрольную точку?",
7
+ "confirmRollback": "Откатиться к этой контрольной точке? Это сбросит изменения в рабочей области.",
8
+ "create": "Создать точку сохранения",
9
+ "delete": "Удалить",
10
+ "diff": "Различия",
11
+ "empty": "Контрольных точек пока нет.",
12
+ "labelPh": "Название контрольной точки",
13
+ "loading": "Загрузка точек сохранения…",
14
+ "noDiff": "Нет изменений относительно контрольной точки.",
15
+ "restore": "Восстановить",
16
+ "rollback": "Откат",
17
+ "rollbackSuccess": "Рабочая область успешно восстановлена.",
18
+ "save": "Создать точку",
19
+ "saved": "Точка сохранена",
20
+ "snapshots": "Снимки состояния",
21
+ "title": "Машина времени (Time Machine)",
22
+ "view": "Просмотр",
23
+ "list": "Хронология",
24
+ "maxSnapshots": "Максимум снимков",
25
+ "sub": "Теневые снимки, diff и мгновенный откат для безопасности агента.",
26
+ "tabTitle": "Машина времени",
27
+ "unavailable": "Настройки недоступны"
28
+ }
29
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "@goodandready/dsh-context-lens": {
3
+ "budget": "Бюджет",
4
+ "compress": "Сжать",
5
+ "depth": "Макс. глубина AST",
6
+ "history": "Недавние операции",
7
+ "lowBudget": "Бюджет почти исчерпан",
8
+ "mode": "Режим сжатия",
9
+ "placeholder": "Вставьте лог Jest/Pytest сюда…",
10
+ "preview": "Предпросмотр лога",
11
+ "ready": "Готово",
12
+ "saved": "Сохранено",
13
+ "stats": "Статистика",
14
+ "tokens": "Токены",
15
+ "total": "Всего",
16
+ "trimmed": "Обрезано",
17
+ "viewLog": "Просмотреть лог",
18
+ "saving": "Сохранение…",
19
+ "sub": "Сжатие AST, фильтрация логов, бюджет токенов",
20
+ "title": "Context Lens & Token Guard",
21
+ "tracking": "Отслеживание экономии токенов",
22
+ "active": "Активно",
23
+ "autoCollapse": "Автосворачивание логов",
24
+ "lowBudgetBadge": "Низкий бюджет",
25
+ "noData": "Нет данных",
26
+ "ops": "Операции",
27
+ "previewApprox": "Предпросмотр на сервере",
28
+ "readyState": "Готов к сжатию",
29
+ "refresh": "Обновить",
30
+ "threshold": "Порог автосжатия (символов)"
31
+ }
32
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "@goodandready/dsh-shadow-auditor": {
3
+ "auditBadge": "Аудит команд",
4
+ "blockCommands": "Блокировать опасные команды",
5
+ "blockCommandsDesc": "Проверяет --force, rm -rf, systemctl, удаление БД, curl|bash",
6
+ "lastAudit": "Последний аудит",
7
+ "loading": "Загрузка…",
8
+ "save": "Сохранить",
9
+ "saved": "Сохранено",
10
+ "saving": "Сохранение…",
11
+ "strictSecrets": "Строгое сканирование секретов",
12
+ "strictSecretsDesc": "Блокировать при наличии API-ключей или приватных токенов в diff",
13
+ "title": "Аудитор безопасности (Shadow Auditor)",
14
+ "unlocked": "Разблокировано",
15
+ "subtitle": "Безопасность секретов и команд",
16
+ "auditBadgeDesc": "Отображать бейдж безопасности в заголовке сессии",
17
+ "enableAuditLog": "Включить журнал аудита",
18
+ "enableAuditLogDesc": "Записывать все выполненные агентом shell-команды в локальный файл журнала",
19
+ "maxFileSizeMb": "Макс. размер файла лога (МБ)",
20
+ "maxFileSizeMbDesc": "Размер, при котором выполняется ротация файла аудита",
21
+ "retentionDays": "Срок хранения логов (дней)",
22
+ "retentionDaysDesc": "Удалять записи аудита старше указанного количества дней",
23
+ "unavailable": "Настройки аудитора временно недоступны"
24
+ }
25
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "dsh-clinebot": {
3
+ "settings.loading": "Загрузка настроек ClineBot…",
4
+ "settings.unavailable": "Настройки ClineBot недоступны (системный namespace не готов).",
5
+ "subtitle": "Подписка ClinePass ($9.99/мес) с проверенными и пользовательскими моделями.",
6
+ "title": "ClineBot"
7
+ }
8
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "dsh-lanmode": {
3
+ "sub": "mDNS (dsh.local), полифилы Web API, TLS для микрофона и PWA",
4
+ "title": "Локальный и мобильный доступ (dsh-lanmode)"
5
+ }
6
+ }
@@ -0,0 +1,318 @@
1
+ {
2
+ "settings.pluginConsole": {
3
+ "active": "Подключён",
4
+ "adaptUnlockBtn": "Адаптировано — разблокировать",
5
+ "adaptUnlockDone": "Разблокировано: обновите страницу, строка включена",
6
+ "adaptUnlockHint": "Установленная версия прошла проверку исходного кода: разблокировать сейчас",
7
+ "addLocal": "Добавить локальный",
8
+ "addSearchSource": "Добавить источник поиска",
9
+ "addSource": "Добавить",
10
+ "aggregateBadge": "Агрегатор",
11
+ "aggregateTitle": "Репозиторий-агрегатор: корень не опубликован; плагины находятся в подпакетах (откройте для установки)",
12
+ "aiConfirmDeploy": "Будет выполнено шагов развёртывания: {n} для {name} (возможна установка ПО, запись настроек, запуск служб). Подтвердить и развернуть?",
13
+ "aiConsentApprove": "Согласен, продолжить (может взиматься плата)",
14
+ "aiConsentDecline": "Отмена",
15
+ "aiConsentNotifyTitle": "Установка плагина требует подтверждения",
16
+ "aiConsentRemember": "Больше не спрашивать (автоодобрение ИИ-планировщика; напоминания можно вернуть внизу маркета)",
17
+ "aiConsentText": "Все стандартные каналы установки не сработали. Локальный ИИ может взять установку на себя, вызвав модель DeepSeek API (может взиматься плата). Продолжить?",
18
+ "aiEmpowerCancel": "Отмена",
19
+ "aiEmpowerComponents": "Обнаруженные серверные компоненты",
20
+ "aiEmpowerDone": "Развёртывание через ИИ завершено",
21
+ "aiEmpowerExecuting": "ИИ выполняет развёртывание…",
22
+ "aiEmpowerFail": "Сбой развёртывания через ИИ",
23
+ "aiEmpowerFrameworkCheck": "Проверка совместимости с платформой",
24
+ "aiEmpowerLabel": "ИИ-развёртывание",
25
+ "aiEmpowerLogs": "Журнал выполнения",
26
+ "aiEmpowerNeedSteps": "Выберите хотя бы один шаг, затем нажмите «Одобрить и развернуть»",
27
+ "aiEmpowerPlanTitle": "План развёртывания через ИИ",
28
+ "aiEmpowerRun": "Одобрить и развернуть",
29
+ "aiEmpowerSrcTitle": "Компонент для развёртывания (npm-пакет или репозиторий GitHub)",
30
+ "aiEmpowerSteps": "Шаги выполнения (выбираемые)",
31
+ "aiEmpowerTitle": "ИИ-развёртывание: чтение документации, планирование и автоматическое развёртывание компонента; для серверных компонентов доступны кнопки запуска/остановки",
32
+ "aiEmpowerType": "Тип",
33
+ "aiEmpowerWaiting": "ИИ анализирует документацию и составляет план (1–5 мин, использует DeepSeek API)…",
34
+ "aiFallbackLabel": "ИИ-помощник",
35
+ "aiFallbackOff": "ИИ-помощник отключён вашими настройками; установка отменена без затрат",
36
+ "aiFallbackTitle": "Когда выключено: при сбое стандартных каналов установка сразу отменяется без вызова API модели",
37
+ "aiPlanHint": "⚠️ ИИ только составляет план — для развёртывания требуется ваше явное подтверждение: выбор шагов → Одобрить и развернуть → повторное подтверждение",
38
+ "aiProgressTitle": "Выполняется развёртывание через ИИ — нажмите для просмотра",
39
+ "aiRememberNote": "ИИ-помощник одобрен автоматически согласно вашим настройкам (напоминания можно вернуть внизу)",
40
+ "aiRememberReset": "Напоминания ИИ-помощника отключены (нажмите для восстановления)",
41
+ "aiRepaired": "Локальные AI took over and finished the repair; refresh the page",
42
+ "aiWorkspaceInfo": "Рабочее пространство исследования",
43
+ "autoReload": "Страница будет перезагружена автоматически…",
44
+ "backToSearch": "Назад к поиску",
45
+ "bundleNote": "Этот пакет является бандл-плагином (например, пакет оформления); перезапустите службу DSH для активации",
46
+ "cancelEdit": "Отмена",
47
+ "checkUpdate": "Проверить обновление",
48
+ "checkingUpdate": "Проверка…",
49
+ "cleanResiduals": "Очистить остаточные резервные копии",
50
+ "closeModal": "Закрыть",
51
+ "collapseDesc": "Свернуть",
52
+ "collapseResults": "Свернуть результаты",
53
+ "compActionDone": "{action}: {name}",
54
+ "compAutoTitle": "Автозапуск: запускать этот сервер автоматически при старте DSH (выкл. = вручную)",
55
+ "compCollapseTitle": "Свернуть карточку сервера",
56
+ "compDropTitle": "Развернуть для открытия всех URL сервера",
57
+ "compExpandTitle": "Развернуть карточку сервера",
58
+ "compHealthy": "Исправен",
59
+ "compNoUrl": "URL пока отсутствует",
60
+ "compOpen": "Открыть",
61
+ "compRefresh": "Обновить component status",
62
+ "compRunning": "Работает",
63
+ "compStart": "Запустить",
64
+ "compStatus": "Статус",
65
+ "compStop": "Остановить",
66
+ "compStopped": "Остановлен",
67
+ "compUnhealthy": "Неисправен",
68
+ "config-only": "Только настройки",
69
+ "confirmDelete": "Подтвердить delete?",
70
+ "consentWaiting": "Ожидание одобрения…",
71
+ "copiedInstallCmd": "Установить command copied — paste into your terminal to run it manually",
72
+ "copyInstallCmd": "Копировать",
73
+ "deleteBundleNote": "Бандл удалён; изменения вступят в силу после перезапуска службы",
74
+ "deleteNote": "Плагин deleted and package uninstalled; refreshing",
75
+ "deletePlugin": "Удалить plugin (remove config and uninstall package)",
76
+ "deleting": "Удаление…",
77
+ "depsOutdatedHint": "Для обновления этого пакета также требуются версии подпакетов (во избежание конфликтов)",
78
+ "details": "Сведения",
79
+ "direct": "(Браузер обращается к GitHub напрямую; серверный канал используется как резервный)",
80
+ "directOther": "Поискing {source} through the server channel (custom sources do not use browser-direct)",
81
+ "disabledTag": "Отключён",
82
+ "dismissFailure": "Скрыть уведомление",
83
+ "dshHint": "Похоже на плагин DSH",
84
+ "editSource": "Изменить",
85
+ "elapsed": "Прошло",
86
+ "empty": "Нет доступных плагинов.",
87
+ "enabledTag": "Включён",
88
+ "error": "Плагины are temporarily unavailable.",
89
+ "expandDesc": "Развернуть",
90
+ "expandResults": "Развернуть результаты",
91
+ "extraEmpty": "Нет установленных сторонних плагинов.",
92
+ "extraFilter": "Установитьed",
93
+ "extraFilterAll": "Все",
94
+ "extraFilterTitle": "Переключить: установленные (сторонние) / все",
95
+ "extraTag": "Сторонний",
96
+ "failed": "Операция не удалась",
97
+ "familyCheckUpdate": "Проверить все",
98
+ "familyCheckUpdateTip": "When a newer version is detected this Обновить button appears; click to start the full-family update (subpackage alignment + adapt check)",
99
+ "familyCollapse": "Свернуть",
100
+ "familyExpand": "Развернуть",
101
+ "familySubs": "подпакетов",
102
+ "familyTag": "Семейство бандлов",
103
+ "familyUnlockAll": "Разблокировать all adapted",
104
+ "familyUnlockAllConfirm": "Разблокировать all adapted (source-scan passed) sub packages in this family? Сбой ones stay disabled.",
105
+ "familyUnlockAllDone": "Пакетная разблокировка семейства выполнена",
106
+ "familyUnlockAllTip": "Пакетно разблокировать все подпакеты семейства, прошедшие проверку исходного кода",
107
+ "familyUpdate": "Проверка версий семейства",
108
+ "familyUpdateBtn": "Обновить",
109
+ "frameworkPatchApplied": "применён повторно",
110
+ "frameworkPatchSkipped": "не требуется",
111
+ "frameworkRollbackBtn": "Откатить к предыдущей",
112
+ "frameworkRollbackDone": "Откат запущен: {from} -> восстановление, служба кратковременно отключится",
113
+ "frameworkRollbackTitle": "Откат к предыдущей версии платформы в один клик, служба перезапустится автоматически",
114
+ "frameworkUpToDate": "Платформа обновлена",
115
+ "frameworkUpToDateTitle": "Текущая платформа DSH уже последней версии",
116
+ "frameworkUpgradeBtn": "Обновление платформы",
117
+ "frameworkUpgradeCheckFailed": " (ошибка проверки версии — проверьте сеть и повторите)",
118
+ "frameworkUpgradeConfirm": "Подтвердить upgrade? (service will restart)",
119
+ "frameworkUpgradeDone": "Процесс обновления платформы выполнен",
120
+ "frameworkUpgradeNotice": "Обнаружено обновление платформы DSH: {from} → {to}. Настройки сохранены в {dir}; патч: {patch}. Проверьте совместимость сторонних плагинов.",
121
+ "frameworkUpgradeTitle": "Обновление платформы: резервная копия настроек → перезапуск службы DSH → npm upgrade платформы и пакетов (автооткат при ошибке)",
122
+ "frameworkUpgradeUpToDate": " (уже последняя версия)",
123
+ "frameworkUseUpgrade": "deepseek-harness является платформой DSH, а не плагином; обновление выполняется через карточку обновления платформы",
124
+ "fwStepBackup": "Резервное копирование настроек",
125
+ "fwStepDone": "Обновление завершено",
126
+ "fwStepInstall": "Обновление платформы",
127
+ "fwStepPkg": "Обновить official packages",
128
+ "fwStepRelaunch": "Перезапуск службы DSH",
129
+ "fwStepRollback": "Откат при сбое",
130
+ "fwStepStop": "Остановка службы (страница временно отключится)",
131
+ "giteeClear": "Очистить вход",
132
+ "giteeClientId": "Client ID",
133
+ "giteeClientSecret": "Client Secret",
134
+ "giteeDesc": "Gitee direct-repo mode needs no login; login only raises API rate limits (optional): ① Open gitee.com → Настройки → Data management → Third-party apps (or go directly to https://gitee.com/oauth/applications/new); ② Create an app: any app name, homepage URL = http://127.0.0.1:{port} (any valid URL works), redirect/callback URL = http://127.0.0.1:{port}/plugin-console/gitee-oauth-callback, grant scope user_info, projects; ③ Fill Client ID / Client Secret below, click Сохранить, then click Авторize Gitee",
135
+ "giteeEmpty": "Официальный API поиска Gitee устарел: введите имя репозитория (владелец/репо, напр. oschina/git-osc) и нажмите Enter",
136
+ "giteeLoggedIn": "Выполнен вход в Gitee: ",
137
+ "giteeLoginBtn": "Авторize Gitee",
138
+ "giteeLoginPrompt": "Вход в Gitee не обязателен: введите имя репозитория для поиска и установки",
139
+ "giteeRepoPlaceholder": "Введите репозиторий Gitee (владелец/репо, напр. oschina/git-osc)",
140
+ "giteeSave": "Сохранить",
141
+ "giteeSetupHint": "Вход не выполнен (необязательно) — прямой режим работает без входа; вход снимает ограничения лимитов",
142
+ "giteeTitle": "Вход в Gitee (необязательно)",
143
+ "githubCornerOut": "Вход в GitHub не выполнен",
144
+ "githubLoggedIn": "Выполнен вход в GitHub: ",
145
+ "headersPlaceholder": "Headers (optional): one per line, format Name: Value, e.g. Авторization: Bearer token",
146
+ "homepageLabel": "Домашняя страница",
147
+ "hubUpdateAvailable": "Скачать update",
148
+ "install": "Добавить и включить",
149
+ "installNote": "Применяется HMR; обновите страницу, если плагин содержит интерфейс",
150
+ "installSkill": "Установить skill",
151
+ "installed": "Установитьed and enabled",
152
+ "installedAt": "Установитьed",
153
+ "installedSkillsTitle": "Установитьed skills",
154
+ "installedTitle": "Установитьed plugins",
155
+ "installing": "Установитьing…",
156
+ "installingLocal": "Установитьing…",
157
+ "invalidSearchUrl": "Поиск URL template must contain the {q} placeholder",
158
+ "invalidSourceUrl": "Источник URL must start with https:// (or a private http:// address)",
159
+ "loadMore": "Загрузить ещё",
160
+ "loading": "Чтение плагинов…",
161
+ "loadingDetails": "Чтение сведений…",
162
+ "loadingMore": "Загрузка…",
163
+ "loadingPhase": "Загрузка",
164
+ "marketEmpty": "Нет подходящих проектов.",
165
+ "marketError": "Поиск failed",
166
+ "marketLoading": "Поискing GitHub…",
167
+ "marketLoadingOther": "Поискing {source}…",
168
+ "marketTitle": "Плагин market (GitHub)",
169
+ "marketTitleOther": "Плагин market ({source})",
170
+ "migrateBtn": "Миграция и адаптация",
171
+ "migrateTip": "Проект перенесён (адаптирован к текущей платформе)",
172
+ "modeBtn": "Переключить режим маркета: маркет плагинов / маркет навыков (навыки устанавливаются из репозиториев SKILL.md в ~/.dsh/skills)",
173
+ "multiEmpty": "Подходящих плагинов не найдено ни в одном источнике поиска.",
174
+ "multiSourceTitle": "Мультиисточник: параллельный поиск по GitHub и всем источникам",
175
+ "multiSourceToggle": "Переключатель мультиисточникового поиска",
176
+ "needPackage": "В этом репозитории нет package.json, прямое добавление невозможно",
177
+ "noComponents": "Серверных компонентов пока нет (они появятся после ИИ-развёртывания)",
178
+ "noDetail": "Описание для этого плагина не предоставлено.",
179
+ "noMatch": "Нет подходящих плагинов.",
180
+ "noPackage": "В этом репозитории нет package.json, установка невозможна",
181
+ "off": "Выключить",
182
+ "officialBadge": "Официальный",
183
+ "officialChecking": "Определение типов плагинов…",
184
+ "officialInstallLabel": "Официальная установка",
185
+ "officialOnlyToggle": "Только официальные",
186
+ "officialTitle": "Установитьable via official dsh plugin add (dsh.bundle manifest)",
187
+ "on": "Включить",
188
+ "packageName": "npm-пакет",
189
+ "pending": "Ожидание зависимостей",
190
+ "pendingCompatHint": "Force-disabled after framework upgrade: click Check update first; if a newer version exists the button becomes Обновить & adapt - click it and it unlocks automatically after the compat check",
191
+ "pendingCompatTag": "Ожидает адаптации",
192
+ "pluginSkillTag": "Плагин",
193
+ "pluginSkillsHint": "Предоставляются установленными плагинами, только для чтения; вызываются по имени навыка",
194
+ "pluginSkillsTitle": "Плагин-provided skills",
195
+ "pluginsMode": "Плагины",
196
+ "pluginsTab": "Плагины",
197
+ "privateRootHint": "Корневой пакет не опубликован в npm (приватный); прямая установка невозможна",
198
+ "protectedTag": "Защищённый",
199
+ "pure-plugin": "Обычный плагин",
200
+ "readmeLabel": "Сводка Readme",
201
+ "recentFailures": "Недавние ошибки установки",
202
+ "refreshList": "Обновить plugin list",
203
+ "relaunchBtn": "Перезапустить службу",
204
+ "relaunchDone": "Запрошен ручной перезапуск (запуск службы, если порт не прослушивается)",
205
+ "relaunchTitle": "Во время обновления платформы служба может отключиться — нажмите для ручного перезапуска DSH",
206
+ "reloadPage": "Обновить страницу",
207
+ "removeSource": "Удалить",
208
+ "repoError": "Сбой to read repository",
209
+ "repoLabel": "Репозиторий",
210
+ "repoLandBusy": "Клонирование… (крупные репозитории могут занять время)",
211
+ "repoLandDirLabel": "Сохранить path",
212
+ "repoLandDone": "Размещено в: ",
213
+ "repoLandEntry": "Клонирование репозиториев",
214
+ "repoLandExists": "Уже существует — клонирование не требуется",
215
+ "repoLandLabel": "Клонирование репозиториев",
216
+ "repoLandLanded": "Размещено",
217
+ "repoLandList": "Клонированные репозитории",
218
+ "repoLandOpenFolder": "Открыть папку",
219
+ "repoLandPlaceholder": "владелец/репо или URL GitHub, напр. deepseek-ai/deepseek-harness",
220
+ "repoLandRemoveConfirm": "Удалить landed repo {repo} (local folder will be removed)?",
221
+ "repoLandSaveDir": "Сохранить path",
222
+ "repoLandTitle": "Клонирование репозиториев: клонирование любого проекта GitHub в ~/.dsh/repos/ (не только плагинов DSH)",
223
+ "repoLoading": "Чтение репозитория…",
224
+ "resetSources": "Сбросить по умолчанию",
225
+ "restartService": "Перезапустить service",
226
+ "restarting": "Служба перезапускается, страница скоро восстановится…",
227
+ "retry": "Повторить",
228
+ "saveSource": "Сохранить",
229
+ "search": "Поиск",
230
+ "searchInstalledPlaceholder": "Поиск installed plugins (name or id)",
231
+ "searchPlaceholder": "Поиск dsh-plugin projects on GitHub (empty = default query)",
232
+ "searchPlaceholderOther": "Поиск {source} for plugins (empty = default query)",
233
+ "searchSourceTitle": "Нажмите для переключения источника поиска (GitHub / Gitee / свой)",
234
+ "searchSourcesDesc": "Поиск platforms (switch via the pill). Пользовательские sources use a URL template: {q}=keyword, {page}=page number",
235
+ "searchSourcesTitle": "Поиск sources",
236
+ "searchUrlPlaceholder": "Шаблон URL (должен содержать {q})",
237
+ "service": "Серверный компонент",
238
+ "setPrimary": "Сделать основным",
239
+ "skillBadge": "Навык",
240
+ "skillDelete": "Удалить skill",
241
+ "skillDeleteConfirm": "Удалить skill「{name}」?",
242
+ "skillDeletedMsg": "Навык удалён",
243
+ "skillDetailDisabled": "Отключён",
244
+ "skillDetailInstalled": "Установитьed",
245
+ "skillDetailPath": "Путь",
246
+ "skillDisable": "Отключить",
247
+ "skillDisabledTag": "Отключён",
248
+ "skillDisabledTitle": "Отключён: neither model nor user commands can invoke it (disable-model-invocation: true, re-enable anytime)",
249
+ "skillEnable": "Включить",
250
+ "skillEnabledMsg": "Навык включён",
251
+ "skillInstallNote": "Навык скопирован в ~/.dsh/skills; если в профиле не включён плагин dsh-skill-filesystem, навык не обнаружится",
252
+ "skillInstalledMsg": "Навык установлен",
253
+ "skillInstalledTag": "Установлен",
254
+ "skillMarketEmpty": "Каталог навыков пуст (автосбор из репозиториев с тегами agent-skills / claude-skills / dsh-skill)",
255
+ "skillMetaLabel": "Описание навыка",
256
+ "skillNameLabel": "Имя навыка",
257
+ "skillRepoNote": "Репозиторий навыка (SKILL.md), не npm-пакет",
258
+ "skillSystemTag": "Системный",
259
+ "skillSystemTitle": "Системный навык (~/.dsh/skills/.system и т.д.), удаление невозможно",
260
+ "skillTab": "Навыки",
261
+ "skillTitle": "Репозиторий содержит SKILL.md — можно установить как навык в ~/.dsh/skills",
262
+ "skillToggledMsg": "Навык отключён",
263
+ "skillTopicsLabel": "Темы",
264
+ "skillUninstallHint": "Чтобы удалить навык: удалите каталог ~/.dsh/skills/<name>",
265
+ "skillWhenToUseLabel": "Когда использовать",
266
+ "skillsEmpty": "Каталог навыков пуст (автосбор из репозиториев с тегами agent-skills / claude-skills / dsh-skill)",
267
+ "skillsEmptyHint": "Здесь учитываются только пользовательские навыки (~/.dsh/skills); навыки из плагинов отображаются в Центре навыков",
268
+ "skillsGithubOnly": "Поиск навыков поддерживается только через источник GitHub",
269
+ "skillsMarketTitle": "Маркет навыков (GitHub)",
270
+ "skillsMarketTitleOther": "Маркет навыков ({source})",
271
+ "skillsMode": "Навыки",
272
+ "skillsNote": "Режим навыков поддерживает только GitHub; установка навыка = клонирование репозитория в ~/.dsh/skills/<name>/ без патчей и перезапуска",
273
+ "skillsSearchPlaceholder": "Поиск по навыкам (имя, автор, описание)…",
274
+ "sourceName": "Имя",
275
+ "sourceOf": "Источник:",
276
+ "sourcePrimary": "Основной",
277
+ "sourceUrl": "URL (https://…)",
278
+ "sourcesBtn": "Источники",
279
+ "sourcesDesc": "Настройка внешних источников и репозиториев для поиска и установки плагинов",
280
+ "sourcesTitle": "Источники ПО",
281
+ "sourcesUpdated": "Источники обновлены",
282
+ "stageConfiguring": "Запись конфигурации активации",
283
+ "stageInstalling": "Установка",
284
+ "stageLabel": "Этап",
285
+ "stagePreparing": "Подготовка",
286
+ "stageRepairing": "Восстановление",
287
+ "subpackagesEmpty": "Устанавливаемых подпакетов не найдено.",
288
+ "subpackagesError": "Ошибка загрузки подпакетов",
289
+ "subpackagesLoading": "Чтение списка подпакетов…",
290
+ "subpackagesTitle": "Подпакеты репозитория (устанавливаются по отдельности)",
291
+ "suiteBadge": "Набор",
292
+ "suiteComponentFail": "Сбой",
293
+ "suiteComponentOk": "OK",
294
+ "suiteComponentType": "Компонент",
295
+ "suiteInstall": "Установить набор",
296
+ "suiteInstalledMsg": "Набор установлен",
297
+ "suiteRepoNote": "Репозиторий набора (агрегатор подмодулей), не npm-пакет — см. официальную команду установки ниже",
298
+ "suiteTitle": "Агрегатор подмодулей: автосборка компонентов (бандл-плагины / плагины / навыки / пресеты агентов) по логике install.ps1",
299
+ "tab": "Консоль плагинов",
300
+ "toggledOff": "Запрошено отключение",
301
+ "toggledOn": "Запрошено включение",
302
+ "toolbarCloseTitle": "Свернуть панель функций",
303
+ "toolbarLabel": "Панель функций",
304
+ "toolbarOpenTitle": "Развернуть панель функций",
305
+ "unloading": "Выгрузка",
306
+ "unobserved": "Не подключён",
307
+ "upToDate": "Актуальная версия",
308
+ "update": "Обновить",
309
+ "updateAndAdapt": "Обновить и адаптировать",
310
+ "updateAvailable": "Доступна новая версия",
311
+ "updateCheckFailed": "Сбой проверки",
312
+ "updateNow": "Обновить сейчас",
313
+ "userDisabledTag": "Отключено пользователем",
314
+ "userForcedTag": "Принудительно включён патчем",
315
+ "versionLabel": "Версия",
316
+ "view": "Осмотреть"
317
+ }
318
+ }