{ "approval": { "waiting": "Ожидание одобрения", "detail.aria": "Детали утверждения", "escalation": "Инструмент {toolName} запрашивает привилегированное выполнение", "reject": "Отклонить", "allow": "Разрешить", "allowOnce": "Разрешить один раз", "allowAlways": "Всегда разрешать" }, "chat": { "message.stepProcess.thinking": "Анализ запроса", "message.stepProcess.read": "Чтение файлов", "message.stepProcess.readImage": "Чтение изображений", "message.stepProcess.write": "Запись файлов", "message.stepProcess.search": "Поиск кода", "message.stepProcess.edit": "Редактирование файлов", "message.stepProcess.commands": "Запуск команд", "message.stepProcess.code": "Запуск кода", "message.stepProcess.webSearch": "Поиск в Интернете", "message.stepProcess.webFetch": "Посещение веб-страниц", "message.stepProcess.subagents": "Координирующие субагенты", "message.stepProcess.plan": "Обновление плана", "message.stepProcess.questions": "Жду ваших действий", "message.stepProcess.tools": "Вызов инструментов", "message.stepProcess.prepare.read": "Подготовка к чтению файлов", "message.stepProcess.prepare.readImage": "Подготовка к чтению изображений", "message.stepProcess.prepare.write": "Подготовка к записи файлов", "message.stepProcess.prepare.search": "Подготовка к поиску кода", "message.stepProcess.prepare.edit": "Подготовка к редактированию файлов", "message.stepProcess.prepare.commands": "Подготовка к выполнению команд", "message.stepProcess.prepare.code": "Подготовка к запуску кода", "message.stepProcess.prepare.webSearch": "Подготовка к поиску в Интернете", "message.stepProcess.prepare.webFetch": "Подготовка к посещению веб-страниц", "message.stepProcess.prepare.subagents": "Подготовка к координации субагентов", "message.stepProcess.prepare.plan": "Подготовка к обновлению плана", "message.stepProcess.prepare.questions": "Подготовка вопросов", "message.stepProcess.prepare.tools": "Подготовка вызовов инструментов", "message.stepProcess.done.thinking": "Анализ завершен", "message.stepProcess.done.read": "Чтение файлов", "message.stepProcess.done.readImage": "Чтение изображений", "message.stepProcess.done.write": "Написал файлы", "message.stepProcess.done.search": "Искомый код", "message.stepProcess.done.edit": "Отредактированные файлы", "message.stepProcess.done.commands": "Выполнение команд", "message.stepProcess.done.code": "Выполненный код", "message.stepProcess.done.webSearch": "Искал в Интернете", "message.stepProcess.done.webFetch": "Посещенные веб-страницы", "message.stepProcess.done.subagents": "Координированные субагенты", "message.stepProcess.done.plan": "Обновлен план", "message.stepProcess.done.questions": "Задаваемые вопросы", "message.stepProcess.done.tools": "Вызываемые инструменты", "message.stepProcess.joinTwo": "{first} и {second}", "message.stepProcess.comma": ", ", "message.stepProcess.sharedPrefix": "", "message.stepProcess.more": "{title} и т. д.", "message.trigger.request": "Запрошено выполнение", "message.trigger.goal": "Постоянная цель", "message.trigger.agent": "Сообщение о задаче получено", "message.trigger.team": "Сообщение команды получено", "message.trigger.subagent": "Статус подзадачи обновлен", "message.trigger.github": "Событие GitHub получено", "message.trigger.webhook": "Получено внешнее событие", "message.trigger.schedule": "Задача автоматизации", "message.trigger.job": "Фоновая задача обновлена.", "message.trigger.plugin": "Статус плагина обновлен", "message.trigger.explanation": "Это уведомление вызвало такой ответ.", "message.turnProcess.worked": "Завершено", "message.turnProcess.took": "Завершено в ", "message.turnProcess.failed": "Не удалось", "view.chat": "Чат", "image.open": "Посмотреть полное изображение", "image.loading": "Загрузка изображения…", "image.failed": "Предварительный просмотр изображения недоступен.", "image.dialog": "Предварительный просмотр изображения", "image.close": "Закрыть предварительный просмотр изображения", "number.groupSeparator": ",", "duration.compactSeconds": "{seconds}s", "duration.compactMinutes": "{minutes}m{seconds}s", "duration.milliseconds": "{milliseconds}ms", "stats.counts": "Ходов: {turns}, шагов: {steps}", "stats.cacheHit": "Попадание в кэш: {percent}%", "stats.dialog.title": "Статистика сеансов", "stats.dialog.usageTitle": "Использование токена", "stats.dialog.llmTime": "время магистратуры", "stats.dialog.toolTime": "Время работы инструмента", "stats.dialog.ttft": "Среднее время до первого токена (TTFT)", "stats.dialog.speed": "Токенов в секунду (TPS)", "chat.loadingHistory": "Загрузка истории…", "chat.loadError": "Не удалось загрузить историю: {message} ({code})", "chat.loadOlder": "Загрузить раньше", "chat.toBottom": "Вернуться к низу", "chat.deepDiving": "Глубокое размышление", "chat.deepDivingFor": "Глубокое размышление в течение {duration} ···", "chat.turnNavigation.label": "Навигация по ходам", "chat.turnNavigation.jump": "Перейти к ходу {turn}", "chat.turnNavigation.jumpLoad": "Загрузить ход {turn} и перейти к нему", "chat.turnNavigation.turn": "Ход {turn}", "settings.performance.title": "Производительность и использование", "settings.performance.description": "Выберите, какой объем информации о производительности и использовании показывать", "settings.performance.compact": "Компактный", "settings.performance.detailed": "Подробный", "settings.links.title": "Открыть ссылки на чат в", "settings.links.description": "Выберите, где открывать веб-ссылки", "settings.links.sidebar": "Боковая панель в приложении", "settings.links.newTab": "Браузер по умолчанию", "settings.transcript.title": "Детали работы", "settings.transcript.description": "Выберите, насколько подробно следует отображать вызовы инструментов.", "settings.collapse.title": "Когда сворачивать детали работы", "settings.collapse.description": "Выберите, когда автоматически сворачивать сведения о работе", "settings.collapse.completion": "По завершении", "settings.collapse.nextInput": "В следующем сообщении", "settings.foldedReplies.title": "Ответы после сворачивания", "settings.foldedReplies.description": "Выберите, какие ответы помощника останутся видимыми, когда сведения о работе будут свернуты.", "settings.foldedReplies.all": "Все ответы", "settings.foldedReplies.final": "Только окончательный ответ", "settings.transcript.compact": "Компактный", "settings.transcript.standard": "Стандартный", "settings.transcript.detailed": "Подробный", "settings.transcript.verbose": "Многословный", "fileOpen.title": "Не удалось открыть файл", "fileOpen.unknown": "Не удалось открыть этот файл", "message.extraBlock": "Дополнительный блок контента", "message.systemPrompt": "Системная подсказка", "message.systemPromptUpdate": "Обновление системного запроса", "message.toolAdded": "Добавлен инструмент: {name}.", "message.toolRemoved": "Инструмент удален: {name}.", "message.toolsAdded": "Добавлено: {names}", "message.toolsAddedCount": "{count} добавлен", "message.toolsChanged": "{added} добавлен, {removed} удален.", "message.toolsRemoved": "Удалено: {names}.", "message.toolsRemovedCount": "{count} удален.", "message.toolsUpdated": "Инструменты обновлены", "message.contextInjection": "Внедрение контекста", "message.contextRecall": "Отзыв сеанса", "message.referenceSummary": "Ссылка на сессию · {labels}", "message.referenceSeparator": ", ", "message.context.instructions.loaded": "загружен", "message.context.instructions.added": "добавлено", "message.context.instructions.updated": "обновлено", "message.context.instructions.removed": "удалено", "message.context.catalog.replaced": "Каталог замены", "message.context.catalog.more": "… {count} ещё", "message.context.snapshot.supersedes": "Заменяет предыдущие снимки", "message.context.relay.from": "Из сеанса {session}", "message.context.recall.counts": "{retained} сохранен · {omitted} опущен", "message.context.recall.truncated": "усеченный", "message.compaction": "Контекст сжат", "message.compaction.running": "Сжатие контекста…", "message.compaction.completed": "Сжатые элементы истории {items} (токены ~{tokens})", "message.compaction.expand": "Посмотреть сводку по уплотнению", "message.compaction.unavailable": "Сводка по уплотнению недоступна.", "message.compaction.commandTitle": "компактный", "message.think": "Подумайте", "message.unknownSurface": "Неизвестное событие на поверхности: {type}.", "message.unknownBlock": "Неизвестный блок контента", "message.turnProcess.toolCalls.one": "{count} вызов инструмента", "message.turnProcess.toolCalls.other": "{count} вызовов инструментов", "message.turnProcess.messages.one": "Сообщение {count}", "message.turnProcess.messages.other": "Сообщения {count}", "message.turnProcess.subagents.one": "Субагент {count}", "message.turnProcess.subagents.other": "Субагенты {count}", "message.turnProcess.thoughtForAWhile": "Размышлял некоторое время", "message.turnProcess.separator": " · ", "message.stopped": "Остановлено", "message.branch": "Перейти к новому разговору", "message.branchUnavailable": "Доступно только в последнем сообщении о завершенном ходу.", "message.retry.active": "Повторный запрос модели", "message.retry.cancelled": "Повтор запроса модели отменен.", "message.retry.started": "Повторный запрос модели", "message.retry.scheduled": "Ожидание повторного запроса модели", "message.retry.status": "{label} ({retry}/{maximum}) · {seconds}s", "message.retry.delay": "Задержка повтора: ", "message.retry.failure": "Причина неисправности: ", "message.failure.auth": "Ключ API недействителен.", "message.taskStopped": "Задача остановлена", "message.failure.accountSignedOut": "Остановлено, поскольку вы вышли из DeepSeek.", "message.failure.interrupted": "Процесс DSH завершился до завершения этого хода (например, был завершен, произошел сбой или истекло время ожидания при завершении работы), поэтому ход был закрыт при перезапуске DSH. Незавершенные вызовы инструментов имеют неизвестные результаты.", "message.failure.accountSignInRequired": "Войдите в DeepSeek и убедитесь, что пункт назначения запроса поддерживает аутентификацию учетной записи.", "message.failure.quota": "Квота запросов исчерпана.", "message.turnError": "Этот ход завершился ошибкой", "message.maxTokens": "Достигнут предел выходных токенов", "message.maxTokens.hint": "Ответ был прерван; более ранний вывод сохраняется в разговоре. Отправьте «продолжить», чтобы модель возобновила работу.", "message.tokensPerSecond": "{tps} ток/с", "message.turnUsage.title": "Использование ресурсов за ход", "message.turnUsage.consumed": "Использование {total}", "message.turnUsage.model": "Поставщик/модель", "message.turnUsage.cacheHit": "Попадание в кэш", "message.turnUsage.input": "Некэшированный ввод", "message.turnUsage.cacheRead": "Кэшированный ввод", "message.turnUsage.cacheWrite": "Запись в кэш", "message.turnUsage.output": "Выход", "message.turnUsage.reasoning": " (рассуждение {tokens})", "message.turnUsage.count": "{count} ток", "duration.secondUnit": "с", "duration.minuteUnit": "м ", "duration.hourUnit": "ч ", "command.running": "Бег…", "command.failed": "Команда не выполнена", "command.done": "Завершено", "command.title": "Команда", "row.running": "Бег", "row.failed": "Не удалось", "json.truncated": "… усечено, всего символов {total}", "clock.md": "{m}/{d}", "clock.ymd": "{y}-{m}-{d}" }, "command": { "section.add": "Добавить", "section.commands": "Команды", "label.goal": "Цель", "label.plan": "План", "label.feedback": "Обратная связь", "label.compact": "Компактный", "label.permission": "Разрешение", "label.export": "Экспорт", "description.goal": "Установите или просмотрите цель для долгосрочной задачи", "description.plan": "Войти в режим плана или выйти из него", "description.feedback": "Запишите отзыв об этом сеансе", "description.compact": "Сжать старую историю разговоров", "description.permission": "Переключение настроек разрешений (режим песочницы + политика утверждения)", "description.export": "Загрузите этот журнал сеанса в виде ZIP-архива.", "token.goal": "цель", "token.plan": "план", "token.feedback": "обратная связь", "token.compact": "компактный", "token.permission": "разрешение", "token.export": "экспорт", "search.placeholder": "Искать…", "search.aria": "Параметры фильтра", "status.loading": "Загрузка параметров…", "status.applying": "Применение…", "status.empty": "Нет вариантов", "overlay.aria": "Опции /{command}", "listbox.aria": "/{command} совпадений", "notice.attachmentsUnsupported": "/{command} не принимает вложения; сначала удали их" }, "deliverables": { "presented.nativeUnavailable": "У этого файла нет доступного пути к хосту. Предварительный просмотр на боковой панели.", "presented.revealError": "Не удалось отобразить в файловом менеджере. Попробуйте еще раз.", "presented.directoryError": "Не удалось открыть содержащую папку. Попробуйте еще раз.", "presented.directoryOpening": "Открытие папки, содержащей…", "presented.directoryOpened": "Запрошенное открытие, содержащее папку", "presented.revealed": "Запрошенное отображение в файловом менеджере", "presented.revealing": "Отображается в файловом менеджере…", "presented.unavailable": "У этого хоста нет рабочего стола, на котором можно было бы открывать файлы или папки во внешних приложениях. Файлы по-прежнему можно просматривать на боковой панели.", "presented.retry": "Повторить", "presented.hostError": "Не удалось прочитать информацию о рабочем столе хоста.", "presented.preview": "Предварительный просмотр в боковой панели", "presented.previewButton": "Откройте {name} на боковой панели.", "presented.previewCard": "Предварительный просмотр {name} на боковой панели", "presented.all": "Все файлы {count}", "presented.expandAria": "Показать все доставленные файлы {count}", "presented.collapse": "Свернуть", "presented.collapseAria": "Свернуть доставленные файлы", "presented.opening": "Открытие…", "presented.opened": "Открыть запрос", "presented.error": "Не удалось открыть. Нажмите, чтобы повторить попытку.", "presented.file": "Файл", "row.title": "Представление файлов", "row.running": "Доставка", "row.preparing": "Подготовка результатов", "row.ok": "Доставлено", "row.error": "Доставка не удалась", "row.stopped": "Прерванный", "row.inspect": "Проверить вызов", "changes.title": "Отредактированные файлы {count}.", "changes.singleTitle": "Отредактировано {name}", "changes.added": "+{count}", "changes.deleted": "-{count}", "changes.binary": "двоичный", "changes.openReview": "Просмотрите изменения этого хода на боковой панели.", "changes.all": "Все файлы {count}", "changes.expandAria": "Показать все измененные файлы {count}", "changes.collapse": "Свернуть", "changes.collapseAria": "Свернуть измененные файлы", "changes.oversized": "слишком большой", "changes.viewDiff": "Посмотреть изменения в {name}", "review.title": "Проверка · ход {turn}", "review.selectFile": "Выберите файл для просмотра", "review.split": "Переключиться на разделенный вид", "review.unified": "Переключиться на единый вид", "review.splitAria": "Разделенный вид", "review.wrap": "Включить перенос строк", "review.nowrap": "Отключить перенос строк", "review.wrapAria": "Перенос строки", "review.openFile": "Открыть весь файл на боковой панели", "review.openFileAria": "Откройте {name} на боковой панели.", "diff.loading": "Чтение изменений…", "diff.missing": "Содержимое изменений этого хода больше не доступно.", "diff.error": "Не удалось прочитать изменения", "diff.binary": "Бинарный файл; изменения не могут быть показаны", "diff.oversized": "Файл слишком большой; изменения не могут быть показаны", "diff.created": "Создано в этом ходу", "diff.deleted": "Удален на этом ходу", "diff.unchanged": "Обе стороны держат одни и те же линии", "diff.coarse": "Время сравнения строк истекло; отображается как замена всего файла", "diff.truncated": "Показаны первые строки {count}" }, "entryCustomization": { "install": "Просмотрите другие плагины", "create": "Создайте свой плагин", "createPrompt.sidebar": "Создайте плагин DSH с записью на левой боковой панели.", "createPrompt.conversation": "Создайте плагин просмотра диалога DSH.", "createPrompt.rightbar": "Создайте плагин DSH с записью на правой боковой панели." }, "goal": { "phase.active": "Текущая цель", "phase.active.disarmed": "Неактивная цель", "phase.paused": "Приостановленная цель", "phase.blocked": "Заблокированная цель", "objective.aria": "Цель Цель", "commandInput.aria": "Ввод команды", "action.save": "Сохранить цель", "action.cancel": "Отменить редактирование", "action.pause": "Приостановить цель", "action.resume": "Возобновить цель", "action.edit": "Изменить цель", "action.clear": "Четкая цель" }, "slash.menu": { "command": "Команды", "skill": "Навыки", "subagent": "Субагенты", "loading": "Загрузка…", "drill.aria": "Просмотреть папку", "drill.hint": "Просмотреть папку", "drill.key": "Вкладка", "crumbs.aria": "Навигация по папкам", "suggestions.aria": "Триггерные предложения" }, "job": { "count.live.one": "Фоновые задачи выполняются: {count}", "count.live.other": "Фоновые задачи выполняются: {count}", "count.idle.one": "Фоновые задачи: {count}", "count.idle.other": "Фоновые задачи: {count}", "list.aria": "Фоновые задания", "section.live": "Бег", "section.settledCount": "Закончено {count}", "section.clear": "Очистить", "row.expandAria": "Показать живой вывод {label}", "row.collapseAria": "Скрыть прямой вывод {label}", "kill.stop": "Остановить задачу {label}", "kill.confirm": "Нажмите еще раз, чтобы подтвердить", "kill.confirmAction": "Подтвердить остановку", "kill.failed": "Остановить не удалось", "status.running": "бег", "status.stopping": "остановка", "status.completed": "завершено", "status.killed": "отменен", "status.failed": "не удалось", "duration.seconds": "{seconds}s", "duration.minutes": "{minutes}m {seconds}s", "duration.hours": "{hours}h {minutes}m", "duration.title.live": "Бегу за {duration}", "duration.title.done": "Взял {duration}", "output.gap": "… ранее объемы производства упали …", "output.error": "поток вывода в реальном времени прерван: {error}", "terminal.signal": "сигнал {signal}", "terminal.exitCode": "выход {code}", "terminal.noExitCode": "нет кода выхода", "terminal.commandLine": "Командная строка {n}", "terminal.running": "бег", "terminal.failed": "не удалось", "terminal.done": "сделано", "terminal.copy": "Копировать", "terminal.copied": "Скопировано", "terminal.noOutput": "(нет вывода)", "terminal.collapse": "Свернуть", "terminal.collapseAria": "Свернуть вывод", "terminal.expand": "Показать {n} больше строк", "terminal.expandAria": "Развернуть свернутые выходные строки {n}" }, "feedback": { "action.like": "Хороший ответ", "action.likeActive": "Удалить оценку", "action.dislike": "Плохой ответ", "action.dislikeActive": "Удалить оценку", "dialog.title": "Отправить отзыв", "dialog.categories": "Категория обратной связи", "dialog.detail": "Подробности обратной связи", "dialog.hint": "Добавьте детали, чтобы помочь нам стать лучше. Ваше сообщение будет включать текущий журнал разговоров.", "category.task-result": "Результат задачи", "category.instruction-following": "Понимание и следование инструкциям", "category.product-interaction": "Особенности продукта и взаимодействие", "category.service-stability": "Стабильность и скорость", "category.resource-cost": "Использование ресурсов и стоимость", "category.security-privacy-permission": "Безопасность, конфиденциальность и разрешения", "category.other": "Другое", "toast.recorded": "Спасибо за ваш отзыв", "error.conflict": "Этот отзыв изменился в другом месте; отображается последнее состояние", "error.load": "Не удалось загрузить отзыв.", "error.generic": "Не удалось сохранить отзыв", "error.noteTooLarge": "Описание слишком длинное; сократите его и отправьте снова" }, "model": { "provider.account": "DeepSeek Аккаунт", "command.label": "Модель", "command.description": "Выберите модель для этого разговора", "option.loadError": "Не удалось загрузить каталог: {message}.", "trigger.fallback": "Выберите модель", "trigger.loading": "Загрузка моделей…", "trigger.selectAria": "Выберите модель", "trigger.aria": "Выберите модель, текущую {model}", "trigger.ariaEffort": "Выберите модель, текущую версию {model}, аргументацию {effort}", "menu.aria": "Модель и рассуждения", "menu.model": "Модель", "menu.effort": "Усилие", "effort.providerDefault": "По умолчанию", "status.loading": "Обновление списка моделей…", "error.action": "Не удалось выполнить операцию модели: {message}.", "error.sessionInUse": "Этот сеанс уже используется, возможно, другим работающим экземпляром DSH (например, веб-сайтом dsh или настольным приложением). Закройте другие работающие экземпляры DSH и повторите попытку.", "action.reload": "Перезагрузить", "warning.groupLoad": "{name} не удалось загрузить: {message}", "search.placeholder": "Поиск моделей…", "search.clear": "Очистить поиск", "search.empty": "Нет подходящих моделей.", "empty.models": "Нет доступных моделей.", "empty.efforts": "Эта модель не обеспечивает обоснования уровней усилий." }, "permission.access": { "title": "Разрешение", "description": "Выберите режим разрешений по умолчанию для новых сеансов", "loading": "Загрузка", "unavailable": "Недоступно", "preset.readOnly": "Только чтение", "preset.workspaceWrite": "Запись в рабочей области", "preset.fullAccess": "Полный доступ", "confirm.title": "Включить полный доступ?", "confirm.description": "Полный доступ позволяет новым сеансам сократить количество шагов подтверждения и напрямую выполнять больше действий, включая конфиденциальные операции, изменение файлов или внешние команды. Используйте его только в том случае, если вы доверяете последующим задачам.", "confirm.acknowledge": "Я понимаю риски и хочу продолжить", "confirm.cancel": "Отмена", "confirm.enable": "Включить полный доступ" }, "settings.permission": { "title": "Разрешение", "description": "Выберите режим разрешений по умолчанию для новых сеансов", "loading": "Загрузка", "unavailable": "Недоступно", "preset.readOnly": "Только чтение", "preset.workspaceWrite": "Запись в рабочей области", "preset.fullAccess": "Полный доступ", "confirm.title": "Включить полный доступ?", "confirm.description": "Полный доступ позволяет новым сеансам сократить количество шагов подтверждения и напрямую выполнять больше действий, включая конфиденциальные операции, изменение файлов или внешние команды. Используйте его только в том случае, если вы доверяете последующим задачам.", "confirm.acknowledge": "Я понимаю риски и хочу продолжить", "confirm.cancel": "Отмена", "confirm.enable": "Включить полный доступ" }, "plan": { "chip.label": "План", "preview.title": "План", "preview.document": "План · Markdown", "preview.action": "Открыть", "preview.open": "Открытая планировка в боковой панели", "preview.full": "Посмотреть полный план", "preview.openNamed": "Открытая планировка: {title}", "preview.loading": "План загрузки…", "preview.failed": "Не удалось загрузить план", "preview.invalidAddress": "Неверный адрес плана", "preview.historyUnavailable": "История сеансов недоступна", "preview.notFound": "Этот план не найден", "preview.unavailable": "Предварительный просмотр плана недоступен.", "preview.expired": "Срок действия этой временной предварительной версии плана истек. Откройте его снова из карточки ожидающего рассмотрения.", "chip.on.aria": "Режим планирования включен. Нажмите, чтобы выключить.", "chip.on.title": "Режим планирования включен — нажмите, чтобы выключить (/plan off)", "chip.exitFailed": "Не удалось выйти из режима планирования." }, "pluginManager": { "panel": "Плагины", "title": "Плагины", "intro": "Установите, включите и настройте плагины", "infoLabel": "О плагинах", "infoDescription": "Настройте официальные плагины, а также установите или управляйте другими плагинами здесь. Посмотреть список встроенных плагинов и статус выполнения можно в разделе «Настройки» → «Встроенные плагины».", "loading": "Чтение плагинов…", "error": "Не удалось прочитать все плагины, возможно, из-за проблем с сетью.", "unavailable": "Это развертывание выполняется без управляемого профиля, поэтому здесь нельзя устанавливать или переключать плагины.", "retry": "Повторить", "refresh": "Обновить", "refreshError": "Обновить не удалось. Пожалуйста, попробуйте еще раз.", "empty": "Плагины пока не установлены.", "addPlugin": "Добавить плагин", "chooseAddMethod": "Выберите, как добавить плагин", "installExisting": "Установите сторонний плагин", "installExistingDescription": "Поддерживает пакеты npm, репозитории Git и локальные каталоги.", "restartNotice": "Перезапустите DSH, чтобы применить изменения. {reason}", "restartReasonNoHmr": "Этот профиль применяет изменения только при запуске.", "restartReasonPackageMoved": "Установленный пакет теперь разрешается в другой каталог, или изменение заменяет пакет, предоставляемый установкой DSH. Удалите пакет перед установкой его из другого места.", "restartReasonHostModule": "Изменение доходит до загруженных модулей DSH.", "restartReasonUnmanagedPlugin": "Изменение достигает плагина, работающего за пределами списка плагинов.", "restartReasonModuleComparison": "DSH не смог сравнить загруженные плагины с их файлами.", "overriddenNotice": "{name} был сохранен, но конфигурация с более высоким приоритетом переопределяет его, поэтому он не действует.", "bundlesTitle": "Установленные плагины", "basicTitle": "Встроенные настройки плагина", "extensionsTitle": "Экспериментальные плагины", "moreTitle": "Экспериментальные плагины", "moreAction": "Ещё", "tabsLabel": "Просмотры плагинов", "installedTab": "Установлено", "statusProblem": "Проблема", "statusBeta": "Экспериментальный", "reasonLabel": "Причина", "metadataError": "Ошибка метаданных пакета: {error}.", "versionTag": "v{version}", "partsLabel": "Компоненты", "sourceTitle": "Источник", "sourceSpec": "Источник кода", "sourceBuiltIn": "Встроенный", "sourceVersion": "Текущая версия", "partsEmpty": "Этот пакет плагинов не содержит компонентов.", "partsCountTotal": "{count} всего", "partsCountRunning": "{count} работает", "partsCountOff": "{count} выкл.", "partOff": "Выкл.", "partsCountFailed": "{count} не удалось", "partsFilter": "Компоненты фильтра", "partsFilterEmpty": "Ни один компонент не соответствует.", "partToggle": "Включить компонент {name}", "rowPhasePending": "Ожидание зависимостей", "rowPhaseLoading": "Загрузка", "rowPhaseActive": "Бег", "rowPhaseFailed": "Проблема", "rowPhaseUnloading": "Разгрузка", "enableToggle": "Включить {name}", "applyingChange": "Применение изменений в {name}", "openDetail": "Посмотреть {name}", "backToList": "Вернуться к плагинам", "crumbRoot": "Плагины", "backToPackage": "Вернуться к {name}", "configureRow": "Настроить {name}", "rowStateIdle": "Не работает", "uninstall": "Удалить", "uninstallLabel": "Удалить {name}", "installTitle": "Добавить плагин", "installDescription": "Введите имя пакета плагина, адрес репозитория GitHub или путь к локальному каталогу.", "installSpecLabel": "Название или адрес пакета", "installSpecPlaceholder": "например dsh-plugin-whale-pet", "installGuideToggle": "Руководство по установке и примеры", "installGuideHide": "Скрыть руководство", "installGuideIdTitle": "Введите имя пакета npm плагина.", "installGuideIdExample": "dsh-плагин-кит-питомец", "installGuideIdHint": "Имя пакета плагина — это имя пакета npm (например, dsh-xxx или @author/plugin): часть после добавления плагина dsh или добавления pnpm в команде установки README плагина сообщества.", "installGuideExampleLabel": "Пример: ", "installGitTemplateHint": "Замените это фактическим адресом репозитория Git.", "installPathTemplateHint": "Замените это фактическим путем к вашему локальному каталогу плагина.", "installGuideFill": "Используйте пример", "installGuideFillAria": "Используйте пример {example}", "installGuideSafety": "Устанавливайте только те плагины, которым вы доверяете: они запускаются с вашими разрешениями и могут повредить DeepSeek Harness или привести к утечке ваших данных.", "installUpgradeNotice": "Официальные плагины по требованию предлагают обновление, если их версия отличается от DSH. Чтобы обновить другие плагины, удалите и переустановите их.", "registryToggle": "Реестр", "registryLegend": "Реестр npm, из которого загружается плагин.", "registryDefault": "Реестр по умолчанию", "registryOfficial": "Официальный реестр npm", "registryNpmmirror": "Зеркало материкового Китая", "registryCustom": "Пользовательский адрес", "registryCustomPlaceholder": "https://npm.example.com/", "registryCustomHint": "Введите внутренний или частный адрес реестра npm, начинающийся с http:// или https://.. Если требуется вход в систему, сохраните учетные данные в ~/.npmrc на этом компьютере.", "registryCustomInvalid": "Введите адрес, начинающийся с http:// или https://.", "registryListSeparator": ", ", "sentenceSeparator": " ", "installRun": "Установить", "installChecking": "Проверка…", "installConfirmedTitle": "Установить плагин", "installConfirmedRefused": "Этот плагин не может быть установлен", "installProblemInvalid": "Это не имя или адрес пакета, который можно установить: {reason}.", "installProblemInstalled": "Этот плагин уже установлен. Чтобы обновить его, удалите его и установите снова.", "installProblemShipped": "Этот плагин поставляется с DSH; обновление DSH обновляет его", "installBundledTitle": "Этот плагин поставляется с DSH.", "installBundledDescription": "Включите его, не загружая другую копию.", "installProblemNotFound": "Такой плагин не найден", "installProblemNotPackage": "Путь не существует или не является допустимым пакетом плагина.", "installProblemNotBundle": "Этот пакет не декларирует отсутствие пакета, поэтому его нельзя установить как плагин: {reason}", "installProblemNetwork": "Не удалось получить доступ к реестру плагинов; проверьте сеть и попробуйте еще раз", "installProblemNetworkAll": "Не удалось получить доступ к реестру (пробовал: {registries}); проверьте настройки сети или прокси или измените реестр", "installProblemUnknown": "Не удалось найти плагин: {reason}.", "installingTitle": "Установка плагина…", "installedTitle": "Установлено", "statusNotInstalled": "Не установлено", "statusMissingFiles": "Пакет недоступен", "statusUpdateAvailable": "Доступно обновление", "sourceNotInstalled": "Не установлено", "sourceTargetSpec": "Источник для этого DSH", "sourceTargetVersion": "Версия для этого DSH", "update": "Обновить", "updateLabel": "Обновление {name}", "versionsTitle": "Версии", "versionsRecheck": "Проверьте еще раз", "versionsChecking": "Проверка обновлений", "versionsAvailable": "Доступно обновление до {version}.", "versionsPublished": "Опубликовано {date}", "versionsLatest": "Актуально", "versionsCheckedAt": "Последняя проверка на {time}.", "versionsBlocked": "Для более новых версий требуется обновление DSH.", "versionsBlockedDetail": "{version} нужен {peers}; этот DSH - это {runtime}", "versionsNoneInstallable": "Нет более новой версии для установки напрямую", "versionsNoneInstallableDetail": "Более новые версии устарели, являются предварительными выпусками или не содержат пакетов. Разверните, чтобы увидеть их", "versionsFailedNetwork": "Не удалось войти в реестр", "versionsFailedOther": "Не удалось проверить наличие обновлений", "versionsDetails": "Подробности", "versionsNewerCount": "{count} новее", "versionsCollapse": "Свернуть", "versionsInstalledTag": "Установлено", "versionsPrereleaseTag": "Пререлиз", "versionsDeprecatedTag": "Устарело", "versionsNeedsDsh": "Требуется {peers}", "versionsNotBundle": "Эта версия не декларирует отсутствие пакета и не может быть установлена.", "versionsUpdateLabel": "Обновление до {version}", "versionsRegistry": "Реестр", "versionsCheckedAtLabel": "Проверено в", "versionsFallbackTag": "Резервный вариант", "versionsFallbackHint": "{registry} не удалось связаться; список взят из резервного реестра", "versionsPrimaryTag": "Первый", "versionsShowPrerelease": "Показать пререлизы", "versionsOmitted": "{count} больше версий новее установленной не указано", "versionsProblemNetwork": "недостижимый", "versionsProblemNotFound": "Не найден", "versionsProblemUnknown": "Не удалось", "updatesAvailable": "Доступные обновления: {count}", "updatesNone": "Все плагины актуальны", "updatesFailed": "Некоторые плагины не удалось проверить", "updateTitle": "Обновление {name}", "updateSource": "Установить из", "updateDescription": "Обновление заменяет {from} на {to}; плагин может ненадолго остановиться. Если установка не удалась, {from} сохраняется или устанавливается снова.", "updateRunning": "Обновление", "updateStepChecking": "Проверьте {version}", "updateStepRemoving": "Остановите и удалите {version}.", "updateStepInstalling": "Установите {version} из {registry}.", "updateStepRestoring": "Установите {version} еще раз.", "updateDone": "Обновлено до {version}.", "updateDoneDetail": "Новая версия работает.", "updateRestart": "{version} установлен; оно вступит в силу после перезагрузки", "updateRefused": "Не могу обновиться до {version}.", "updateRemoveFailed": "Не удалось удалить {version}.", "updateRestored": "Обновление не удалось; восстановлен {version}", "updateRestoredDetail": "{to} не удалось установить; {from} был установлен снова.", "updateKept": "Не удалось обновиться до {version}.", "updateKeptDetail": "{from} не был удален и продолжает использоваться. {reason}", "updateBroken": "Обновление не удалось; плагин не установлен", "updateBrokenDetail": "{to} не удалось установить, и повторная установка {from} также не удалась. Установите {name} снова из меню «Добавить плагин».", "updateLost": "Результат обновления неизвестен", "updateLostDetail": "Соединение с DSH было прервано: {reason}. Обновите список плагинов, чтобы увидеть установленную версию.", "updateOutput": "Показать выходные данные установки", "updateFinish": "Готово", "installFailedTitle": "Плагин не удалось установить", "installGithubFailedTitle": "Не могу получить доступ к GitHub", "installGithubTimeoutTitle": "Время ожидания соединения GitHub истекло", "installGithubFailedDescription": "Попробуйте другой источник установки.", "installUseGithubMirror": "Используйте зеркало материкового Китая.", "installTryAnotherWay": "Попробуйте другой способ", "installPackageLabel": "Название пакета плагина", "installEdit": "Редактировать", "installEditAria": "Вернуться к редактированию", "installCancelAndEdit": "Отменить установку и вернуться к редактированию", "installApplyingCancellationError": "Отмена не подтвердилась. Установка применяется; дождитесь его результата. {reason}", "installReconcile": "Проверьте статус установки", "installUnknownTitle": "Результат установки недоступен", "installUnknownDescription": "На хосте нет активной установки с этим идентификатором запроса. Прежде чем повторить попытку, проверьте список плагинов.", "installResultUnconfirmed": "Результат установки не получен. Проверьте статус установки. {reason}", "installAwaitingAcceptance": "Ожидание, пока хост примет установку. Отмена будет повторена автоматически после подтверждения.", "installBackgroundUnknown": "Результат установки недоступен. Проверьте список плагинов.", "installCancel": "Отменить установку", "installCloseCancels": "Отменить установку и закрыть", "installViewTask": "Посмотреть установку", "installUnconfirmedTitle": "Статус установки не подтвержден", "installBackgroundDone": "Установка завершена. Посмотреть подробности установки.", "installBackgroundFailed": "Установка не удалась. Посмотреть подробности установки.", "installBackgroundUnconfirmed": "Статус установки не подтвержден. Подробности смотрите в установке.", "installBackgroundApplying": "Установка применяется и не может быть отменена. Просмотр хода установки.", "installStarting": "Подготовка к установке…", "installCancelling": "Остановка установки…", "installApplying": "Применяется конфигурация, пожалуйста, подождите…", "installCancelledShort": "Отменено", "installCancelled": "Установка отменена; плагин не включен и скачанные файлы могут остаться", "installCancelUnconfirmed": "Установка не подтверждена, остановлена. Повторите попытку отмены или дождитесь результата установки. {reason}", "installEnableNow": "Включить сейчас", "installDetailsShow": "Показать детали установки", "installDetailsHide": "Скрыть сведения об установке", "installVersion": "Версия {version}", "installSubjectPath": "Локальный каталог", "installSubjectGit": "Git-репозиторий", "installSubjectTarball": "Тарбол", "installLocation": "Устанавливается в {dir}", "installRetry": "Повторить", "installChangeRegistry": "Изменить реестр", "installAttempt": "{previous} не смог обслужить пакет; повторная попытка через {registry} (реестр {index} из {total})", "installAttemptBadge": "Попытка {index} · {registry}", "installFailureNetwork": "Сетевое подключение не удалось", "installFailureNetworkAll": "Не удалось достичь реестра (пробовал: {registries}). Проверьте настройки сети или прокси-сервера или измените реестр и повторите попытку.", "installFailureNetworkHost": "Не удалось связаться с {host}. Адрес GitHub или ссылка .tgz не извлекаются через реестр: этот компьютер должен получить доступ к ним напрямую или через прокси. Если плагин также опубликован в npm, вместо этого введите имя его пакета.", "installFailureNotFound": "Такой плагин не найден", "installFailureNoMatchingVersion": "Ни одна версия не соответствует запросу", "installFailureDiskFull": "Диск заполнен; установка остановлена", "installFailurePermission": "Нет разрешения на запись; плагин не может быть установлен", "installFailureBuildBlocked": "Для продолжения установки сценариям установки зависимости требуется ваше разрешение.", "installFailureBuildBlockedManual": "pnpm блокировал сценарии установки; разрешите их в разделеallowBuilds в pnpm-workspace.yaml и повторите попытку.", "installFailureIntegrity": "Загруженный пакет не прошел проверку целостности.", "installFailureTimeout": "Время установки истекло", "installFailurePnpmMissing": "pnpm не найден, поэтому ничего установить невозможно", "installFailureGeneric": "Во время установки что-то пошло не так; детали говорят о чем", "terminalCommandLine": "Командная строка {n}", "terminalRunning": "Бег", "terminalFailed": "Не удалось", "terminalDone": "Готово", "terminalCopy": "Копировать", "terminalCopied": "Скопировано", "terminalNoOutput": "Нет вывода", "terminalCollapseAria": "Свернуть вывод", "terminalCollapse": "Свернуть", "terminalExpandAria": "Разверните оставшиеся выходные строки {n}.", "terminalExpand": "… {n} еще строки", "terminalExitCode": "код выхода {code}", "terminalSignal": "сигнал {signal}", "terminalNoExitCode": "нет кода выхода", "installDoneNothing": "Установка завершена без новых зависимостей.", "installDoneRestart": "Установлен; перезапустите DSH, чтобы загрузить его. {reason}", "installDoneApproved": "Скрипты установки разрешены для {names}", "installDoneOtherVersion": "В соответствии с политикой безопасности цепочки поставок pnpm (minimumReleaseAge) версии, опубликованные позже требуемого возраста, не устанавливаются автоматически, поэтому в этой установке использовалась {installed} вместо последней версии {version}. Недавно опубликованная версия не завершила этот период ожидания и может содержать необнаруженный вредоносный код или дефекты. Если вам нужен {version}, удалите текущую версию, а затем установите {exact}, чтобы запросить эту версию.", "installApprovalTitle": "Для установки скриптов требуется разрешение", "installApprovalDescription": "Эти пакеты содержат сценарии установки, которые pnpm не запускал.", "installApprovalConsequence": "После разрешения сценарии запускаются здесь с вашими разрешениями, а разрешение сохраняется в этом профиле.", "installApprovalCaution": "Разрешите только те пакеты, которым вы доверяете.", "installApproveAndRetry": "Разрешите эти сценарии и повторите попытку.", "installClose": "Готово", "close": "Закрыть", "cancel": "Отмена", "confirmUninstallTitle": "Удалить \"{name}\"?", "confirmUninstallDescription": "То, что он предоставляет, исчезает после его удаления.", "confirmUninstall": "Удалить", "failedEnable": "Не удалось включить: {reason}", "failedDisable": "Не удалось отключить: {reason}", "failedUninstall": "Не удалось удалить: {reason}", "failedRowEnable": "Не удалось включить компонент: {reason}.", "failedRowDisable": "Не удалось отключить компонент: {reason}.", "reasonManagementRequired": "Управление плагинами нуждается в этом; его нельзя отключить или удалить.", "reasonUnaddressable": "Патч профиля не может решить эту проблему однозначно.", "reasonUnknownPlugin": "Нет такого плагина.", "reasonInvalidSpec": "Введите действительное имя или адрес пакета.", "reasonAlreadyInstalled": "Этот пакет уже установлен; удалите его перед установкой другой версии.", "reasonAmbiguousInstall": "Какой пакет был установлен, невозможно определить по изменению зависимостей.", "reasonNotBundle": "В этом пакете не объявлен пакет, поэтому им нельзя управлять как плагином.", "reasonNotRemovable": "Этот пакет не принадлежит профилю, или он нужен управлению плагинами.", "reasonStopProfile": "Этот профиль работает без HMR; остановите его и удалите пакет с плагином dsh.", "reasonBundleInUse": "Другая конфигурация по-прежнему использует компоненты этого пакета; сначала выключите их.", "reasonStaleApproval": "Ожидаемые утверждения сценария изменились; установите еще раз, чтобы обновить их.", "reasonIncompatibleVersion": "{plugin} несовместим с DSH {runtime} (требуется {requirements}); его запуск может привести к сбоям или потере данных.", "reasonIncompatibleVersionUnnamed": "Этот плагин несовместим с работающей версией DSH; его запуск может привести к сбоям или потере данных.", "reasonIncompatibleInstall": "Установите версию плагина, совместимую с этим DSH.", "reasonIncompatibleInstalled": "Удалите его и установите версию, совместимую с этим DSH.", "reasonOperationError": "Хост сообщил об ошибке.", "detailTitle": "Подробности", "detailLoading": "Читаем подробности", "detailTooLarge": "Детали превышают лимит размера и не были загружены.", "detailNetwork": "До источника подробностей добраться не удалось.", "detailInvalid": "Плагин объявляет неверный файл сведений.", "detailFailed": "Подробности прочитать не удалось.", "detailFootnotes": "Сноски" }, "reference": { "section.files": "Файлы и папки", "section.subagents": "Субагенты", "section.sessions": "Сессии", "candidate.noCwd": "(без КДВ)", "crumb.root": "Рабочая область", "fileOpen.title": "Не удалось открыть файл", "fileOpen.failed": "Не удалось открыть «{path}». Попробуйте еще раз или закройте это сообщение.", "fileOpen.close": "Закрыть", "fileOpen.retry": "Повторить", "time.now": "сейчас", "time.minutes": "{n}мин", "time.hours": "{n}h", "time.days": "{n}d", "time.months": "{n}mo", "time.years": "{n}y" }, "secretMask": { "secret.reveal": "Показать секрет", "secret.hide": "Скрыть секрет" }, "settings.agentLoop": { "title": "Цикл агента", "description": "Управляйте тем, как агент распределяет вызовы инструментов.", "maxParallel": "Параллельные вызовы инструментов", "maxParallelHint": "Верхняя граница параллельных безопасных вызовов, выполняемых одновременно в течение одного шага.", "overridden": "Переопределено", "reset": "Сбросить настройки по умолчанию", "readOnly": "В этом развертывании параметры сохраняются только для чтения.", "unavailable": "Этот плагин не загружен, поэтому его невозможно настроить прямо сейчас.", "save": "Сохранить", "saving": "Сохранение…", "saveFailed": "Развертывание не приняло эти значения; их оставили вам на исправление.", "invalidNumber": "Введите число или оставьте поле пустым, чтобы использовать значение по умолчанию." }, "settings": { "trigger": "Настройки", "shortcut.open": "Открыть настройки", "desktop.update.available": "Обновить", "desktop.update.checking": "Проверка обновлений…", "desktop.update.progress": "{percent}%", "desktop.update.verifying": "Проверка файлов обновлений…", "desktop.update.installing": "Подготовка к перезапуску…", "desktop.update.ready": "Установить и перезапустить", "desktop.update.retry": "Повторить обновление", "desktop.update.versionDetail": "{label}: {version}", "desktop.update.downloadDetail": "Загрузка обновления: {percent}%\n Целевая версия: {version}", "desktop.update.checkFailed": "Не удалось проверить наличие обновлений. Пожалуйста, повторите попытку позже.", "desktop.update.downloadFailed": "Не удалось загрузить обновление. Пожалуйста, попробуйте еще раз.", "desktop.update.installFailed": "Не удалось установить обновление. Пожалуйста, повторите попытку позже.", "desktop.update.checkNetworkFailed": "Не удалось проверить наличие обновлений. Проверьте подключение и повторите попытку.", "desktop.update.downloadNetworkFailed": "Не удалось загрузить обновление. Проверьте подключение и повторите попытку.", "desktop.update.installNetworkFailed": "Не удалось установить обновление. Проверьте подключение и повторите попытку.", "desktop.update.fullscreenTimeout": "Не удалось выйти из полноэкранного режима. Выйдите из полноэкранного режима и повторите попытку обновления.", "desktop.update.stopFailed": "Не удалось безопасно остановить задачи. Обновление не установлено. Пожалуйста, повторите попытку позже.", "desktop.update.tasksChanged": "Начались новые задачи. Подтвердите еще раз, чтобы остановить выполнение задач и выполнить обновление.", "desktop.update.tasksUnavailable": "Статус задачи недоступен. Попробуйте обновить еще раз, когда рабочая область будет готова.", "title": "Настройки", "close": "Закрыть", "openDocument": "Открыть файл конфигурации", "openDocument.error": "Не удалось открыть файл конфигурации", "general.nav": "Общие", "general.currentVersion": "Текущая версия: {version}.", "developerTools.title": "Показать представление кодирования", "developerTools.error": "Не удалось сохранить. Пожалуйста, попробуйте еще раз.", "developerTools.description": "Показывает траекторию, различия в коде и все настройки агента.", "connection.error": "Отключено", "connection.connecting": "Повторное подключение", "connection.connected": "Подключено", "connection.reconnect": "Соединение отключено, подключитесь снова сейчас", "connection.restart": "Повторное подключение, повторное подключение сейчас", "hostRelease.title": "Версия сервиса изменена", "hostRelease.description": "Версия сервиса изменилась. На этой странице приостановлены текущие обновления; перезагрузите, чтобы загрузить новую версию.", "hostRelease.service": "Сервис", "hostRelease.page": "Страница", "hostRelease.unknown": "Неизвестно", "hostRelease.reload": "Перезагрузите, чтобы загрузить новую версию", "hostRelease.later": "Не сейчас" }, "settings.models": { "nav": "Модели", "deepSeekAccount": "DeepSeek Аккаунт", "title": "Модели", "intro": "Введите ключи API, чтобы использовать модели следующих поставщиков.", "edit": "Редактировать", "editProvider": "Редактировать {provider}", "remove": "Удалить", "removeProvider": "Удалить {provider}", "deleteTitle": "Удалить {provider}?", "deleteDescription": "Удаление {provider} удаляет его конфигурацию. Любые учетные данные, которые он использует, управляются где-то еще и будут сохранены.", "deleteDescriptionWithCredential": "Удаление {provider} удаляет его конфигурацию и сохраненный ключ API.", "deleteConfirm": "Удалить {provider}", "deleting": "Удаление {provider}…", "add": "Добавить поставщика моделей", "addMode": "Как добавить", "addCatalog": "Сторонний поставщик моделей", "addCustom": "Пользовательская модель API", "addCatalogHint": "Выберите OpenAI, Anthropic, Kimi или другого провайдера из встроенного каталога и введите его ключ API.", "addCustomHint": "Подключите реле, автономный сервер или любую другую конечную точку, совместимую с OpenAI или Anthropic, по ее базовому URL-адресу, протоколу и модели.", "addCatalogExhausted": "Каждый поставщик каталога уже настроен.", "addCustomUnavailable": "Протокол API недоступен для объявления.", "provider": "Поставщик", "close": "Закрыть", "cancel": "Отмена", "apply": "Применить", "applying": "Применение…", "savedProvider": "Сохранено {provider}.", "credentialConfigured": "Ключ API настроен", "credentialMissing": "Ключ API отсутствует", "accountSignedIn": "Вошёл в систему", "readOnly": "В этом развертывании документ настроек доступен только для чтения.", "loadFailed": "Не удалось загрузить каталог поставщика", "conflict": "Кто-то другой изменил эти настройки, пока эта карточка была открыта. Закройте его и откройте снова, чтобы редактировать текущие значения.", "retry": "Повторить", "keyInput": "Ключ API", "keyReveal": "Показать секрет", "keyHide": "Скрыть секрет", "keyPlaceholder": "Введите свой ключ API", "keyPlaceholderFallback": "Оставьте пустым, чтобы использовать env в качестве аутентификации ({hint})", "keyPlaceholderSaved": "Оставьте поле пустым, чтобы использовать сохраненные учетные данные.", "keyFallbackMissing": "Переменная Env не обнаружена. Введите ключ API или настройте {hint} в своей среде.", "keyFallbackDetected": "Обнаружена переменная Env. ({hint})", "keyFallbackDetectedHidden": "Обнаружена переменная Env.", "keyFallbackUnchecked": "Статус экологической сертификации не подтвержден.", "keyHelp": "Сохраненные учетные данные используются в первую очередь. Здесь показаны резервные варианты среды в порядке: {env}. Источниками являются среда запуска, $cwd/.env, затем $DSH_HOME/.env.", "authHelp": "Детали аутентификации", "customized": "Индивидуальные настройки", "baseUrl": "Базовый URL", "baseUrlDefault": "Нет конечной точки по умолчанию", "baseUrlEnvironment": "Конфигурация конечной точки поставщика: {env}.", "baseUrlConfigured": "Конечная точка, настроенная поставщиком", "baseUrlPlaceholder": "{url}", "deepSeekBaseUrl": "https://api.deepseek.com/anthropic (по умолчанию используется DEEPSEEK_BASE_URL)", "deepSeekEndpointHint": "Используйте конечную точку API, совместимую с антропными сообщениями.", "models": "Модели", "modelsInherited": "Использование настроек адаптера по умолчанию", "modelsCustomized": "Индивидуальный каталог моделей", "resetModels": "Восстановить настройки по умолчанию", "model": "Модель", "modelId": "Идентификатор модели", "modelName": "Отображаемое имя", "modelNamePlaceholder": "Использует идентификатор модели, когда он пуст", "contextWindow": "Контекстное окно", "contextWindowPlaceholder": "Использует поставщика по умолчанию", "maxTokens": "Максимальное количество выходных токенов", "maxTokensPlaceholder": "Использует поставщика по умолчанию", "modelAdvanced": "Варианты модели", "modelInputTypes": "Типы ввода", "modelInputText": "Текст", "modelInputImage": "Изображение", "modelReasoning": "Уровни рассуждения", "modelReasoningLevel": "Уровень", "modelReasoningValue": "Значение API", "modelReasoningHelp": "Об уровнях рассуждения", "modelReasoningHelpText": "Значение API передаётся в поле уровня рассуждений запроса, например reasoning_effort у OpenAI. По умолчанию используется название уровня; если документация API поставщика модели указывает другое значение, используйте его. Выкл. отключает рассуждения и не требует значения; уже записанное в конфигурации значение сохраняется и отправляется.", "modelReasoningNeedsLevel": "Добавьте хотя бы один уровень помимо «Выкл.» или отключите уровни рассуждения.", "modelReasoningValueRequired": "Для каждого уровня, кроме Off, требуется значение API, и ни одно значение не может быть пустым.", "modelReasoningAdd": "Добавить уровень", "modelReasoningRemove": "Удалить уровень", "modelReasoningOffValuePlaceholder": "Отключает рассуждения", "addModel": "Добавить модель", "removeModel": "Удалить модель", "reorderModel": "Изменить порядок модели", "reorderModelHelp": "Перетащите, чтобы изменить порядок, или используйте клавиши со стрелками вверх и вниз.", "modelsEmpty": "В селекторе не будут показаны модели. Неуказанные идентификаторы по-прежнему можно отправлять напрямую.", "keyBlank": "Введите ключ API или оставьте поле пустым, чтобы сохранить сохраненный.", "keyBlankNew": "Введите ключ API или оставьте поле пустым, если этот провайдер выполняет аутентификацию другим способом.", "keyIllegalCharacters": "Этот ключ API имеет недопустимый формат. Пожалуйста, проверьте это.", "modelIdRequired": "Требуется идентификатор модели.", "modelIdDuplicate": "Идентификатор модели должен быть уникальным.", "modelNameInvalid": "Отображаемое имя не может быть пустым.", "modelContextInvalid": "Контекстное окно должно иметь положительное значение, например 131072, 256K или 1M.", "modelMaxTokensInvalid": "Максимальное количество выходных токенов должно иметь положительное значение, например 8192, 64K или 1M.", "advancedHint": "Остальные поля находятся в файле cordis.patch.yml; отредактируйте этот раздел напрямую.", "modelCapacityInvalid": "Емкость должна быть числом, возможно с суффиксом K или M.", "modelDuplicate": "Каждый идентификатор модели может появиться один раз.", "fetchModels": "Получить доступные модели", "fetching": "Спросил у провайдера...", "fetchNeedsBaseUrl": "Сначала введите базовый URL-адрес, а затем извлеките его.", "fetchEmpty": "Поставщик не указал моделей. Добавьте их вручную.", "fetchTitle": "Выберите модели", "fetchDescription": "Это модели, доступные у этого поставщика. Проверенные модели составляют список.", "fetchSearch": "Поиск моделей", "fetchNoMatches": "Нет подходящих моделей.", "fetchSelectAll": "Выбрать все", "fetchDeselectAll": "Отменить выбор всех", "fetchAdopt": "Обновить список", "fetchKeepOne": "Проверьте хотя бы одну модель.", "customTag": "Пользовательский", "customRoute": "Идентификатор поставщика", "customRouteHint": "Идентификатор в нижнем регистре, начинающийся с буквы, который уникально называет этого поставщика в запросах и в качестве его учетного имени.", "customRouteInvalid": "Начните со строчной буквы; затем строчные буквы, цифры и тире.", "customRouteTaken": "Поставщик уже использует этот идентификатор.", "customDisplayName": "Отображаемое имя", "customApi": "Протокол API", "customApiUnset": "Не выбрано", "protocolOpenAiCompletions": "Завершения чата OpenAI", "protocolOpenAiResponses": "Ответы OpenAI", "protocolAnthropicMessages": "Антропные сообщения", "customNeedsBaseUrl": "Пользовательскому поставщику нужен базовый URL-адрес.", "customBaseUrlInvalid": "Введите действительный URL-адрес HTTP или HTTPS.", "customNeedsModels": "Пользовательскому поставщику нужна хотя бы одна модель.", "customBaseUrlPlaceholder": "https://gateway.example/v1", "customAnthropicBaseUrlPlaceholder": "https://gateway.example", "settingsPathUnresolvable": "неразрешимый путь настроек", "create": "Создать поставщика", "creating": "Создание…", "welcomeTitle": "Уведомление о предварительном просмотре", "welcomeBody": "DeepSeek Harness 0.2 все еще находится в предварительной версии, и многие области нуждаются в дальнейшем улучшении и доработке. Мы приветствуем отзывы и предложения от всех разработчиков и пользователей. Новое настольное приложение теперь ориентировано на широкий круг пользователей, а расширенные функции, связанные с разработчиком, можно включить в настройках. Ожидается, что функции продукта DeepSeek Harness и API-интерфейсы плагинов будут продолжать быстро меняться и развиваться и со временем будут постепенно стабилизироваться. \n\nМы надеемся изучить пределы интеллекта вместе с пользователями и разработчиками по всему миру, опираясь на многоразовую и компонуемую инфраструктуру с открытым исходным кодом. Мы приглашаем всех воплотить свои идеи в жизнь с помощью DeepSeek Harness и принять участие в сообществе, чтобы обогатить экосистему плагинов.", "welcomeContinue": "Продолжить", "welcomeError": "Не удалось сохранить подтверждение. Пожалуйста, попробуйте еще раз.", "onboardingTitle": "Добавьте ключ API, чтобы начать работу.", "onboardingDescription": "Настройте официального поставщика DeepSeek, чтобы начать сборку.", "onboardingLater": "Настроить позже", "onboardingSave": "Сохранить и продолжить", "onboardingSaving": "Сохранение…", "keyRequired": "Введите ключ API, чтобы продолжить." }, "settings.pluginInventory": { "tab": "Список плагинов", "loading": "Чтение плагинов…", "clientSyncing": "Синхронизация плагинов на этой странице…", "clientSyncFailed": "Некоторые плагины не смогли синхронизироваться на этой странице. Включение хоста не изменилось.", "clientSyncRetry": "Повторить эту страницу", "error": "Плагины временно недоступны.", "metadataError": "Ошибка метаданных пакета: {error}.", "retry": "Повторить", "search": "Поиск плагинов", "empty": "Нет доступных плагинов.", "emptySearch": "Нет подходящих плагинов.", "presetTitle": "Плагины сеансов", "presetSubtitle": "Составляется за сеанс с помощью предустановок агента", "switcherLabel": "Выберите предустановку агента для проверки", "presetOptionDefault": "{name} (по умолчанию)", "presetOptionBroken": "{name} (не удалось загрузить)", "globalTitle": "Глобальные плагины", "globalSubtitle": "Совместно используется системой и каждым сеансом", "presetProvidedDetail": "Отключено глобально; предустановки агента предусматривают это за сеанс", "enabledIn": "Включено в", "matchesInOtherPresets": "{count} больше совпадений в других пресетах: ", "enabledTag": "Включено", "disabledTag": "Отключено", "conditionalTag": "Условный", "presetEnabledTag": "Через пресеты", "failedTag": "Не удалось", "moduleLabel": "Модуль", "fromPreset": "От", "condition": "Отключено, когда", "configuration": "Конфигурация", "runtime": "Статус", "unobserved": "Не работает", "pending": "Ожидание зависимостей", "loadingPhase": "Загрузка", "active": "Бег", "failed": "Не удалось запустить", "unloading": "Разгрузка" }, "settings.plugins": { "nav": "Встроенные плагины", "title": "Встроенные плагины", "intro": "Проверьте плагины, поставляемые в этом развертывании.", "tabs": "Просмотры плагинов", "empty": "Это развертывание не предоставляет никаких представлений плагинов." }, "settings.sessionLog": { "title": "Загрузить журнал сеансов при использовании официальной модели API", "description": "Помогите улучшить модели и продукты DeepSeek.", "saved": "Предпочтение сохранено.", "failed": "Не удалось сохранить предпочтения." }, "settings.shell": { "title": "Ракушка", "description": "Ограничьте продолжительность выполнения каждой команды и объем вывода.", "timeoutMs": "Таймаут команды (мс)", "timeoutMsHint": "Как долго может выполняться одна команда до ее завершения.", "maxOutputBytes": "Ограничение вывода на поток (байты)", "maxOutputBytesHint": "Вывод, выходящий за пределы этого, сохраняется во временный файл, а не теряется.", "overridden": "Переопределено", "reset": "Сбросить настройки по умолчанию", "readOnly": "В этом развертывании параметры сохраняются только для чтения.", "unavailable": "Этот плагин не загружен, поэтому его невозможно настроить прямо сейчас.", "save": "Сохранить", "saving": "Сохранение…", "saveFailed": "Развертывание не приняло эти значения; их оставили вам на исправление.", "invalidNumber": "Введите число или оставьте поле пустым, чтобы использовать значение по умолчанию." }, "settings.subagent": { "overridden": "Переопределено", "reset": "Сбросить настройки по умолчанию", "readOnly": "В этом развертывании параметры сохраняются только для чтения.", "unavailable": "Этот плагин не загружен, поэтому его невозможно настроить прямо сейчас.", "save": "Сохранить", "saving": "Сохранение…", "saveFailed": "Развертывание не приняло эти значения; их оставили вам на исправление.", "subagentTitle": "Субагент", "subagentDescription": "Установите глубину рекурсии субагента, количество и модели.", "subagentLimitsTitle": "Пределы", "subagentMaxDepth": "Максимальная глубина рекурсии", "subagentDepthHelpLabel": "О максимальной глубине рекурсии", "subagentDepthHelp": "Ограничивает количество уровней субагентов, которые может создать агент.", "subagentDepthZero": "Отключить субагенты", "subagentDepthOne": "Только главный агент может создавать субагентов.", "subagentDepthOverride": "Если инструмент определяет собственную максимальную глубину рекурсии, этот параметр имеет приоритет.", "subagentMaxActive": "Предел параллелизма субагентов", "subagentCapacityHelpLabel": "О пределе параллелизма субагентов", "subagentCapacityHelp": "Общее количество действующих субагентов под одним и тем же основным агентом на всех уровнях рекурсии. Главный Агент исключен. Новые запросы на запуск отклоняются при достижении предела.", "subagentDepthInvalid": "Введите целое число от 0 или более.", "subagentCapacityInvalid": "Введите целое число от 1 или более.", "subagentModelSelectionTitle": "Выбор модели", "subagentModelSelectionToggle": "Разрешить агентам выбирать модели для субагентов", "subagentModelSelectionChoose": "Если этот параметр включен, агенты могут выбирать поставщика, модель и усилия по обоснованию для каждого субагента из авторизованных моделей, указанных ниже. Применяется только к новым сеансам.", "subagentModelSelectionAllowed": "Модели агенты могут выбирать", "subagentModelSelectionLoading": "Загрузка моделей…", "subagentModelSelectionLoadFailed": "Не удалось загрузить модели.", "subagentModelSelectionRetry": "Повторить", "subagentModelSelectionPartial": "Некоторые поставщики моделей не удалось загрузить; сохраненные варианты остаются съемными.", "subagentModelSelectionUnavailable": "В настоящее время недоступен", "subagentModelSelectionUnavailableGroup": "Сохранено, но сейчас недоступно", "subagentModelSelectionEmpty": "Ни один поставщик моделей в настоящее время не рекламирует модель.", "subagentModelSelectionRequired": "Прежде чем сохранить, выберите хотя бы одну модель.", "subagentModelSelectionConflict": "Настройки изменены в другом месте. Отмените черновик и повторите попытку.", "subagentModelSelectionOff": "Субагенты используют настроенные значения по умолчанию или наследуют модель родительского агента. Сохраненные варианты моделей сохраняются." }, "settings.webSearch": { "title": "Веб-поиск", "description": "Настройте поисковую систему DeepSeek.", "useSearchApi": "Используйте новый веб-поиск API", "useSearchApiHint": "По умолчанию отключено: поиск осуществляется по сообщениям DeepSeek. Информацию о новых функциях и ценах веб-поиска API см. ", "searchGuide": "Руководство по поиску и получению", "searchGuideUrl": "https://api-docs.deepseek.com/guides/search", "apiKey": "Ключ API", "apiKeyHint": "Хранится вне файла настроек. Оставьте пустым, чтобы сохранить текущий ключ.", "apiKeySet": "Ключ настроен.", "apiKeyUnset": "Ключ не настроен; только разговоры, использующие модель учетной записи DeepSeek, могут выполнять поиск через конечную точку по умолчанию.", "baseUrl": "Базовый URL-адрес сообщений API", "baseUrlHint": "Включите префикс API, например https://api.deepseek.com/anthropic/v1.. Поставщик добавляет /messages. Оставьте пустым, чтобы восстановить значение по умолчанию.", "searchApiBaseUrl": "Найдите/получите базовый URL-адрес API", "searchApiBaseUrlHint": "Включите префикс API, например https://api.deepseek.com/v1/tools.. Поставщик добавляет /search или /fetch. Оставьте пустым, чтобы восстановить значение по умолчанию.", "maxUses": "Максимальное количество запросов на запрос", "maxUsesHint": "Сколько поисков вспомогательная модель может выполнить в рамках одного запроса сообщений. Применяется только к сообщениям API.", "count": "Результаты по поиску", "countHint": "Результаты, возвращаемые по запросу: целое число от 1 до 50, по умолчанию 10. Это контролирует количество результатов, а не поисковые вызовы. web_search хранит не больше источников, чем его собственный лимит результатов.", "overridden": "Переопределено", "reset": "Сбросить настройки по умолчанию", "readOnly": "В этом развертывании параметры сохраняются только для чтения.", "unavailable": "Этот плагин не загружен, поэтому его невозможно настроить прямо сейчас.", "save": "Сохранить", "saving": "Сохранение…", "saveFailed": "Развертывание не приняло эти значения; их оставили вам на исправление.", "invalidNumber": "Введите число или оставьте поле пустым, чтобы использовать значение по умолчанию.", "invalidCount": "Введите целое число от 1 до 50 или оставьте поле пустым, чтобы использовать значение по умолчанию." }, "shortcuts": { "edit-label": "Изменить ярлык для {command}", "record": "Нажмите ярлык", "record-help": "Отпустите клавиши для сохранения. Tab перемещается между действиями; Esc отменяет.", "web-help": "Комбинации браузера: Mod+/, Mod+Shift+, Mod+Shift+.. Mod — это команда на Mac, а в других местах — Ctrl.", "unsupported-key": "Этот ключ не поддерживается.", "reserved": "Эта комбинация зарезервирована для системных действий или действий по редактированию текста.", "modifier-required": "Включите в комбинацию Command, Ctrl или Alt.", "too-many-keys": "Удерживайте не более двух немодифицирующих клавиш. Отпустите клавиши, чтобы повторить попытку.", "macos-web-help": "Используйте Command+/, Command+,, Command+обратная косая черта, Control+обратная кавычка, Command+Option+клавиша или Command+Shift+клавиша. Также поддерживаются комбинации с тремя или четырьмя различными модификаторами. Ярлыки браузера или системы могут не доходить до страницы.", "windows-web-help": "Используйте Ctrl+/, Ctrl+, Ctrl+Alt+клавиша или Ctrl+Shift+клавиша. Также поддерживаются комбинации с тремя или четырьмя различными модификаторами. Ярлыки браузера или системы могут не доходить до страницы.", "unsupported-browser": "Этот браузер пока не поддерживает эту комбинацию.", "conflict": "Уже используется «{commands}»", "saved": "Модифицированный", "clear": "Удалить", "retry-save": "Повторить попытку сохранения", "reset": "Восстановить настройки по умолчанию", "reset-all": "Восстановить все настройки по умолчанию", "modified-count": "{count} по индивидуальному заказу", "reset-title": "Восстановить все ярлыки по умолчанию?", "reset-description": "Восстановите ярлыки по умолчанию для этой платформы. Все измененные или удаленные ярлыки будут восстановлены. Другие платформы не затронуты.", "cancel": "Отмена", "reset-saved": "Ярлыки по умолчанию восстановлены.", "close-confirmation": "Закрыть подтверждение", "reset-failed": "Не удалось восстановить настройки по умолчанию. Ваши ярлыки не изменились. Пожалуйста, повторите попытку.", "review": "Я рассмотрел последнюю конфигурацию", "stale": "Конфигурация ярлыка или доступные команды изменены. Перед сохранением просмотрите последние привязки.", "write-failed": "Не удалось сохранить. Ваши предыдущие ярлыки и текущий черновик сохраняются. Пожалуйста, повторите попытку.", "not-ready": "Ярлыки не готовы. Пожалуйста, попробуйте еще раз.", "read": "Не удалось прочитать {location}. Проверьте права доступа, затем {reload}.", "invalid": "Конфигурация ярлыка в {location} повреждена. Создайте резервную копию и исправьте эту конфигурацию, затем {reload}.", "future": "Конфигурация ярлыка в {location} была создана более новой версией. Обновите Harness и повторите попытку.", "web-document": "запись localStorage этого сайта dsh.keybindings.v1", "desktop-document": "userData/keybindings.json", "web-reload": "перезагрузить страницу", "desktop-reload": "перезапустить Harness", "using-defaults": "Привязки по умолчанию активны.", "using-accepted": "Последние успешно прочитанные привязки остаются активными.", "native-failed": "Не удалось защитить запись клавиш рабочего стола. Выйдите из записи и повторите попытку.", "global-hint": "Открыто из любого места", "clear-search": "Очистить поиск", "title": "Сочетания клавиш", "open": "Открытие сочетаний клавиш", "settings": "Сочетания клавиш", "view": "Редактировать ярлыки", "description": "Просмотр и редактирование доступных ярлыков и действий ввода", "search": "Поиск ярлыков", "close": "Закрыть сочетания клавиш", "application": "Приложение", "input": "Ввод сообщения", "menus": "Меню и диалоги", "approval": "Область утверждения", "unbound": "Нет ярлыка", "empty": "Нет подходящих ярлыков", "move": "Переместить выбор меню", "select": "Выберите пункт меню", "dismiss": "Закрыть меню или верхний диалог" }, "sidebar": { "session.new": "Новая сессия", "session.new.label": "Новая сессия", "toggle.open": "Открыть боковую панель", "toggle.collapse": "Свернуть боковую панель", "panels.label": "Глобальные панели", "panels.more": "Ещё", "version.copied": "Версия скопирована" }, "sidebarBrowser": { "type.label": "Браузер", "guide.title": "Браузер", "guide.description": "Просмотр веб-страниц", "shortcut.noSession": "Сначала откройте сеанс", "address.placeholder": "Введите адрес HTTP(S)", "address.changed": "URL-адрес изменен", "back": "Назад", "forward": "Вперед", "reload": "Перезагрузить", "go": "Иди", "external": "Открыть в системном браузере", "sandbox.disable": "Отключить ограничения песочницы", "sandbox.enable": "Восстановить ограничения песочницы", "sandbox.warning": "Ограничения песочницы отключены; страница может перемещаться по приложению верхнего уровня и использовать загрузки, модальные диалоговые окна и блокировки ввода.", "start": "Введите адрес HTTP(S), чтобы начать просмотр.", "loading": "Открытие…", "restore.previous": "Ранее открыто", "restore.action": "Восстановить страницу", "error.empty": "Введите адрес.", "error.invalid": "Этот адрес недействителен или слишком длинный.", "error.protocol": "Поддерживаются только адреса HTTP и HTTPS; используйте предварительный просмотр документа для локальных файлов.", "error.credentials": "Адреса не могут содержать имя пользователя или пароль.", "error.application-origin": "Встроенный браузер не может открыть само приложение DSH.", "load.failed": "Страница не может загрузиться; перезагрузите или откройте его в системном браузере.", "load.failed.detail": "Ошибка загрузки страницы ({code}): {description}", "address.unknown": "Страница перемещалась; этот оператор связи не может прочитать свой новый URL-адрес." }, "sidebarCodePreview": { "title": "Код", "copy": "Копировать", "copied": "Скопировано" }, "sidebarExcel": { "title": "электронная таблица", "language": "en", "loading": "Оформление документа...", "invalid": "Эту таблицу невозможно открыть. Проверьте его формат, содержимое или защиту паролем.", "tooLarge": "Размер этой книги превышает ограничение на размер предварительного просмотра.", "timeout": "Время открытия этой книги истекло. Попробуйте файл меньшего размера.", "encoding": "Эту текстовую кодировку невозможно прочитать. Сохраните файл как UTF-8 или UTF-16 со спецификацией и повторите попытку.", "formulaWarning": "В этой рабочей тетради есть формулы. Отображаемые результаты могут отсутствовать или быть неточными.", "unsupportedNotice": "Эта предварительная версия не поддерживает {features} в этой книге. Откройте его в системном приложении, чтобы получить полную информацию.", "charts": "графики", "images": "изображения", "shapes": "формы", "conditionalFormatting": "условное форматирование", "featureSeparator": ", ", "retry": "Повторить" }, "documentHtml": { "title": "HTML", "frame": "Предварительный просмотр HTML-документа", "loading": "Оформление документа...", "failed": "Этот HTML-документ не удалось просмотреть." }, "sidebarDocumentPreview": { "loading": "Оформление документа...", "loadMore": "Загрузить больше", "changed": "Файл изменился, показывая предыдущее содержимое.", "reloadNow": "Перезагрузить", "reload": "Прочтите файл еще раз", "autoRefresh": "Автоматическое обновление", "autoRefresh.enable": "Включить автоматическое обновление", "autoRefresh.disable": "Отключить автоматическое обновление", "wrap.enable": "Включить перенос строк", "wrap.disable": "Отключить перенос строк", "wrap.aria": "Перенос строки", "openWith": "Открыть с помощью", "viewer.text": "Обычный текст", "resourceUnavailable": "Служба файловых ресурсов недоступна.", "rendererUnavailable": "Предварительный просмотр {name} недоступен.", "unsupportedFile": "Предварительный просмотр для этого типа файлов пока недоступен.", "error.notFound": "Файл не найден. Возможно, оно было перемещено или удалено.", "error.tooLarge": "Эта страница превышает лимит {limit} и не может быть прочитана.", "error.notText": "Предварительный просмотр для этого типа файлов пока недоступен.", "error.notRegularFile": "Не обычный файл, отображать нечего.", "error.unavailable": "Не удалось прочитать: {message}.", "retry": "Повторить" }, "documentMarkdown": { "viewer.label": "Markdown", "code.copy": "Копировать", "code.copied": "Скопировано", "footnotes": "Сноски" }, "sidebarOffice": { "title": "Офисный документ", "loading": "Оформление документа...", "retry": "Повторить", "viewMissingFonts": "Отсутствуют шрифты: {count}. Нажмите, чтобы просмотреть.", "missingFontsTitle": "Отсутствуют шрифты", "missingFontsDescription": "Эти шрифты недоступны для этой предварительной версии. Текст и оформление могут отличаться от исходного документа.", "missingFontsCount": "Шрифты: {count}", "closeDetails": "Закрыть сведения о шрифте", "unavailable": "Предварительные версии Office недоступны. Включите службу предварительного просмотра документов на компьютере под управлением DeepSeek Harness.", "invalid": "Этот файл Office нельзя просмотреть. Возможно, он поврежден, защищен паролем или имеет неправильное расширение.", "tooLarge": "Размер файла Office или преобразованного PDF-файла превышает ограничение на размер предварительного просмотра. Уменьшите размер файла или настройте конфигурацию предварительного просмотра.", "failed": "Преобразование Office не привело к созданию пригодного для использования PDF-файла. Проверьте файл и повторите попытку.", "timeout": "Время преобразования Office истекло. Попробуйте еще раз.", "busy": "Предварительная версия Office занята. Повторите попытку через некоторое время.", "changed": "Файл изменился во время чтения. Снова откройте предварительный просмотр." }, "sidebarFiles": { "shortcut.noSession": "Сначала выберите сеанс", "type.label": "Файлы", "guide.title": "Файлы рабочей области", "guide.description": "Просмотр файлов в рабочей области этого сеанса", "loading": "Чтение…", "empty": "Пустой каталог", "truncated": "Слишком много записей, показаны только некоторые из них.", "noWorkspace": "В этом сеансе нет каталога рабочей области.", "reload": "Перезагрузить", "autoRefresh": "Автоматическое обновление", "autoRefresh.enable": "Включить автоматическое обновление", "autoRefresh.disable": "Отключить автоматическое обновление", "entry.other": "Это не файл и не каталог, поэтому его нельзя открыть.", "error.notFound": "Этот каталог исчез. Возможно, оно было перемещено или удалено.", "error.outsideWorkspace": "Этот каталог находится за пределами рабочей области, поэтому боковая панель его не читает.", "error.notDirectory": "Это не каталог.", "error.unavailable": "Не удалось прочитать: {message}." }, "sidebarRight": { "command.close": "Закрыть текущую страницу или окно", "command.refresh": "Обновить текущую страницу", "command.noRefresh": "Эту страницу невозможно обновить", "command.toggle": "Переключить правую боковую панель", "command.fullscreen": "Переключить панель в полноэкранный режим", "command.noSession": "Сначала выберите сеанс", "command.noFocus": "Сначала сфокусируйтесь на правой боковой панели", "command.stale": "Страница изменилась; сосредоточься еще раз", "command.collapsed": "Сначала разверните правую боковую панель", "command.float": "Это действие недоступно на плавающей панели.", "command.empty": "Сначала откройте страницу", "command.budget": "Две панели — это предел", "command.width": "Недостаточно ширины для разделения, расширьте боковую панель", "chrome.expand": "Открыть боковую панель", "chrome.expandAria": "Открыть правую боковую панель", "chrome.collapse": "Свернуть боковую панель", "chrome.collapseAria": "Свернуть правую боковую панель", "chrome.toFullscreen": "Полноэкранный режим", "chrome.exitFullscreen": "Выйти из полноэкранного режима", "dock.emptyPane": "Пустая панель", "dock.splitPane": "Сплит", "dock.splitPaneDisabled": "Две панели — это предел", "dock.splitPaneNarrow": "Недостаточно ширины для разделения, расширьте боковую панель", "dock.closeTab": "Закрыть", "dock.addTab": "Новая вкладка", "dock.dockFloat": "Отправить обратно на боковую панель", "dock.closeFloat": "Закрыть", "dock.drop.center": "Переместитесь сюда", "dock.drop.left": "Добавить левый сплит", "dock.drop.right": "Добавить правое разделение", "dock.drop.top": "Добавить верхнее разделение", "dock.drop.bottom": "Добавить нижний разрез", "tab.guide.title": "Старт", "tab.guide.more": "Дополнительные инструменты", "tab.unavailable": "Ничто здесь пока не может просматривать такой контент." }, "sidebarTerminal": { "shortcut.noSession": "Сначала выберите сеанс", "recoveryFailed": "Восстановление терминала не удалось: {message}", "retryRecovery": "Повторить попытку восстановления терминала", "shell": "Выбрать оболочку", "shellLoading": "Загрузка снарядов…", "shellEmpty": "Нет доступных ракушек", "description": "Запуск команд в рабочей области сеанса", "title": "Терминал", "new": "Новый терминал", "loading": "Чтение среды терминала…", "creating": "Начало…", "connecting": "Подключение…", "disconnected": "Отключено.", "reconnect": "Восстановить соединение", "readonly": "Это представление доступно только для чтения.", "control": "Возьмите под свой контроль", "closed": "Терминал закрыт.", "exited": "Процесс завершен ({code})", "failed": "Ошибка терминала: {message}", "rename": "Имя терминала", "unavailable": "Недоступно", "retry": "Повторить", "cleanupFailed": "Терминал «{title}» не удалось завершить: {message}", "missingTerminal": "Этого терминала больше не существует. Откройте новый терминал.", "inputFull": "Входной буфер заполнен. Подключитесь и повторите попытку.", "attachmentEnded": "Терминальное соединение завершилось. Подключитесь повторно, чтобы продолжить.", "invalidOutput": "Не удалось получить экран терминала. Повторно подключитесь, чтобы восстановить его.", "terminalLimit": "Достигнут лимит терминала. Закройте неиспользуемые терминалы и повторите попытку. Вышедшие терминалы также учитываются в лимите." }, "skill": { "row.title": "Навык", "row.running": "Навык загрузки", "row.preparing": "Подготовка к загрузке навыка", "row.failed": "Не удалось загрузить навык", "row.stopped": "Загрузка навыков остановлена", "row.instructions": "Инструкции", "row.inspect": "Осмотреть", "menu.userOnly": "только для пользователей" }, "subagent": { "duration.seconds": "{seconds}s", "duration.minutes": "{minutes}m {seconds}s", "duration.hours": "{hours}h {minutes}m {seconds}s", "duration.days": "{days}d", "duration.daysHours": "{days}d {hours}h", "duration.months": "~{months}mo", "duration.monthsDays": "~{months}mo {days}d", "duration.years": "~{years}y", "duration.yearsMonths": "~{years}y {months}mo", "duration.exactDays": "{days}d {hours}h {minutes}m {seconds}s", "duration.exactTitle": "Общая активная продолжительность: {duration}", "tokens.thousand": "{value}K", "tokens.million": "{value}M", "tokens.total": "{value} ток", "loading.label": "Загрузка субагентов…", "load.error": "Невозможно загрузить субагенты", "catalog.migrationRequired": "Требуется миграция", "retry": "Повторить", "mode.external": "Внешняя задача", "mode.oneShot": "одноразовый", "mode.continuable": "продолжаемый", "mode.unknown": "неизвестный режим", "readonly.unknown.body": "Прочтите дочерний сеанс, чтобы определить, можно ли его продолжить.", "activity.running": "бег", "activity.completed": "завершено", "activity.inactive": "не работает", "branch.collapse": "Свернуть потомков {label}", "branch.expand": "Развернуть потомков {label}", "count.total.one": "Субагент {count}", "count.total.other": "Субагенты {count}", "count.running.one": "Субагент {count} работает", "count.running.other": "Субагенты {count} работают", "switcher.aria": "Переключить субагент: {title}", "tree.aria": "Сеансы субагента", "open.sidebar": "Открыть в боковой панели", "open.sidebar.aria": "Откройте {label} на боковой панели.", "sidebar.chat": "Чат", "readonly.oneShot.title": "Разовая запись субагента", "readonly.title": "Этот субагент пока доступен только для чтения.", "readonly.oneShot.body": "Одноразовые задачи не допускают последующих действий; просмотреть полную запись выполнения можно здесь.", "readonly.body": "Родительский сеанс находится в автономном режиме; откройте его повторно, чтобы продолжить отправку сообщений." }, "settings.theme": { "appearance.title": "Внешний вид", "appearance.light": "Светлая", "appearance.dark": "Тёмная", "appearance.system": "Система", "fontSize.text.title": "Размер шрифта", "fontSize.text.description": "Влияет только на содержание разговора", "fontSize.text.increase": "Увеличить размер шрифта", "fontSize.text.decrease": "Уменьшить размер шрифта", "fontSize.code.title": "Размер шрифта кода", "fontSize.code.description": "Используется для блоков кода, встроенного кода и выходных данных инструмента.", "fontSize.code.increase": "Увеличить размер шрифта кода", "fontSize.code.decrease": "Уменьшить размер шрифта кода", "fontSize.terminal.title": "Размер шрифта терминала", "fontSize.terminal.description": "Используется для терминала боковой панели", "fontSize.terminal.increase": "Увеличьте размер шрифта терминала", "fontSize.terminal.decrease": "Уменьшить размер шрифта терминала", "fontSize.unit": "пикселей", "fontFamily.text.title": "Текстовый шрифт", "fontFamily.text.description": "Используется для интерфейса и текста разговора. Разделяйте шрифты запятыми; оставьте пустым по умолчанию", "fontFamily.code.title": "Шрифт кода", "fontFamily.code.description": "Используется для блоков кода, встроенного кода и выходных данных инструмента. Разделяйте шрифты запятыми; оставьте пустым по умолчанию", "fontFamily.terminal.title": "Шрифт терминала", "fontFamily.terminal.description": "Используется для терминала боковой панели. Разделяйте шрифты запятыми; оставьте пустым по умолчанию", "fontFamily.placeholder": "По умолчанию", "fontSize.more": "Дополнительные настройки шрифта" }, "trajectory": { "view.trajectory": "Траектория", "toolbar.aria": "Панель инструментов траектории", "toolbar.duration": "Продолжительность", "toolbar.useActualDuration": "Использовать фактическую продолжительность", "toolbar.useEqualWidth": "Используйте операции равной ширины", "toolbar.actualTime": "Фактическое время", "toolbar.turns": "Ходы", "toolbar.expandTurns": "Развернуть ходы", "toolbar.collapseTurns": "Свернуть ходы", "toolbar.calls": "Звонки", "toolbar.expandCalls": "Развернуть вызовы", "toolbar.collapseCalls": "Свернуть вызовы", "toolbar.search": "Траектория поиска", "toolbar.searchPlaceholder": "Поиск", "kind.system": "СИСТЕМА", "kind.user": "ПОЛЬЗОВАТЕЛЬ", "kind.context": "КОНТЕКСТ", "kind.compacted": "СЖАТО", "kind.message": "Сообщение", "kind.assistant": "АССИСТЕНТ", "kind.tool": "ИНСТРУМЕНТ", "kind.subtool": "ВЛОЖЕННЫЙ ИНСТРУМЕНТ", "kind.sub": "Саб", "column.input": "Ввод", "column.output": "Выход", "column.think": "Подумайте", "column.time": "Время", "column.model": "Модель", "column.tools": "Инструменты", "turn.label": "Ход {turn}", "section.betweenTurns": "Между ходами", "group.message": "Сообщение", "group.step": "Шаг {step}", "group.compaction": "Уплотнение {seq}", "status.failed": "Не удалось", "status.pending": "Ожидается", "status.completed": "Завершено", "timing.notAvailable": "Недоступно", "timing.notRecorded": "Не записано", "timing.stepStartUnavailable": "Начало шага недоступно", "timing.firstTokenUnavailable": "Первый токен недоступен", "timing.usageUnavailable": "Использование недоступно", "timing.outputTokensUnavailable": "Выходные токены недоступны.", "timing.durationTooShort": "Продолжительность слишком коротка", "timing.showLocalTime": "Показать местное время", "timing.showUnixTimestamp": "Показать временную метку Unix", "timing.started": "Началось", "timing.totalDuration": "Общая продолжительность", "timing.ttft": "TTFT", "timing.generation": "Поколение", "timing.throughput": "Пропускная способность", "timing.duration": "Продолжительность", "timing.source": "Источник синхронизации", "timing.sessionTimestamps": "Временные метки сеанса", "timing.sessionTimestampsRunning": "Временные метки сеанса (работает)", "timing.request": "Запрос времени", "unit.milliseconds": "{value} мс", "unit.seconds": "{value} с", "unit.tokens": "{value} ток", "unit.tokensPerSecond": "{value} ток/с", "usage.tokens": "Токены", "usage.reasoning": "Рассуждение", "usage.content": "Содержание", "usage.notReported": "Об использовании не сообщается", "usage.input": "Ввод", "usage.cached": "Кэшированный", "usage.cacheCreated": "Кэш создан", "usage.other": "Другое", "usage.output": "Выход", "usage.thisRequest": "Этот запрос", "usage.sessionCumulative": "Совокупный сеанс", "options.notRecorded": "Опции не записаны", "options.json": "Варианты запроса JSON", "source.unknown": "Неизвестно", "source.user": "Пользователь", "source.plugin": "Плагин", "source.pluginNamed": "Плагин · {plugin}", "source.goal": "Цель", "source.goalRound": "Гол · Раунд {round}", "source.notRecorded": "Источник не записан", "source.messageJson": "Источник сообщения JSON", "tab.summary": "Резюме", "tab.rawOutput": "Необработанный вывод", "tab.preview": "Предварительный просмотр", "tab.raw": "сырой", "tab.source": "Источник", "tab.payload": "Полезная нагрузка", "tab.result": "Результат", "tab.schema": "Схема", "tab.timing": "Тайминг", "tab.diff": "Разница", "tab.systemPrompt": "Системная подсказка", "tab.tools": "Инструменты", "tab.options": "Опции", "tab.usage": "Использование", "record.toolCallOnly": "(только вызов инструмента)", "record.noContent": "Нет контента", "record.noPayload": "Полезная нагрузка не захвачена", "record.noResult": "Результат не зафиксирован", "record.noOutput": "Нет вывода", "record.schemaUnavailable": "Схема недоступна", "record.parameters": "Параметры", "record.resultJson": "Результат JSON", "record.json": "JSON", "record.parametersJson": "параметры JSON", "record.namedParametersJson": "{name} параметры JSON", "record.payloadJson": "Полезная нагрузка JSON", "record.outputJson": "Результат JSON", "record.thinking": "Размышление", "record.wrapLines": "Переносить строки", "code.source": "Код", "code.output": "Выход", "code.copySource": "Скопировать код", "code.copyOutput": "Копировать вывод", "code.originalJson": "Исходный JSON", "code.running": "Бег…", "record.systemPromptMissing": "В этом запросе нет системного запроса", "record.toolsMissing": "В этом запросе нет инструментов", "record.systemPrompt": "Системная подсказка", "record.tools": "Инструменты", "block.openSummary": "Открыть сводку вызовов инструментов для блока №{index}", "block.openSummaryTitle": "Открыть сводку вызовов инструментов", "block.label": "Блок №{index} {type}", "history.loadingTrajectory": "Загрузка траектории…", "history.loadingEarlier": "Загрузка более ранней истории…", "history.loadingEarlierAria": "Загрузка более ранней истории…", "history.loadEarlier": "Загрузить предыдущую историю", "history.clickToLoadEarlier": "Нажмите, чтобы загрузить предыдущую историю", "request.label": "Запрос № {request}", "request.labelCompaction": "Запрос №{request} · Сжатие", "request.compaction": "Уплотнение · {section}", "request.compactionPurpose": "Уплотнение", "request.retryProgress": "{retry} из {maximum}", "request.collapsedSummary": "Свернутая сводка {kind}, {summary}", "request.collapsedTurn": "ход", "request.collapsedAssistant": "помощник", "request.rowAria": "{request}{kind}, {content}", "request.rowPrefix": "Запрос {request}, ", "request.rowAriaCompaction": "Запрос {request}, уплотнение", "request.noContent": "нет содержания", "summary.toolCalls.one": "{count} вызов инструмента", "summary.toolCalls.other": "{count} вызовов инструментов", "summary.steps.one": "{count} шаг", "summary.steps.other": "{count} шагов", "details.event": "Подробности мероприятия", "details.resize": "Изменить размер сведений о мероприятии", "details.resizeTitle": "Перетащите, чтобы изменить размер. Дважды щелкните для сброса.", "details.close": "Закрыть детали", "details.status": "Статус", "details.purpose": "Цель", "details.provider": "Поставщик", "details.model": "Модель", "details.toolCalls": "Вызовы инструментов", "details.subtoolCalls": "Вызовы подинструментов", "details.error": "Ошибка", "details.lastAttemptError": "Ошибка последней попытки", "details.failure.auth": "Ключ API недействителен.", "details.retry": "Повторить", "details.retryDelay": "Задержка повтора", "details.result": "Результат", "details.compacted": "Уплотненный", "details.assistantMessage": "Сообщение помощника", "details.source": "Источник", "details.hierarchy": "Иерархия", "details.toolCall": "Вызов инструмента", "timeline.aria": "Хронология траектории", "timeline.overviewAria": "Обзор временной шкалы; перетащите горизонтально, чтобы сфокусировать события", "timeline.noTimingData": "Нет данных о времени", "timeline.total": "Всего {duration}", "timeline.started": "Запустил {time}", "timeline.ttftDecoding": "TTFT {ttft} · Декодирование {decoding}", "layout.compacting": "Сжатие контекста…", "layout.compactionFailed": "Сжатие не удалось", "layout.compacted": "Контекст сжат", "layout.toolCallOnly": "Только вызов инструмента", "attachment.list": "Вложения", "attachment.imageName": "Изображение {index}", "layout.imageCount": "Изображения ×{count}", "layout.fileAttachments": "Файлы ×{count}", "layout.initialSystemPrompt": "Начальная системная подсказка", "layout.systemPromptUpdated": "Системная подсказка обновлена", "layout.toolsUpdated": "Инструменты обновлены", "layout.toolAdded": "Добавлен инструмент: {name}.", "layout.toolRemoved": "Инструмент удален: {name}.", "layout.toolUpdateNotice": "Инструменты обновлены", "layout.toolsAdded": "Добавлено: {names}", "layout.toolsAddedCount": "{count} добавлен", "layout.toolsChanged": "{added} добавлен, {removed} удален.", "layout.toolsRemoved": "Удалено: {names}.", "layout.toolsRemovedCount": "{count} удален.", "layout.systemPromptAndToolsUpdated": "Системная подсказка и инструменты обновлены", "layout.compactionInterrupted": "Уплотнение было прервано до завершения." }, "question": { "error.incomplete": "Пожалуйста, сначала ответьте на этот вопрос.", "error.unanswered": "Пожалуйста, выберите вариант или введите собственный ответ.", "error.unavailable": "Невозможно отправить прямо сейчас; попробуйте еще раз через минуту.", "error.resubmit": "Ответ не пришел до продолжения работы; отправьте его еще раз.", "status.sent": "Ответ отправлен; панель не могла закрыться.", "wait.takeTime": "Найдите время", "wait.countdown": "Продолжение в {seconds}s", "wait.paused": "Приостановлено · Осталось {seconds}", "wait.held": "Жду, пока ты ответишь", "wait.continued": "Работа продолжается — вы еще можете ответить", "review.status": "Ответил", "review.skipped": "Этот вопрос был пропущен.", "reply.label": "Вопросы и ответы", "reply.answerLabel": "Ответ: ", "reply.skipped": "Пропущено", "nav.prev": "Предыдущий вопрос", "nav.next": "Следующий вопрос", "nav.minimize": "Свернуть карточку с вопросом", "nav.maximize": "Развернуть карточку с вопросом", "nav.cancel": "Отклонить все вопросы", "nav.close": "Закрыть панель — открыть ее снова из вызова инструмента", "text.expand": "Развернуть", "text.collapse": "Свернуть", "option.recommended": "Рекомендуется", "custom.placeholder": "Введите ответ", "action.skip": "Пропустить", "action.next": "Далее", "plan.header": "Обзор плана", "plan.approve": "Утвердить", "plan.decline": "Отказаться", "plan.discuss": "Запросить изменения" }, "workflowRun": { "run.title": "{name}", "run.members.one": "Участник {count}", "run.members.other": "Участники {count}", "run.empty": "Ни один из участников не стартовал", "phase.unassigned": "Нефазированный", "phase.empty": "Пустое имя фазы", "statusCount.running": "Запуск {count}", "statusCount.completed": "Завершено {count}", "statusCount.failed": "Ошибка {count}", "statusCount.cancelled": "Отменено {count}", "statusCount.interrupted": "Прервано {count}", "member.empty": "Пустое имя участника", "member.open": "Открыть {name}", "status.running": "Бег", "status.completed": "Завершено", "status.failed": "Не удалось", "status.cancelled": "Отменено", "status.interrupted": "Прерванный" }, "workspace": { "defaultWorkspace.failed": "Невозможно создать рабочую область по умолчанию. Используйте «Выбрать рабочее пространство», чтобы выбрать папку.", "draft.workspaceRequired": "Сначала выберите рабочее место.", "draft.initializationFailed": "Не удалось заполнить черновик. Пожалуйста, повторите попытку в ближайшее время.", "group.ungrouped": "Разгруппировано", "session.new": "Новая сессия", "session.untitled": "Без названия", "shortcut.noSession": "Сначала выберите сеанс", "shortcut.noPicker": "Выбор каталога недоступен.", "shortcut.directoryBusy": "Выбор или добавление рабочего пространства", "shortcut.noCompletedTurn": "В этой сессии нет завершенных ходов", "shortcut.forkFailed": "Не удалось разветвить сеанс. Попробуйте еще раз.", "section.workspaces": "Рабочие пространства", "section.sessions": "Сессии", "viewOptions.label": "Посмотреть варианты", "groupBy.label": "Группировать по", "groupBy.workspace": "Рабочее пространство", "groupBy.workspaceTree": "Дерево рабочей области", "groupBy.flat": "В одном списке", "orderBy.label": "Заказать по", "orderBy.manual": "Руководство", "orderBy.updated": "Последнее обновление", "filterBy.label": "Фильтровать сеансы", "viewOptions.hideArchived": "Скрыть в архиве", "viewOptions.showArchived": "Все разговоры (показать в архиве)", "viewOptions.onlyArchived": "Только в архиве", "sessions.expand": "Показать больше сеансов {n}", "sessions.collapse": "Показать меньше", "empty.none": "Сеансов пока нет", "empty.noneArchived": "Архивированных сессий пока нет", "empty.viewOthers": "Посмотреть другие сессии", "empty.noMatches": "Нет совпадений", "workspace.add": "Добавить рабочую область", "search.sessions.aria": "Поиск сеансов", "search.placeholder": "Поиск названий сеансов", "search.clear": "Очистить поиск", "search.results.aria": "Результаты поиска", "search.pending": "Поиск истории сеансов…", "search.noMatches": "Нет подходящих сеансов", "search.hasMore": "Показаны первые результаты {n}. Сузьте область поиска.", "menu.addWorkspace": "Добавить рабочее пространство…", "picker.loading": "Загрузка рабочих областей…", "conflict.named": "Рабочая область с именем «{name}» уже существует.", "folderError.title": "Не удалось открыть папку", "folderError.retry": "Выбрать еще раз", "rename": "Переименовать", "rename.workspace.title": "Переименовать рабочую область", "rename.session.title": "Переименовать сеанс", "field.workspaceName": "Имя рабочей области", "field.sessionName": "Имя сеанса", "delete.workspace": "Удалить рабочую область", "delete.desc": "Это удалит «{name}» из списка рабочей области. Журналы папок и сеансов будут сохранены. Его сеансы появятся в разделе «Разгруппировано».", "delete.pending": "Удаление рабочей области…", "menu.fork": "Создать ответвление сеанса", "menu.archiveSession": "Архив сеанса", "menu.unarchiveSession": "Разархивировать сеанс", "menu.pinSession": "Закрепить сеанс", "menu.unpinSession": "Открепить сеанс", "menu.sessionId": "Копировать идентификатор сеанса", "toast.sessionIdCopied": "Идентификатор сеанса скопирован.", "toast.sessionIdCopyFailed": "Копировать не удалось. Попробуйте еще раз.", "row.archived": "В архиве", "row.pinned": "Закреплено", "toast.archivedNotOpenable": "Архивированные сеансы невозможно открыть. Разархивируйте его для просмотра.", "toast.archived": "Сессия заархивирована. Вы можете ", "toast.stoppedAndArchived": "Сеанс остановлен и заархивирован. Вы можете ", "archive.confirm.title": "Остановить и заархивировать этот сеанс?", "archive.confirm.desc": "Над «{title}» все еще ведется работа. Архивирование останавливает его первым; восстановить сессию можно позже из фильтра «Все разговоры (показать в архиве)» в боковой панели, при этом остановленная работа не возобновится сама по себе.", "archive.confirm.activity": "Работа, которая будет остановлена", "archive.confirm.turn": "Текущий ход", "archive.confirm.subagents.one": "{n} работающий субагент: {names}", "archive.confirm.subagents.other": "{n} работающие субагенты: {names}", "archive.confirm.jobs.one": "{n} фоновое задание: {names}", "archive.confirm.jobs.other": "{n} фоновые задания: {names}", "archive.confirm.schedules.one": "Запланированное напоминание {n}: {names}", "archive.confirm.schedules.other": "Запланированные напоминания {n}: {names}", "archive.confirm.other.one": "{n} другой элемент работы ({kind})", "archive.confirm.other.other": "{n} прочие работы ({kind})", "archive.confirm.listSeparator": ", ", "archive.confirm.action": "Остановить и заархивировать", "archive.confirm.pending": "Остановка и архивирование…", "toast.archivedUndo": "отменить", "toast.archivedOr": " или ", "toast.archivedFilter": "фильтровать архивированные сеансы", "toast.pinFailed": "Не удалось закрепить. Повторите попытку позже.", "toast.unpinFailed": "Не удалось открепить. Повторите попытку позже.", "toast.createFailed": "Не удалось создать новый сеанс: {message}.", "toast.forkRequiresOpen": "Откройте исходный сеанс, чтобы завершить миграцию, прежде чем создавать ветку.", "toast.openForkSource": "Открыть исходный сеанс", "sessions.count.one": "Сеанс {n}", "sessions.count.other": "Сессии {n}", "actions.workspace.aria": "Действия рабочей области для {name}", "actions.session.aria": "Действия сеанса для {name}", "actions.archive": "Архив", "actions.unarchive": "Разархивировать", "actions.pin": "Закрепить", "actions.unpin": "Открепить", "actions.newSession": "Новая сессия", "actions.newSession.aria": "Новая сессия в {name}", "status.running": "Бег", "status.subagentsRunning.one": "Субагент {n} работает", "status.subagentsRunning.other": "Субагенты {n} работают", "status.idle": "Простой", "status.waitingApproval": "Ожидание одобрения", "status.planReview": "План ожидает рассмотрения", "status.waitingAnswer": "Ожидание ответа", "status.compact.approval": "Одобрение", "status.compact.planReview": "Обзор плана", "status.compact.answer": "Ответ", "status.completed": "Завершено", "hover.created": "Создано {time}", "hover.copied": "Скопировано", "date.ymd": "{y}-{m}-{d}", "time.now": "сейчас", "time.minutes": "{n}мин", "time.hours": "{n}h", "time.days": "{n}d", "time.months": "{n}mo", "time.years": "{n}y", "time.ago": "{t} назад" }, "conversation": { "quote.remove": "Удалить цитату", "shortcut.newline": "Новая строка", "shortcut.complementary": "Использовать дополнительное действие «В очередь / Направить»", "shortcut.slash": "Открыть меню команд", "shortcut.mention": "Открыть меню ссылок", "hint.plan": "опишите задачу, чтобы создать план", "hint.goal": "опишите цель для долгой задачи", "hint.goal.active": "цель активна — изменить / пауза / продолжить / очистить", "placeholder.plan": "опишите задачу, чтобы создать план", "placeholder.default": "Напишите сообщение или запустите задачу: команды /, файлы и сессии через @", "placeholder.unavailable": "Сессия недоступна", "placeholder.parentOffline": "Родительская сессия не в сети; отправка недоступна, но запуск можно остановить", "placeholder.hero": "Опишите, что хотите создать: команды /, файлы и сессии через @", "placeholder.workspace": "Выберите рабочую папку, чтобы начать", "placeholder.steerQueue": "Cmd/Ctrl+Enter направит все сообщения из очереди", "input.commands": "Добавить файлы или запустить команды", "input.file": "Файл", "input.stop": "Остановить генерацию", "input.send": "Отправить сообщение", "input.send.queue": "Поставить сообщение в очередь", "input.send.steer": "Направить сообщение", "attachment.pending": "Вложения в ожидании", "attachment.scrollLeft": "Прокрутить вложения влево", "attachment.scrollRight": "Прокрутить вложения вправо", "attachment.dropTitle": "Перетащите сюда файлы или изображения", "attachment.dropDesc": "Лимит изображений: до {count} шт., каждое до {size}", "attachment.dropBlocked": "Сейчас нельзя добавить файлы и изображения", "attachment.directoryDesktopOnly": "Папки можно добавить только в десктопном приложении; в браузере добавляйте отдельные файлы", "attachment.pathUnavailable": "Не удалось получить путь к папке; перетащите её ещё раз", "attachment.pathUnsupported": "Путь содержит символы, которые нельзя передать в ссылке; переименуйте его и попробуйте снова", "image.pending": "Изображения в ожидании", "image.openOriginal": "Открыть оригинал", "image.openOriginalLabel": "{label}, нажмите, чтобы открыть оригинал", "image.remove": "Удалить изображение {name}", "image.original": "Оригинальное изображение", "image.label": "Изображение", "image.loadFailed": "Не удалось загрузить изображение; нажмите, чтобы повторить", "image.loading": "Загрузка изображения…", "image.preview": "Просмотр оригинала", "image.closePreview": "Закрыть просмотр оригинала", "image.unsupportedType": "Поддерживаются только изображения PNG, JPG, WebP и GIF", "image.tooMany": "Сообщение может содержать до {count} изображений", "image.fileTooLarge": "Каждое изображение должно быть меньше {size}", "image.totalTooLarge": "Изображения превышают {size} суммарно; удалите часть и попробуйте снова", "image.tooManyPixels": "Разрешение изображения слишком велико; сожмите его и попробуйте снова", "image.dimensionTooLarge": "Стороны изображения не должны превышать {size} px; уменьшите его и попробуйте снова", "image.modelUnsupported": "Текущая модель не поддерживает изображения; выберите модель, которая их поддерживает", "image.sendFailed": "Не удалось отправить изображения ({reason}); добавьте их заново и попробуйте снова", "file.pending": "Файлы в ожидании", "file.remove": "Удалить файл {name}", "file.uploading": "Загрузка…", "file.uploadFailed": "Ошибка загрузки; нажмите, чтобы повторить", "file.retry": "Повторить загрузку {name}", "file.stillUploading": "Файлы ещё загружаются; отправьте их после завершения", "file.sessionUnavailable": "Сессия недоступна; файлы нельзя загрузить", "file.notStaged": "Файл не загружен до конца; добавьте его заново и попробуйте снова", "file.label": "Файл", "context.aria": "Использовано {percent} контекста", "context.used": "контекста использовано", "context.system": "Системный промпт", "context.tools": "Описания инструментов", "context.messages": "Сообщения", "settings.enter.title": "Поведение отправки во время работы", "settings.enter.description": "Что делают Enter и кнопка отправки, пока агент работает; Cmd/Ctrl+Enter выполняет другое действие", "settings.enter.queue": "В очередь", "settings.enter.steer": "Направить", "hero.headline": "В неизвестное", "hero.preview": "Предпросмотр", "hero.chooseWorkspace": "Выбрать рабочую папку", "session.hierarchy": "Иерархия сессий", "session.moreViews": "Другие виды беседы", "session.moreViewsCurrent": "Другие виды беседы · {name}", "todo.title": "Задачи", "todo.progress.done": "{done} выполнено", "todo.progress.active": "{active} в работе", "todo.progress.pending": "{pending} ожидает", "todo.status.completed": "Выполнено", "todo.status.inProgress": "В работе", "todo.status.pending": "Ожидает", "todo.rowTitle": "Обновить список задач", "tool.title.createGoal": "Создать цель", "tool.title.getGoal": "Посмотреть цель", "tool.title.updateGoal": "Обновить цель", "tool.preparing.content": "{kilobytes} КБ", "tool.title.createSchedule": "Создать напоминание", "tool.title.listSchedules": "Список напоминаний", "tool.title.deleteSchedule": "Удалить напоминание", "tool.title.updateSchedule": "Обновить напоминание", "detail.state": "Статус", "detail.todo.completed": "Выполнено", "detail.todo.in_progress": "В работе", "detail.todo.pending": "Ожидает", "detail.todo.empty": "Список задач пуст", "todo.diff.initial": "Первоначальный список", "todo.diff.compare": "Изменения с предыдущего списка", "todo.diff.unavailable": "Предыдущий список недоступен", "todo.diff.noChanges": "Изменений в списке нет", "todo.diff.added": "добавлено: {count}", "todo.diff.updated": "обновлено: {count}", "todo.diff.removed": "удалено: {count}", "todo.diff.unchanged": "без изменений: {count}", "todo.diff.addedItem": "Добавлено", "todo.diff.updatedItem": "Статус изменён", "todo.diff.movedItem": "Порядок изменён", "todo.diff.removedItem": "Удалено", "detail.goal.empty": "Цели нет", "detail.goal.active": "Активна", "detail.goal.disarmed": "Ожидает продолжения", "detail.goal.paused": "На паузе", "detail.goal.blocked": "Заблокировано", "detail.goal.complete": "Выполнено", "detail.goal.rounds": "Раунды", "detail.goal.reason": "Блокер", "detail.days": "{count} д", "detail.hours": "{count} ч", "detail.minutes": "{count} мин", "detail.seconds": "{count} с", "detail.schedule.once": "Однократно", "detail.schedule.every": "Каждые {interval}", "detail.schedule.when": "Запланировано на", "detail.schedule.frequency": "Повтор", "detail.schedule.scheduled": "Запланировано", "detail.schedule.overdue": "Просрочено, ожидает возобновления сессии", "detail.schedule.empty": "Напоминаний нет", "detail.schedule.deleted": "Удалено", "detail.schedule.count": "Напоминаний: {count}", "detail.schedule.daily": "Каждый день в {time} ({zone})", "detail.schedule.weekly": "Каждую неделю по {days} в {time} ({zone})", "detail.schedule.cron": "Cron {expression} ({zone})", "detail.weekday.1": "Пн", "detail.weekday.2": "Вт", "detail.weekday.3": "Ср", "detail.weekday.4": "Чт", "detail.weekday.5": "Пт", "detail.weekday.6": "Сб", "detail.weekday.7": "Вс", "detail.weekday.join": ", ", "tool.title.inspectProviders": "Проверить провайдеров", "tool.title.queryRuntime": "Запросить среду выполнения", "tool.title.inspectPlugins": "Проверить плагины", "tool.title.workflow": "Запустить воркфлоу", "tool.title.ralph": "Запустить цикл Ralph", "tool.title.readEvent": "Прочитать событие", "tool.title.searchEvents": "Поиск событий", "tool.title.traceEvent": "Проследить событие", "tool.title.searchSessions": "Поиск сессий", "tool.title.traceSession": "Проследить сессию", "tool.title.listModels": "Список моделей", "tool.title.subagent": "Создать субагента", "tool.title.listAgents": "Список субагентов", "tool.title.sendMessage": "Отправить сообщение", "tool.title.interruptAgent": "Прервать агента", "tool.title.listJobs": "Список фоновых задач", "tool.title.readJob": "Прочитать вывод задачи", "tool.title.killJob": "Отменить фоновую задачу", "tool.title.openTerminal": "Открыть терминал", "tool.title.readTerminal": "Прочитать терминал", "tool.title.listTerminals": "Список терминалов", "tool.title.signalTerminal": "Отправить сигнал терминалу", "tool.title.closeTerminal": "Закрыть терминал", "tool.title.lsp": "Запрос символов кода", "tool.title.findDefinition": "Найти определение", "tool.title.findReferences": "Найти ссылки", "tool.title.findImplementation": "Найти реализацию", "tool.title.hoverSymbol": "Посмотреть символ", "tool.title.spawnTeammate": "Создать участника команды", "tool.title.createTeamTask": "Создать задачу команды", "tool.title.getTeamTask": "Прочитать задачу команды", "tool.title.updateTeamTask": "Обновить задачу команды", "tool.title.listTeamTasks": "Список задач команды", "tool.title.waitAgent": "Ожидание субагента", "detail.recordedResult": "Записанный результат", "detail.empty": "Результатов нет", "detail.none": "Нет", "detail.yes": "Да", "detail.no": "Нет", "detail.moreInInspect": "Ещё элементов в «Проверке»: {count}", "detail.status.running": "Выполняется", "detail.status.idle": "Простаивает", "detail.status.ready": "Готово", "detail.status.inactive": "Неактивно", "detail.status.provisioning": "Подготовка", "detail.status.failed": "Ошибка", "detail.status.completed": "Выполнено", "detail.status.deleted": "Удалено", "detail.status.killed": "Отменено", "detail.status.accepted": "Принято", "detail.status.queued": "В очереди", "detail.status.exited": "Завершён", "detail.field.id": "ID", "detail.field.revision": "Ревизия", "detail.field.platform": "Платформа", "detail.field.provider": "Провайдер", "detail.field.model": "Модель", "detail.field.role": "Роль", "detail.field.context": "Контекст", "detail.field.owner": "Владелец", "detail.field.ready": "Готов", "detail.field.dependencies": "Зависимости", "detail.field.writeScopes": "Области записи", "detail.field.warnings": "Предупреждения", "detail.field.diagnostics": "Диагностика", "detail.field.methods": "Методы", "detail.field.inputSchema": "Схема входных данных", "detail.field.outputSchema": "Схема выходных данных", "detail.field.currentPackage": "Текущий пакет", "detail.field.nextPackage": "Следующий пакет", "detail.field.latestRun": "Последний запуск", "detail.field.packages": "Пакеты", "detail.field.registrations": "Регистрации", "detail.field.props": "Свойства", "detail.field.data": "Данные", "detail.field.source": "Источник", "detail.field.content": "Содержимое", "detail.field.message": "Сообщение", "detail.field.messageId": "ID сообщения", "detail.field.root": "Корень", "detail.field.pid": "ID процесса", "detail.field.type": "Тип", "detail.field.time": "Время", "detail.field.seq": "Порядковый номер события", "detail.field.turn": "Ход", "detail.field.step": "Шаг", "detail.field.callId": "ID вызова", "detail.field.agents": "Запущенные агенты", "detail.field.result": "Результат", "detail.field.parent": "Родитель", "detail.field.depth": "Глубина", "detail.field.exitCode": "Код выхода", "detail.field.signal": "Сигнал", "detail.field.previousStatus": "Предыдущий статус", "detail.field.agent": "ID агента", "detail.field.job": "ID задачи", "detail.field.task": "Задача", "detail.field.processGroup": "Группа процессов", "detail.field.availability": "Доступность", "detail.field.bestMatch": "Лучшее совпадение", "detail.field.target": "Целевое событие", "detail.field.surface": "Статус записи", "detail.agents.count": "Агентов: {count}", "detail.jobs.count": "Фоновых задач: {count}", "detail.terminals.count": "Терминалов: {count}", "detail.tasks.count": "Задач команды: {count}", "detail.tasks.nextPage": "Есть ещё задачи; следующий курсор: {cursor}", "detail.locations.count": "Мест: {count}", "detail.location": "Строка {line}, столбец {column}", "detail.receipt.delivered": "Сообщение доставлено", "detail.receipt.interrupt": "Запрошено прерывание", "detail.receipt.started": "Запущено", "detail.receipt.cancel": "Запрошена отмена", "detail.receipt.alreadyFinished": "Уже завершено", "detail.receipt.signal": "Сигнал доставлен", "detail.receipt.closed": "Закрыто", "detail.receipt.closing": "Закрывается", "detail.wait.noProgress": "Нет активных субагентов", "detail.wait.title": "Активность субагентов", "detail.wait.timeout": "Время ожидания истекло", "detail.wait.changed": "Обнаружено изменение", "detail.agent.reply": "Ответ агента", "detail.models.title": "Доступные модели", "detail.output.lines": "Строки {begin}–{end} из {total}", "detail.output.truncated": "Вывод обрезан", "detail.providers.count": "Провайдеров для проверки: {count}", "detail.plugins.count": "Динамических плагинов: {count}", "detail.workflow.script": "Скрипт воркфлоу", "detail.ralph.reportedComplete": "Исполнитель сообщил о завершении", "detail.ralph.reportedBlocker": "Исполнитель сообщил о блокере", "detail.ralph.limit": "Достигнут лимит раундов", "detail.report.nextSteps": "Оставшаяся работа", "detail.trace.replacedBy": "Заменено на", "detail.trace.replacementChain": "Цепочка замен", "detail.trace.replaces": "Замещённые события", "detail.trace.sources": "Исходные события", "detail.trace.derived": "Производные события", "detail.trace.ancestors": "Родительские сессии", "detail.trace.descendants": "Дочерние сессии", "detail.matches.count": "Совпадений: {count}", "detail.matches.capped": "Достигнут лимит результатов; уточните поиск, чтобы увидеть больше", "detail.event.neighbors": "Соседние события", "todo.completed": "выполнено {done}/{total}", "command.attachmentsUnsupported": "/{command} не принимает вложения; сначала удалите их", "ask.rowTitle": "Вопрос", "ask.waiting": "ожидает", "ask.pending": "продолжено; ответ ещё можно дать", "ask.pendingDetail": "Эти вопросы по-прежнему можно обойти через строку ввода.", "ask.reopen": "Ответить", "ask.review": "Посмотреть ответы", "ask.closed": "закрыто", "ask.closedDetail": "Вопрос закрыт; его результат — в беседе ниже.", "ask.cancelled": "отменено", "ask.cancelledDetail": "Набор вопросов отменён до отправки ответов.", "ask.interrupted": "прервано", "ask.interruptedDetail": "Набор вопросов прерван до отправки ответов.", "ask.answered": "отвечено {answered}/{total}", "ask.skipped": "Без ответа", "bash.running": "Выполняется", "bash.failed": "Ошибка", "bash.stopped": "Остановлено", "row.running": "Выполняется", "row.preparing": "Подготовка вызова инструмента", "row.failed": "Ошибка", "row.stopped": "Остановлено", "row.commandArguments": "Аргументы команды", "row.input": "ВХОД", "row.output": "ВЫХОД", "row.inspect": "Проверить", "row.imageSize": "{width}x{height} px, {bytes} байт", "row.imageSizeDownscaled": "{width}x{height} px (уменьшено с {originalWidth}x{originalHeight} px), {bytes} байт", "tool.title.search": "Поиск", "tool.title.read": "Чтение", "tool.title.bash": "Bash", "tool.title.write": "Запись", "tool.title.edit": "Правка", "tool.title.code": "Код", "tool.title.generic": "Вызов инструмента", "tool.title.inspect": "Запрос окружения Cordis", "tool.title.runCordis": "Запустить плагин Cordis", "tool.title.stopCordis": "Остановить плагин Cordis", "tool.title.removeCordis": "Удалить плагин Cordis", "tool.title.pwsh": "Pwsh", "tool.title.readImage": "Чтение изображения", "tool.title.grep": "Grep", "tool.title.glob": "Glob", "tool.title.webSearch": "Поиск", "tool.title.webFetch": "Загрузка", "tool.autoReviewRejected": "Отклонено автоматической проверкой", "tool.autoReviewNotExecuted": "Инструмент не выполнен. Причина: {reason}", "tool.autoReviewReasonFallback": "Автоматическая проверка не разрешила это действие", "diff.collapseAria": "Свернуть diff", "diff.expandAria": "Развернуть ещё {count} строк diff", "diff.expandRest": "… ещё строк: {count}", "read.window": "Показано {shown} из {total} строк", "read.collapseAria": "Свернуть содержимое", "read.expandAria": "Развернуть ещё {count} строк", "read.expandRest": "… ещё строк: {count}", "search.paths": "Путей: {shown}", "search.paths.truncated": "Показано {shown} из {total} путей", "search.matches": "Совпадений: {shown} · файлов: {files}", "search.matches.truncated": "Показано {shown} из {total} совпадений · файлов: {files}", "search.noResults": "Результатов нет", "search.collapseAria": "Свернуть результаты", "search.expandAria": "Развернуть ещё {count} строк результатов", "search.expandRest": "… ещё строк: {count}", "web.noResults": "Ничего не найдено", "web.sourcesTruncated": "Список источников обрезан", "web.http": "HTTP", "web.contentTruncated": "Содержимое обрезано", "details.running": "Выполняется…", "queue.count": "Сообщений в очереди: {n}", "queue.sending": "Отправка…", "queue.image": "Изображение из очереди", "queue.file": "Файл из очереди {name}", "queue.edit": "Изменить сообщение в очереди", "queue.edit.unsupported": "Содержит нетекстовое содержимое; редактирование пока не поддерживается", "queue.save": "Сохранить сообщение в очереди", "queue.cancelEdit": "Отменить редактирование", "queue.remove": "Удалить сообщение из очереди", "queue.steer": "Направить сообщение из очереди", "queue.steer.unavailable": "Направлять можно только во время работы агента", "error.sessionInUse": "Эта сессия уже используется, возможно другим запущенным экземпляром DSH (например, dsh web или десктопным приложением). Закройте другие экземпляры DSH и попробуйте снова.", "queue.editFailed": "Не удалось изменить: сообщение, возможно, уже отправляется.", "queue.removeFailed": "Не удалось удалить: сообщение, возможно, уже отправляется.", "queue.steerFailed": "Не удалось направить. Попробуйте снова.", "terminal.signal": "сигнал {signal}", "terminal.exitCode": "код выхода {code}", "terminal.noExitCode": "без кода выхода", "terminal.commandLine": "Строка команды {n}", "terminal.running": "Выполняется", "terminal.failed": "Ошибка", "terminal.done": "Готово", "terminal.noOutput": "Вывода нет", "terminal.collapseAria": "Свернуть вывод", "terminal.expandAria": "Развернуть оставшиеся строки вывода: {n}", "terminal.expandRest": "… ещё строк: {n}", "terminal.sendInput": "(отправить ввод)", "terminal.session": "Терминал {sessionId}" }, "open-in-app": { "open.title": "Открыть в {app}", "path.appDefault": "{app} (по умолчанию)", "path.appsError": "Не удалось загрузить приложения", "shortcut.busy": "Открываю рабочую папку", "shortcut.unavailable": "Текущая рабочая папка или локальное приложение недоступны", "open.tooltip": "Открыть локально", "path.open": "Открыть", "path.more": "Другие способы открыть", "path.reveal": "Показать расположение файла", "path.openError": "Не удалось открыть. Попробуйте снова.", "path.revealError": "Не удалось показать расположение файла. Попробуйте снова.", "app.cursor": "Cursor", "app.vscode": "VS Code", "app.vscodeinsiders": "VS Code Insiders", "app.windsurf": "Windsurf", "app.zed": "Zed", "app.sublimetext": "Sublime Text", "app.xcode": "Xcode", "app.androidstudio": "Android Studio", "app.intellij": "IntelliJ IDEA", "app.pycharm": "PyCharm", "app.webstorm": "WebStorm", "app.phpstorm": "PhpStorm", "app.goland": "GoLand", "app.rider": "Rider", "app.rustrover": "RustRover", "app.fork": "Fork", "app.sourcetree": "Sourcetree", "app.github": "GitHub Desktop", "app.tower": "Tower", "app.gitkraken": "GitKraken", "app.smartgit": "SmartGit", "app.sublimemerge": "Sublime Merge", "app.ghostty": "Ghostty", "app.warp": "Warp", "app.iterm": "iTerm2", "app.kitty": "kitty", "app.windowsterminal": "Windows Terminal", "app.gitbash": "Git Bash", "app.gnometerminal": "GNOME Terminal", "app.konsole": "Konsole", "app.finder": "Finder", "app.explorer": "Проводник", "app.filemanager": "Файлы", "app.terminal": "Терминал" }, "schedule.manager": { "trigger.label": "Напоминания", "list.loading": "Загрузка задач…", "list.error": "Не удалось загрузить задачи.", "list.retry": "Повторить", "delete.action": "Удалить", "delete.pending": "Удаление…", "delete.label": "Удалить напоминание: {title}", "list.open": "Открыть детали напоминания: {title}", "trigger.one": "{count} напоминание", "trigger.other": "{count} напоминаний", "list.aria": "Активные напоминания", "list.nextRun": "Следующий запуск", "frequency.once": "Однократно", "frequency.every": "Каждые {value} {unit}", "time.locale": "ru", "time.utcPrefix": "UTC", "frequency.daily": "Каждый день в {time} ({timeZone})", "frequency.dailyLocal": "Каждый день в {time}", "frequency.weekly": "Каждую неделю по {weekdays} в {time} ({timeZone})", "frequency.weeklyLocal": "Каждую неделю по {weekdays} в {time}", "frequency.cron": "Cron {expression} ({timeZone})", "frequency.cronLocal": "Cron {expression}", "frequency.cronRule": "{rule} ({timeZone})", "cron.list.join": ", ", "cron.part.join": " ", "cron.weekday.name": "{weekday}", "cron.weekday.range": "{from}–{to}", "cron.months": " в {months}", "cron.day.every": "Каждый день{months}", "cron.day.weekdays": "{weekdays}{months}", "cron.day.monthDays": "День {days} каждого месяца{months}", "cron.day.both": "День {days} каждого месяца или {weekdays}{months}", "cron.day.bothStarred": "День {days} каждого месяца и {weekdays}{months}", "cron.hours.range": "{from}–{to}", "cron.hours.list": "{hours}", "cron.time.everyMinute": "Каждую минуту", "cron.time.everyMinutes": "Каждые {step} мин", "cron.time.joinedEveryMinute": "каждую минуту", "cron.time.joinedEveryMinutes": "каждые {step} мин", "cron.time.everyHour": "Каждый час", "cron.time.joinedEveryHour": "каждый час", "cron.time.everyNHours": "Каждые {count} ч", "cron.time.joinedEveryNHours": "каждые {count} ч", "cron.time.hourlyAt": "Каждый час на {minutes} минуте", "cron.time.joinedHourlyAt": "каждый час на {minutes} минуте", "cron.time.hoursEveryMinute": "каждую минуту в часы {hours}", "cron.time.hoursEveryMinutes": "каждые {step} мин в часы {hours}", "cron.time.at": "в {times}", "cron.time.hoursAt": "на {minutes} минуте в часы {hours}", "frequency.weekday.join": ", ", "frequency.weekday.1": "Пн", "frequency.weekday.2": "Вт", "frequency.weekday.3": "Ср", "frequency.weekday.4": "Чт", "frequency.weekday.5": "Пт", "frequency.weekday.6": "Сб", "frequency.weekday.7": "Вс", "unit.day.one": "день", "unit.day.other": "дней", "unit.hour.one": "час", "unit.hour.other": "часов", "unit.minute.one": "минута", "unit.minute.other": "минут", "unit.second.one": "секунда", "unit.second.other": "секунд", "relative.now": "Срабатывает сейчас", "relative.future": "через {value} {unit}", "relative.overdue": "просрочено на {value} {unit}", "mark.aria": "Запланированных задач: {count}", "hover.more": "ещё {count}", "panel": "Автоматические задачи", "title": "Автоматические задачи", "new.action": "Создать", "list.label": "Каталог задач", "list.nextPrefix": "Следующий запуск: ", "list.empty": "Задач пока нет. Задачи, созданные в ваших сессиях, появятся здесь.", "list.emptyInactive": "Неактивных автоматических задач нет", "list.noMatches": "Подходящих задач нет", "search.label": "Поиск задач", "search.placeholder": "Поиск автоматических задач", "search.clear": "Очистить поиск", "empty.action": "Новая автоматическая задача", "statusFilter.label": "Статус задачи", "statusFilter.all": "Все", "status.active": "Включена", "status.inactive": "Неактивна", "detail.label": "Детали задачи", "detail.close": "Закрыть детали", "detail.more": "Действия с автоматической задачей", "detail.nextRun": "Следующий запуск", "detail.tabs": "Виды деталей задачи", "detail.rule": "Правила", "detail.records": "Записи", "delivery.empty": "Записей о доставке нет", "delivery.loading": "Загрузка записей о доставке…", "delivery.error": "Не удалось загрузить записи о доставке.", "delivery.notFound": "Эта задача больше недоступна.", "delivery.cursorError": "Записи были обновлены.", "delivery.retry": "Повторить", "delivery.refresh": "Обновить", "delivery.loadMore": "Загрузить ещё", "delivery.expand": "Развернуть", "delivery.collapse": "Свернуть", "delivery.pruned": "Более ранние записи о доставке удалены", "delivery.retention": "Правила хранения", "delivery.retentionBounds": "Каждая задача хранит до {records} записей о доставке за последние {days} дн.", "delivery.retentionExplanation": "При сохранении новой записи более старые записи за пределами этих ограничений удаляются автоматически. Удаление записей не останавливает задачу.", "detail.name": "Название автоматической задачи", "detail.instruction": "Инструкция автоматической задачи", "detail.status": "Статус", "detail.next": "Следующий запуск", "detail.frequency": "Периодичность", "detail.id": "ID задачи", "detail.session": "Связанная сессия", "detail.openSession": "Связанная сессия: открыть исходную сессию", "detail.openSessionTitle": "Связанная сессия {title}: открыть исходную сессию", "detail.sessionLoading": "Загрузка сведений об исходной сессии.", "detail.sessionArchived": "Исходная сессия в архиве.", "detail.sessionUnavailable": "Исходная сессия недоступна.", "detail.missing": "Задача недоступна. Возможно, её удалили.", "delivery.label": "Сохранённая запись о доставке", "timing.date": "Дата", "timing.time": "Время", "timing.hour": "Час", "timing.minute": "Минута", "timing.second": "Секунда", "timing.prevMonth": "Предыдущий месяц", "timing.nextMonth": "Следующий месяц", "timing.zone": "Часовой пояс", "timing.zoneSearch": "Поиск по смещению UTC, IANA ID или городу", "timing.zoneNoResults": "Подходящих часовых поясов нет", "timing.interval": "Повторять каждые", "timing.intervalIncrease": "Увеличить интервал", "timing.intervalDecrease": "Уменьшить интервал", "timing.unit.hour": "часов", "timing.unit.minute": "минут", "timing.unit.second": "секунд", "timing.intervalHint.hour": "Не менее 1 часа. Интервал отсчитывается от создания задачи или последнего изменения правила и не зависит от часовых поясов.", "timing.intervalHint.minute": "Не менее 1 минуты. Интервал отсчитывается от создания задачи или последнего изменения правила и не зависит от часовых поясов.", "timing.intervalHint.second": "Не менее 60 секунд. Интервал отсчитывается от создания задачи или последнего изменения правила и не зависит от часовых поясов.", "timing.zoneNoStored": "Разовая задача хранит только момент запуска, без часового пояса. Дата и время интерпретируются в выбранном часовом поясе.", "timing.inactive": "Неактивные задачи доступны только для чтения. Расписание нельзя изменить.", "timing.conflict": "Задача изменилась во время редактирования. Ваш черновик сохранён. Отмените и откройте снова после обновления, чтобы изменить актуальное правило.", "timing.notFound": "Эта задача больше недоступна. Черновик сохранён; отмените, чтобы закрыть редактор.", "timing.subagentSession": "Эта сессия принадлежит субагенту, который напоминания не получает.", "timing.invalid": "Введите корректную дату и время или проверьте поля расписания.", "timing.invalidZone": "Введите корректный часовой пояс IANA, например Asia/Shanghai.", "timing.notFuture": "Выберите дату и время в будущем.", "timing.invalidInterval": "Введите интервал не менее 1 минуты.", "timing.invalidInterval.hour": "Введите интервал не менее 1 часа.", "timing.invalidInterval.minute": "Введите интервал не менее 1 минуты.", "timing.invalidInterval.second": "Введите интервал не менее 60 секунд.", "timing.error": "Не удалось подтвердить обновление расписания. Черновик сохранён. Проверьте задачу перед повторной попыткой.", "rule.title": "Время запуска", "rule.repeat": "Повтор", "rule.weekday": "День недели", "rule.weekdayOption": "День недели: {weekday}", "rule.unsaved": "Несохранённые изменения", "rule.save": "Сохранить изменения", "rule.saving": "Сохранение…", "rule.cancel": "Отмена", "rule.invalidTitle": "Введите название задачи не длиннее 120 символов.", "rule.invalidPrompt": "Введите инструкцию для задачи.", "rule.once": "Однократно", "rule.everyMinutes": "Каждые N минут", "rule.everyHours": "Каждые N часов", "rule.everySeconds": "Каждые N секунд", "rule.daily": "Каждый день", "rule.weekdays": "С понедельника по пятницу", "rule.weekly": "Еженедельно", "rule.cron": "Своё расписание", "rule.cronLabel": "Выражение cron", "rule.cronInvalid": "Введите cron-выражение из пяти полей, например 0 9 * * 1-5.", "cronForm.frequency": "Периодичность", "cronForm.monthly": "Ежемесячно", "cronForm.weekly": "Еженедельно", "cronForm.daily": "Каждый день", "cronForm.dates": "По числам", "cronForm.dateOption": "День {day}", "cronForm.atMinute": "На минуте", "cronForm.minuteIncrease": "Увеличить минуту", "cronForm.minuteDecrease": "Уменьшить минуту", "rule.zone.system": " (системный)", "rule.error.conflict": "Задача изменилась до сохранения обновления. В строке показано сохранённое правило; попробуйте снова.", "rule.error.notFound": "Эта задача больше недоступна.", "rule.error.unknown": "Не удалось подтвердить обновление правила. В строке показано сохранённое правило.", "delete.title": "Удалить эту задачу?", "delete.description": "Задача перестанет срабатывать, а вместе с ней будут удалены сохранённые записи о доставке. Исходная сессия и её сообщения останутся; сообщения в очереди не отзываются.", "delete.confirm": "Подтвердить удаление", "delete.cancel": "Отмена", "delete.close": "Закрыть подтверждение удаления", "list.more": "Действия с задачей", "clear.action": "Очистить все неактивные задачи", "clear.title": "Очистить неактивные задачи ({count})?", "clear.description": "Эти задачи и их записи о доставке будут удалены безвозвратно. Включённые задачи, исходные сессии и сообщения в очереди не затрагиваются.", "clear.confirm": "Очистить задачи", "clear.pending": "Очистка…", "clear.close": "Закрыть подтверждение очистки", "toast.deleted": "Задача удалена.", "toast.deleteFailed": "Не удалось удалить задачу.", "toast.cleared.one": "Очищена {count} неактивная задача.", "toast.cleared.other": "Очищено неактивных задач: {count}.", "toast.clearedNone": "Нет неактивных задач для очистки.", "toast.clearFailed": "Не удалось очистить задачи.", "card.open": "Открыть", "card.openLabel": "Открыть детали задачи: {title}", "card.deleted": "Удалено", "tool.invoked": "Вызван {name}" }, "schedule.catalog": { "trigger.label": "Напоминания", "list.loading": "Загрузка напоминаний…", "list.error": "Не удалось загрузить напоминания.", "list.retry": "Повторить", "delete.action": "Удалить", "delete.pending": "Удаление…", "delete.label": "Удалить напоминание: {title}", "list.open": "Открыть детали напоминания: {title}", "trigger.one": "{count} напоминание", "trigger.other": "{count} напоминаний", "list.aria": "Активные напоминания", "list.nextRun": "Следующий запуск", "frequency.once": "Однократно", "frequency.every": "Каждые {value} {unit}", "time.locale": "ru", "time.utcPrefix": "UTC", "frequency.daily": "Каждый день в {time} ({timeZone})", "frequency.dailyLocal": "Каждый день в {time}", "frequency.weekly": "Каждую неделю по {weekdays} в {time} ({timeZone})", "frequency.weeklyLocal": "Каждую неделю по {weekdays} в {time}", "frequency.cron": "Cron {expression} ({timeZone})", "frequency.cronLocal": "Cron {expression}", "frequency.cronRule": "{rule} ({timeZone})", "cron.list.join": ", ", "cron.part.join": " ", "cron.weekday.name": "{weekday}", "cron.weekday.range": "{from}–{to}", "cron.months": " в {months}", "cron.day.every": "Каждый день{months}", "cron.day.weekdays": "{weekdays}{months}", "cron.day.monthDays": "День {days} каждого месяца{months}", "cron.day.both": "День {days} каждого месяца или {weekdays}{months}", "cron.day.bothStarred": "День {days} каждого месяца и {weekdays}{months}", "cron.hours.range": "{from}–{to}", "cron.hours.list": "{hours}", "cron.time.everyMinute": "Каждую минуту", "cron.time.everyMinutes": "Каждые {step} мин", "cron.time.joinedEveryMinute": "каждую минуту", "cron.time.joinedEveryMinutes": "каждые {step} мин", "cron.time.everyHour": "Каждый час", "cron.time.joinedEveryHour": "каждый час", "cron.time.everyNHours": "Каждые {count} ч", "cron.time.joinedEveryNHours": "каждые {count} ч", "cron.time.hourlyAt": "Каждый час на {minutes} минуте", "cron.time.joinedHourlyAt": "каждый час на {minutes} минуте", "cron.time.hoursEveryMinute": "каждую минуту в часы {hours}", "cron.time.hoursEveryMinutes": "каждые {step} мин в часы {hours}", "cron.time.at": "в {times}", "cron.time.hoursAt": "на {minutes} минуте в часы {hours}", "frequency.weekday.join": ", ", "frequency.weekday.1": "Пн", "frequency.weekday.2": "Вт", "frequency.weekday.3": "Ср", "frequency.weekday.4": "Чт", "frequency.weekday.5": "Пт", "frequency.weekday.6": "Сб", "frequency.weekday.7": "Вс", "unit.day.one": "день", "unit.day.other": "дней", "unit.hour.one": "час", "unit.hour.other": "часов", "unit.minute.one": "минута", "unit.minute.other": "минут", "unit.second.one": "секунда", "unit.second.other": "секунд", "relative.now": "Срабатывает сейчас", "relative.future": "через {value} {unit}", "relative.overdue": "просрочено на {value} {unit}", "mark.aria": "Запланированных задач: {count}", "hover.more": "ещё {count}", "panel": "Автоматические задачи", "title": "Автоматические задачи", "new.action": "Создать", "list.label": "Каталог задач", "list.nextPrefix": "Следующий запуск: ", "list.empty": "Задач пока нет. Задачи, созданные в ваших сессиях, появятся здесь.", "list.emptyInactive": "Неактивных автоматических задач нет", "list.noMatches": "Подходящих задач нет", "search.label": "Поиск задач", "search.placeholder": "Поиск автоматических задач", "search.clear": "Очистить поиск", "empty.action": "Новая автоматическая задача", "statusFilter.label": "Статус задачи", "statusFilter.all": "Все", "status.active": "Включена", "status.inactive": "Неактивна", "detail.label": "Детали задачи", "detail.close": "Закрыть детали", "detail.more": "Действия с автоматической задачей", "detail.nextRun": "Следующий запуск", "detail.tabs": "Виды деталей задачи", "detail.rule": "Правила", "detail.records": "Записи", "delivery.empty": "Записей о доставке нет", "delivery.loading": "Загрузка записей о доставке…", "delivery.error": "Не удалось загрузить записи о доставке.", "delivery.notFound": "Эта задача больше недоступна.", "delivery.cursorError": "Записи были обновлены.", "delivery.retry": "Повторить", "delivery.refresh": "Обновить", "delivery.loadMore": "Загрузить ещё", "delivery.expand": "Развернуть", "delivery.collapse": "Свернуть", "delivery.pruned": "Более ранние записи о доставке удалены", "delivery.retention": "Правила хранения", "delivery.retentionBounds": "Каждая задача хранит до {records} записей о доставке за последние {days} дн.", "delivery.retentionExplanation": "При сохранении новой записи более старые записи за пределами этих ограничений удаляются автоматически. Удаление записей не останавливает задачу.", "detail.name": "Название автоматической задачи", "detail.instruction": "Инструкция автоматической задачи", "detail.status": "Статус", "detail.next": "Следующий запуск", "detail.frequency": "Периодичность", "detail.id": "ID задачи", "detail.session": "Связанная сессия", "detail.openSession": "Связанная сессия: открыть исходную сессию", "detail.openSessionTitle": "Связанная сессия {title}: открыть исходную сессию", "detail.sessionLoading": "Загрузка сведений об исходной сессии.", "detail.sessionArchived": "Исходная сессия в архиве.", "detail.sessionUnavailable": "Исходная сессия недоступна.", "detail.missing": "Задача недоступна. Возможно, её удалили.", "delivery.label": "Сохранённая запись о доставке", "timing.date": "Дата", "timing.time": "Время", "timing.hour": "Час", "timing.minute": "Минута", "timing.second": "Секунда", "timing.prevMonth": "Предыдущий месяц", "timing.nextMonth": "Следующий месяц", "timing.zone": "Часовой пояс", "timing.zoneSearch": "Поиск по смещению UTC, IANA ID или городу", "timing.zoneNoResults": "Подходящих часовых поясов нет", "timing.interval": "Повторять каждые", "timing.intervalIncrease": "Увеличить интервал", "timing.intervalDecrease": "Уменьшить интервал", "timing.unit.hour": "часов", "timing.unit.minute": "минут", "timing.unit.second": "секунд", "timing.intervalHint.hour": "Не менее 1 часа. Интервал отсчитывается от создания задачи или последнего изменения правила и не зависит от часовых поясов.", "timing.intervalHint.minute": "Не менее 1 минуты. Интервал отсчитывается от создания задачи или последнего изменения правила и не зависит от часовых поясов.", "timing.intervalHint.second": "Не менее 60 секунд. Интервал отсчитывается от создания задачи или последнего изменения правила и не зависит от часовых поясов.", "timing.zoneNoStored": "Разовая задача хранит только момент запуска, без часового пояса. Дата и время интерпретируются в выбранном часовом поясе.", "timing.inactive": "Неактивные задачи доступны только для чтения. Расписание нельзя изменить.", "timing.conflict": "Задача изменилась во время редактирования. Ваш черновик сохранён. Отмените и откройте снова после обновления, чтобы изменить актуальное правило.", "timing.notFound": "Эта задача больше недоступна. Черновик сохранён; отмените, чтобы закрыть редактор.", "timing.subagentSession": "Эта сессия принадлежит субагенту, который напоминания не получает.", "timing.invalid": "Введите корректную дату и время или проверьте поля расписания.", "timing.invalidZone": "Введите корректный часовой пояс IANA, например Asia/Shanghai.", "timing.notFuture": "Выберите дату и время в будущем.", "timing.invalidInterval": "Введите интервал не менее 1 минуты.", "timing.invalidInterval.hour": "Введите интервал не менее 1 часа.", "timing.invalidInterval.minute": "Введите интервал не менее 1 минуты.", "timing.invalidInterval.second": "Введите интервал не менее 60 секунд.", "timing.error": "Не удалось подтвердить обновление расписания. Черновик сохранён. Проверьте задачу перед повторной попыткой.", "rule.title": "Время запуска", "rule.repeat": "Повтор", "rule.weekday": "День недели", "rule.weekdayOption": "День недели: {weekday}", "rule.unsaved": "Несохранённые изменения", "rule.save": "Сохранить изменения", "rule.saving": "Сохранение…", "rule.cancel": "Отмена", "rule.invalidTitle": "Введите название задачи не длиннее 120 символов.", "rule.invalidPrompt": "Введите инструкцию для задачи.", "rule.once": "Однократно", "rule.everyMinutes": "Каждые N минут", "rule.everyHours": "Каждые N часов", "rule.everySeconds": "Каждые N секунд", "rule.daily": "Каждый день", "rule.weekdays": "С понедельника по пятницу", "rule.weekly": "Еженедельно", "rule.cron": "Своё расписание", "rule.cronLabel": "Выражение cron", "rule.cronInvalid": "Введите cron-выражение из пяти полей, например 0 9 * * 1-5.", "cronForm.frequency": "Периодичность", "cronForm.monthly": "Ежемесячно", "cronForm.weekly": "Еженедельно", "cronForm.daily": "Каждый день", "cronForm.dates": "По числам", "cronForm.dateOption": "День {day}", "cronForm.atMinute": "На минуте", "cronForm.minuteIncrease": "Увеличить минуту", "cronForm.minuteDecrease": "Уменьшить минуту", "rule.zone.system": " (системный)", "rule.error.conflict": "Задача изменилась до сохранения обновления. В строке показано сохранённое правило; попробуйте снова.", "rule.error.notFound": "Эта задача больше недоступна.", "rule.error.unknown": "Не удалось подтвердить обновление правила. В строке показано сохранённое правило.", "delete.title": "Удалить эту задачу?", "delete.description": "Задача перестанет срабатывать, а вместе с ней будут удалены сохранённые записи о доставке. Исходная сессия и её сообщения останутся; сообщения в очереди не отзываются.", "delete.confirm": "Подтвердить удаление", "delete.cancel": "Отмена", "delete.close": "Закрыть подтверждение удаления", "list.more": "Действия с задачей", "clear.action": "Очистить все неактивные задачи", "clear.title": "Очистить неактивные задачи ({count})?", "clear.description": "Эти задачи и их записи о доставке будут удалены безвозвратно. Включённые задачи, исходные сессии и сообщения в очереди не затрагиваются.", "clear.confirm": "Очистить задачи", "clear.pending": "Очистка…", "clear.close": "Закрыть подтверждение очистки", "toast.deleted": "Задача удалена.", "toast.deleteFailed": "Не удалось удалить задачу.", "toast.cleared.one": "Очищена {count} неактивная задача.", "toast.cleared.other": "Очищено неактивных задач: {count}.", "toast.clearedNone": "Нет неактивных задач для очистки.", "toast.clearFailed": "Не удалось очистить задачи.", "card.open": "Открыть", "card.openLabel": "Открыть детали задачи: {title}", "card.deleted": "Удалено", "tool.invoked": "Вызван {name}" }, "settings.account": { "modelSignInRequired": "Модель недоступна. Войдите в аккаунт и попробуйте снова.", "sessionExpired": "Вы вышли из аккаунта, войдите снова.", "onboardingArtworkLocale": "ru", "onboardingWelcome": "Добро пожаловать в", "onboardingBrand": "DeepSeek Harness", "onboardingIntroduction": "DeepSeek Harness работает в локальной папке и с помощью инструментов читает и записывает файлы на вашем компьютере. Он помогает искать и систематизировать информацию, создавать документы и таблицы, писать код, разбираться с проблемами и многое другое.", "onboardingStart": "Начать", "onboardingCredit": "Пополнить баланс", "onboardingCreditDescription": "DeepSeek Harness списывает кредиты за токены, которые используют модели и инструменты. Пополните баланс заранее, чтобы задачи не прерывались. Баланс расходуется только пока агент выполняет задачу.", "onboardingTopUp": "Пополнить баланс", "onboardingLater": "Далее", "onboardingFundedTopUp": "Пополнить баланс", "onboardingPurposePrefix": "С чем вам помочь", "onboardingPurposeSuffix": "?", "onboardingPurposeDescription": "Подстроим интерфейс и инструменты под ваш способ работы.", "onboardingOffice": "Офисная и творческая работа", "onboardingOfficeDescription": "Редактирование документов, обработка данных, создание презентаций и не только", "onboardingDevelopment": "Программирование и разработка", "onboardingDevelopmentDescription": "Редактирование кода, отладка, запуск команд, работа с файлами проекта и не только", "onboardingContinue": "Продолжить", "onboardingProcess": "Насколько подробно показывать работу?", "onboardingProcessDescription": "Это меняет только отображение хода работы, но не возможности DeepSeek Harness.", "onboardingCompact": "Только результаты", "onboardingCompactDescription": "Только результаты в чистом и простом интерфейсе", "onboardingStandard": "Ключевые детали", "onboardingStandardDescription": "Результаты и только самые важные шаги и действия", "onboardingDetailed": "Полные детали", "onboardingDetailedDescription": "Полный ход работы для удобной отладки и поиска проблем", "onboardingEnter": "Открыть приложение", "onboardingBack": "Назад", "onboardingSkip": "Пропустить", "onboardingSkipTitle": "Пропустить настройку?", "onboardingSkipDescription": "Отображение хода работы, производительности и использования, а также Coding Tools можно изменить в любой момент в разделе Настройки → Общие.", "onboardingKeepSetting": "Продолжить настройку", "onboardingNoCreditTitle": "Пропустить пополнение баланса?", "onboardingNoCreditDescription": "Без кредитов DeepSeek Harness не сможет запускать новые задачи. Пополнить баланс можно позже в разделе Настройки → Аккаунт.", "onboardingUnderstood": "Понятно", "onboardingGoTopUp": "Пополнить баланс", "onboardingSaveFailed": "Не удалось сохранить настройки. Попробуйте снова.", "onboardingRetry": "Повторить", "onboardingLoading": "Загрузка настроек…", "close": "Закрыть", "addApiKey": "Добавить API-ключ", "retry": "Войти снова", "loginTitle": "Начать", "loginDescription": "Войдите в аккаунт DeepSeek или добавьте API-ключ, чтобы начать. Ваши проекты и файлы хранятся локально.", "browserTitle": "Ожидание входа", "browserPrompt": "Страница не открылась автоматически? ", "copyLink": "Скопировать ссылку для входа", "copiedLink": "Ссылка скопирована", "copyFailed": "Не удалось скопировать", "browserDescription": ", затем откройте её в браузере, чтобы завершить вход.", "timeoutTitle": "Время входа истекло", "timeoutDescription": "Войдите снова, чтобы продолжить.", "failureTitle": "Не удалось войти", "platformFailed": "Не удалось выполнить действие. Попробуйте снова.", "platformRetry": "Повторить", "loading": "Загрузка…", "backToHarness": "Назад в DeepSeek Harness", "settings": "Настройки", "contactUs": "Обратная связь", "menu": "Меню аккаунта", "nav": "Аккаунт", "signedIn": "Вход выполнен в DeepSeek", "signedOut": "Вход не выполнен", "signIn": "Войти", "signOut": "Выйти", "signOutUnknownDescription": "Не удалось проверить запущенные задачи. Выход может прервать задачи, использующие этот аккаунт. Всё равно выйти?", "signOutDescription": "Выход не удаляет данные. Войти в этот аккаунт можно снова.", "signOutRunningDescription": "Сейчас выполняются задачи. Выход прервёт их. Всё равно выйти?", "cancel": "Отмена", "open": "Открыть браузер", "initializing": "Начинаю вход…", "waiting": "Продолжите в браузере", "completing": "Завершаю вход…", "expired": "Срок входа истёк. Попробуйте снова.", "failed": "Не удалось выполнить действие. Попробуйте снова.", "noResponse": "Что-то пошло не так. Проверьте подключение к сети и попробуйте снова.", "settingsSignedOutTitle": "Вы не вошли в DeepSeek Harness", "settingsSignedOutDescription": "Войдите в DeepSeek Harness, чтобы получить персональный API-ключ", "signInDescription": "Войдите в аккаунт DeepSeek, чтобы начать.", "profileUnavailable": "Данные аккаунта пока недоступны.", "balance": "Баланс с пополнением", "bonusBalance": "Бонусный баланс", "balanceUnavailable": "Посмотреть на платформе", "balanceSignedOut": "Войдите, чтобы посмотреть", "accountInfo": "Подробнее об аккаунте", "more": "Ещё", "usage": "Посмотреть использование", "topUp": "Пополнить", "quotaTitle": "Нет доступного баланса", "quotaDescription": "DeepSeek Harness не может запустить новую задачу с этим аккаунтом без баланса. Пополнить сейчас? Пополнить можно и позже в разделе Настройки → Аккаунт.", "quotaTopUp": "Пополнить", "bonusNoticeTitle": "Бонус зачислен" }, "sidebarImage": { "zoomControls": "Управление масштабом", "zoomMenu": "Выбрать масштаб", "zoomOut": "Уменьшить", "zoomIn": "Увеличить", "zoomFitWidth": "По ширине", "zoomValue": "{percent}%", "title": "Изображение", "preview": "Предпросмотр изображения: {name}", "loading": "Отрисовка документа...", "failed": "Не удалось отобразить изображение.", "unsupported": "Для предпросмотра изображения нужно полное содержимое файла." }, "sidebarPdf": { "zoomControls": "Управление масштабом", "zoomMenu": "Выбрать масштаб", "zoomOut": "Уменьшить", "zoomIn": "Увеличить", "zoomFitWidth": "По ширине", "zoomValue": "{percent}%", "title": "PDF", "pageImage": "Страница PDF {page}", "loading": "Отрисовка документа...", "rendering": "Отрисовка страницы…", "failed": "Не удалось отобразить PDF: {message}", "password": "PDF защищён паролем; предпросмотр таких файлов не поддерживается.", "workerFailed": "Не удалось продолжить отрисовку PDF. Попробуйте снова.", "unsupported": "Для предпросмотра PDF нужно полное содержимое файла.", "retry": "Повторить" }, "settings.agentPreset": { "modeExplanation": "Подробности режима", "howToUse": "Как использовать", "guideSections": "Разделы руководства", "guideExampleTask": "Пример задачи", "guideCopy": "Копировать", "guideCopied": "Скопировано", "guideFootnotes": "Сноски", "guideStandardIntro": "Выбирайте стандартный режим при запуске новой задачи. Опишите, чего вы хотите добиться, укажите соответствующие файлы и объясните, как проверить результат.", "guideStandardExplanation": "### Как это работает\n\n\n\nАгент напрямую вызывает инструменты для чтения и редактирования файлов, поиска и выполнения команд терминала. Он включает в себя навыки, планирование, цели, субагенты, рабочие процессы, управление плагинами и сжатие контекста.\n\n\n\n### Когда это выбирать\n\n\n\nНачните здесь ежедневное программирование, работу с файлами и исследования. Стандартный режим также позволяет писать сценарии и обрабатывать файлы в пакетном режиме. PTC изменяет организацию вызовов инструментов; для пакетных задач это не требуется.", "guideStandardUsage": "### Исправить ошибку\n\n\n\n> Узнайте, почему при двойной отправке формы поиска результаты исчезают. Исправьте это и запустите соответствующие тесты. Объясните причину и что изменилось.\n\n\n\nОжидаемый результат: изменение кода, соответствующие результаты испытаний и объяснение причины.\n\n\n\n### Организация заметок по проекту\n\n\n\n> Прочтите примечания Markdown в этом проекте. Кратко изложите согласованные решения и открытые вопросы со ссылками на исходные файлы.\n\n\n\nОжидаемый результат: резюме со ссылками, которые вы можете сверить с исходными заметками.", "guidePtcIntro": "Выберите режим PTC при запуске новой задачи. Укажите входные файлы, правила обработки и выходной формат. Агент пишет код.", "guidePtcExplanation": "### Как называются инструменты\n\n\n\nPTC означает программный вызов инструмента. В этой встроенной настройке агент использует run_code для написания программы TypeScript, которая вызывает инструменты через сгенерированный SDK. Программа может использовать циклы, условия, обработку ошибок и параллельные вызовы, где это необходимо.\n\n\n\n### Что достигает модели\n\n\n\nРезультаты инструмента сначала поступают в программу, которая может их фильтровать и комбинировать. Модель получает то, что программа печатает или возвращает; Результаты изображения прилагаются отдельно. Вызовы вложенных инструментов по-прежнему записываются, и для них действуют разрешения инструмента.\n\n\n\n### По сравнению со стандартным режимом\n\n\n\nОба режима могут выполнять кодирование и пакетные задачи. Стандартный режим напрямую предоставляет доступ к отдельным инструментам; PTC организует вызовы инструментов в коде. Текущая предустановка PTC оставляет инструменты управления рабочим процессом и плагинами отключенными. Скорость и использование токенов зависят от задачи и того, как программа обрабатывает ее результаты.", "guidePtcUsage": "### Проверка набора файлов конфигурации\n\n\n\n> Проверьте все файлы JSON в configs/. Перечислите отсутствующие обязательные поля и недопустимые значения в файле Schema.json. Сохраните CSV-файл с одной строкой на каждую проблему. Включите в отчет нечитаемые файлы и продолжайте проверять остальные. Оставьте исходные файлы без изменений.\n\n\n\nОжидаемый результат: краткое описание проблемы и отчет в формате CSV. Программа может повторять одни и те же проверки, обрабатывать отдельные сбои и собирать результаты.\n\n\n\n### Обобщение журналов ошибок\n\n\n\n> Проанализируйте файлы журналов в logs/. Группируйте ошибки по сервису и типу ошибки. Покажите десять наиболее часто встречающихся групп и по одному примеру из каждой. Сохраните полные данные в формате CSV.\n\n\n\nОжидаемый результат: основные группы ошибок и полная таблица подсчета. Промежуточные данные могут быть агрегированы в программе до того, как сводка достигнет модели.", "guideMinimalIntro": "Выберите минимальный режим для новой задачи. Для сравнения сохраняйте постоянство модели, разрешений, входных данных и состояния начальной рабочей области во всех запусках.", "guideMinimalExplanation": "### Что включено\n\n\n\nОдин постоянный инструмент оболочки read_image и фиксированное системное приглашение. Для чтения изображений требуется модель с поддержкой изображений. Старая история автоматически сжимается под давлением контекста; используйте /compact, пока агент простаивает, чтобы сжать его вручную. Встроенная предустановка не загружает навыки, планирование или стандартный контекст времени выполнения.\n\n\n\n### Когда это выбирать\n\n\n\nИспользуйте его как основу для экспериментов и сравнений. Он по-прежнему может читать файлы и выполнять сценарии с помощью команд оболочки, но предлагает меньше встроенных способов управления длительными задачами. Меньшее количество инструментов не обязательно облегчает работу новичку.", "guideMinimalUsage": "### Сравните производительность с исправлением небольшой ошибки\n\n\n\n> Запустите тесты для этого проекта, найдите причину сбоя и внесите минимальные исправления. Запустите соответствующие тесты еще раз и сообщите о результате.\n\n\n\nЗапустите одну и ту же задачу отдельно в стандартном и минимальном режимах из одного и того же начального состояния. Сравните выполнение задач, вызовы инструментов и результирующие изменения. Минимальный режим выполняет работу посредством команд терминала.", "guideCordisIntro": "Выберите режим «Создатель» для новой задачи. Опишите желаемую возможность, где она должна появиться и как вы ее проверите.", "guideCordisExplanation": "### Что вы можете создать\n\n\n\nРежим Creator включает в себя стандартные инструменты задач, а также проверку во время выполнения и рекомендации по созданию подключаемых модулей Cordis и предустановок агента. Он может создать плагин, добавляющий возможности или пользовательский интерфейс, или предустановку, объединяющую инструменты и подсказки для конкретной работы.\n\n\n\n### Плагины и режимы\n\n\n\nПлагин добавляет к DSH возможности, такие как инструмент, подключение к службе или запись пользовательского интерфейса. Режим — это предустановка агента, которая выбирает инструменты и определяет, как агент работает над задачей. Плагин может быть включен в пользовательский пресет.\n\n\n\n### Как результат вступает в силу\n\n\n\nПопросите агента установить и проверить результат, а не просто генерировать исходный код. Плагин может загрузиться немедленно или потребовать перезагрузки, в зависимости от того, что он меняет. Вновь созданный пресет выбирается при запуске новой задачи.", "guideCordisUsage": "### Добавьте пользовательский интерфейс\n\n\n\n> Создайте плагин DSH, который добавляет запись примечаний к проекту на боковую панель. Позвольте мне просмотреть файлы Markdown в этом рабочем пространстве и просмотреть выбранную заметку. Установите его и убедитесь, что страница открывается.\n\n\n\nОжидаемый результат: установленный плагин с работающей страницей входа и предварительного просмотра, а также все оставшиеся шаги активации.\n\n\n\n### Добавить инструмент\n\n\n\n> Создайте плагин с инструментом, который читает отчет об испытаниях этого проекта и суммирует неудачные тесты. Зарегистрируйте его и проверьте с помощью образца отчета.\n\n\n\nОжидаемый результат: плагин с вызываемым инструментом и проверенным примером вызова.\n\n\n\n### Создать свой режим\n\n\n\n> Создайте режим «Проверка кода» на основе стандартного режима. Попросите его определить приоритетность потенциальных ошибок и проверить пробелы, указать пути и строки к файлам и спросить, прежде чем изменять файлы. Сохраните его как выбираемую предустановку.\n\n\n\nОжидаемый результат: индивидуальная настройка для новых задач. Эти инструкции по проверке помогут агенту; настройки разрешений определяют, какие действия он может выполнять.", "builtInGroup": "Встроенный", "customGroup": "Пользовательский", "sectionIntro": "Выбирайте инструменты агента и то, как они работают. Используйте стандартный режим для повседневных задач или режим Creator, чтобы расширить возможности DSH.", "seatHint": "Выберите предустановку агента для вашей новой задачи", "headerHint": "Предварительная настройка агента, выбранная при запуске этой задачи", "nav": "Настройки агента", "setDefault": "Установить в качестве новой задачи по умолчанию", "view": "Посмотреть конфигурацию", "presetStandardName": "Стандартный режим", "presetStandardDescription": "Работайте с кодом, файлами и информацией. Подходит для большинства задач, с поиском, редактированием, командами терминала и другими инструментами, доступными по мере необходимости.", "presetPtcName": "Режим PTC", "presetPtcDescription": "Включает все возможности стандартного режима. Лучше подходит для задач, которые вызывают инструменты в пакетном режиме, а затем фильтруют, организуют, дедуплицируют, подсчитывают или суммируют результаты.", "presetMinimalName": "Минимальный режим", "presetMinimalDescription": "Агент использует терминал и чтение изображений со сжатием контекста. Полезно для тестирования и сравнения его базовой производительности.", "presetCordisName": "Режим автора", "presetCordisDescription": "Настройте DSH через разговор. Позвольте агенту писать плагины, которые добавляют функции или пользовательский интерфейс, или комбинируйте инструменты и подсказки для создания собственного режима.", "inUse": "Новая задача по умолчанию", "noDescription": "Нет описания.", "brokenBadge": "Не удалось загрузить", "switchRefused": "Не удалось переключиться на {name}: {reason}", "standardUnavailable": "Стандартный режим недоступен. Восстановите его или выберите другой доступный режим.", "close": "Закрыть", "creatorDraft": "Позвольте агенту помочь мне создать пресет", "createPlugin": "Позвольте агенту создать плагин", "createPluginDescription": "Войдите в режим Creator и создайте свой собственный плагин DSH.", "createPluginChecking": "Проверка доступности режима Creator", "createPluginUnavailable": "Временно недоступен. Откройте это меню еще раз, чтобы повторить попытку.", "createPluginMissing": "Режим Creator не включен в эту конфигурацию." }, "common": { "ok": "ОК", "cancel": "Отмена", "close": "Закрыть", "copy": "Копировать", "copied": "Скопировано", "codeBlock.title": "Блок кода", "codeBlock.wrap": "Переносить строки", "codeBlock.unwrap": "Не переносить строки", "copy.failed": "Не удалось скопировать", "copy.value": "Копировать значение", "copy.json": "Копировать JSON", "copy.path": "Копировать путь к свойству", "copy.prettyJson": "Копировать форматированный JSON", "copy.compactJson": "Копировать компактный JSON", "copy.optionsHint": "{action}; правый клик — параметры копирования", "retry": "Повторить", "loading": "Загрузка…", "load.failed": "Не удалось загрузить", "submit": "Отправить", "submitting": "Отправка…", "next": "Далее", "previous": "Назад", "skip": "Пропустить", "delete": "Удалить", "edit": "Изменить", "save": "Сохранить", "search": "Поиск", "more": "Ещё", "collapse": "Свернуть", "expand": "Развернуть", "back": "Назад", "brand.localBuild": "Локальная сборка DSH", "workspace.defaultName": "Рабочая область по умолчанию", "unknown": "Неизвестно", "none": "Нет", "truncated": "Обрезано", "json.label": "JSON", "markdown.footnotes": "Сноски", "markdown.truncatedCharacters": "… обрезано на {total} символах", "number.thousand": "{value} тыс.", "number.million": "{value} млн" }, "settings.locale": { "language.title": "Язык" } }