diff --git a/README_JA.md b/README_JA.md
index 47350ce40..3278a2432 100644
--- a/README_JA.md
+++ b/README_JA.md
@@ -1,7 +1,5 @@
[](https://discord.gg/VEhNQXxYMB)
-[English](./README.md) | [简体中文](./README_ZH.md) | [繁體中文](./README_ZH_hk.md) | 日本語
-
# OpenWork
> OpenWorkは、Claude Cowork/Codex(デスクトップアプリ)のオープンソース代替です。
diff --git a/README_RU.md b/README_RU.md
new file mode 100644
index 000000000..a4b780b86
--- /dev/null
+++ b/README_RU.md
@@ -0,0 +1,230 @@
+> OpenWork — это открытая альтернатива Claude Cowork/Codex (десктопное приложение).
+
+
+## Основная философия
+
+- Локальный-first, cloud-ready: OpenWork запускается на вашей машине в один клик. Отправляйте сообщения мгновенно.
+- Компонуемый: десктопное приложение, коннектор WhatsApp/Slack/Telegram или сервер. Используйте то, что подходит, без привязки.
+- Извлекаемый: OpenWork работает на базе OpenCode, поэтому всё, что умеет OpenCode, работает и в OpenWork, даже без UI.
+- Делиться значит заботиться: начните в одиночку на localhost, затем явно включите удалённый общий доступ, когда понадобится.
+
+
+
+
+
+OpenWork разработан с идеей, что вы можете легко паковать ваши агентские рабочие процессы как воспроизводимый, продуктизированный процесс.
+
+## Альтернативные UI
+- **OpenWork Orchestrator (CLI хост)**: запускайте OpenCode + сервер OpenWork без десктопного UI.
+ - установка: `npm install -g openwork-orchestrator`
+ - запуск: `openwork start --workspace /path/to/workspace --approval auto`
+ - документация: [apps/orchestrator/README.md](./apps/orchestrator/README.md)
+
+## Быстрый старт
+
+Скачайте десктопное приложение с [openworklabs.com/download](https://openworklabs.com/download), возьмите последний [релиз на GitHub](https://github.com/different-ai/openwork/releases) или установите из исходников ниже.
+
+- Загрузки для macOS и Linux доступны напрямую.
+- Доступ для Windows в настоящее время осуществляется через платный тариф поддержки на [openworklabs.com/pricing#windows-support](https://openworklabs.com/pricing#windows-support).
+- Воркеры размещённые на OpenWork Cloud запускаются из веб-приложения после оформления заказа, затем подключаются из десктопного приложения через `Добавить рабочее пространство` -> `Подключить удалённое`.
+
+## Зачем?
+
+Текущие CLI и GUI для OpenCode ориентированы на разработчиков. Это означает фокус на диффах файлов, именах инструментов и сложно расширяемых возможностях без reliance на CLI.
+
+OpenWork разработан, чтобы быть:
+
+- **Расширяемым**: навыки и плагины OpenCode — это устанавливаемые модули.
+- **Аудируемым**: показывает, что произошло, когда и почему.
+- **Пермиссионированным**: доступ к привилегированным процессам.
+- **Локальный/Удалённый**: OpenWork работает локально, а также может подключаться к удалённым серверам.
+
+## Что включено
+
+- **Режим хоста**: запускает OpenCode локально на вашем компьютере
+- **Режим клиента**: подключение к существующему серверу OpenCode по URL.
+- **Сессии**: создание/выбор сессий и отправка запросов.
+- **Живой стриминг**: SSE `/event` подписка для обновлений в реальном времени.
+- **План выполнения**: отображение задач OpenCode в виде таймлайна.
+- **Разрешения**: отображение запросов разрешений и ответы (разрешить один раз / всегда / отклонить).
+- **Шаблоны**: сохранение и повторный запуск распространённых рабочих процессов (хранятся локально).
+- **Экспорт отладки**: копирование или экспорт отчёта об отладке среды выполнения и потока логов разработчика из Настройки -> Отладка при необходимости сообщить о баге.
+- **Менеджер навыков**:
+ - список установленных папок `.opencode/skills`
+ - импорт локальной папки навыка в `.opencode/skills/`
+
+## Менеджер навыков
+
+
+
+## Работает на локальном компьютере или серверах
+
+
+
+## Быстрый старт
+
+### Требования
+
+- Node.js + `pnpm`
+- Rust toolchain (для Tauri): установка через `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh`
+- Tauri CLI: `cargo install tauri-cli`
+- OpenCode CLI установлен и доступен в PATH: `opencode`
+
+### Локальная разработка (Десктоп)
+
+Перед запуском `pnpm dev` убедитесь, что установлены и активны:
+
+- Node + pnpm (репозиторий использует `pnpm@10.27.0`)
+- **Bun 1.3.9+** (`bun --version`)
+- Rust toolchain (для Tauri), с Cargo из текущего стабильного `rustup` (поддерживает `Cargo.lock` v4)
+- Xcode Command Line Tools (macOS)
+- На Linux пакеты разработки WebKitGTK 4.1, чтобы `pkg-config` мог разрешить `webkit2gtk-4.1` и `javascriptcoregtk-4.1`
+
+### Быстрая проверка за одну минуту
+
+Запустите из корня репозитория:
+
+```bash
+git checkout dev
+git pull --ff-only origin dev
+pnpm install --frozen-lockfile
+
+which bun
+bun --version
+pnpm --filter @openwork/desktop exec tauri --version
+```
+
+### Установка
+
+```bash
+pnpm install
+```
+
+OpenWork теперь находится в `apps/app` (UI) и `apps/desktop` (десктопная оболочка).
+
+### Запуск (Десктоп)
+
+```bash
+pnpm dev
+```
+
+`pnpm dev` теперь автоматически включает `OPENWORK_DEV_MODE=1`, поэтому десктопная разработка использует изолированное состояние OpenCode вместо вашей персональной глобальной конфигурации/аутентификации/данных.
+
+### Запуск (только Web UI)
+
+```bash
+pnpm dev:ui
+```
+
+Все точки входа `dev` репозитория теперь используют ту же изоляцию dev-режима, поэтому локальные тесты согласованно используют состояние OpenCode, управляемое OpenWork.
+
+### Для пользователей Arch:
+
+```bash
+sudo pacman -S --needed webkit2gtk-4.1
+curl -fsSL https://opencode.ai/install | bash -s -- --version "$(node -e "const fs=require('fs'); const parsed=JSON.parse(fs.readFileSync('constants.json','utf8')); process.stdout.write(String(parsed.opencodeVersion||'').trim().replace(/^v/,''));")" --no-modify-path
+```
+
+## Архитектура (высокий уровень)
+
+- В **режиме хоста** OpenWork запускает локальный стек хоста и подключает к нему UI.
+ - Среда выполнения по умолчанию: `openwork` (устанавливается из `openwork-orchestrator`), который оркестрирует `opencode`, `openwork-server` и опционально `opencode-router`.
+ - Резервная среда выполнения: `direct`, где десктопное приложение напрямую запускает `opencode serve --hostname 127.0.0.1 --port `.
+
+Когда вы выбираете папку проекта, OpenWork запускает стек хоста локально, используя эту папку, и подключает десктопный UI.
+Это позволяет запускать агентные рабочие процессы, отправлять запросы и видеть прогресс полностью на вашей машине без удалённого сервера.
+
+- UI использует `@opencode-ai/sdk/v2/client` для:
+ - подключения к серверу
+ - списка/создания сессий
+ - отправки запросов
+ - подписки на SSE события (Server-Sent Events используются для потоковой передачи обновлений в реальном времени с сервера на UI.)
+ - чтения задач и запросов разрешений
+
+## Выбор папки
+
+Выбор папки использует плагин диалога Tauri.
+Разрешения возможностей определены в:
+
+- `apps/desktop/src-tauri/capabilities/default.json`
+
+## Плагины OpenCode
+
+Плагины — это **нативный** способ расширения OpenCode. OpenWork теперь управляет ими из вкладки «Навыки»,
+читая и записывая `opencode.json`.
+
+- **Область проекта**: `/opencode.json`
+- **Глобальная область**: `~/.config/opencode/opencode.json` (или `$XDG_CONFIG_HOME/opencode/opencode.json`)
+
+Вы всё ещё можете редактировать `opencode.json` вручную; OpenWork использует тот же формат, что и OpenCode CLI:
+
+```json
+{
+ "$schema": "https://opencode.ai/config.json",
+ "plugin": ["opencode-wakatime"]
+}
+```
+
+## Полезные команды
+
+```bash
+pnpm dev
+pnpm dev:ui
+pnpm typecheck
+pnpm build
+pnpm build:ui
+pnpm test:e2e
+```
+
+## Устранение неполадок
+
+Если вам нужно сообщить о баге десктопа или сессии, откройте Настройки -> Отладка и экспортируйте отчёт об отладке среды выполнения и логи разработчика перед созданием issue.
+
+### Linux / Wayland (Hyprland)
+
+Если OpenWork падает при запуске с ошибками WebKitGTK, такими как `Failed to create GBM buffer`, отключите dmabuf или композитинг перед запуском. Попробуйте один из следующих флагов окружения.
+
+```bash
+WEBKIT_DISABLE_DMABUF_RENDERER=1 openwork
+```
+
+```bash
+WEBKIT_DISABLE_COMPOSITING_MODE=1 openwork
+```
+
+## Примечания по безопасности
+
+- OpenWork скрывает рассуждения моделей и чувствительные метаданные инструментов по умолчанию.
+- Режим хоста привязывается к `127.0.0.1` по умолчанию.
+
+## Участие в разработке
+
+- Изучите `AGENTS.md` плюс `VISION.md`, `PRINCIPLES.md`, `PRODUCT.md` и `ARCHITECTURE.md`, чтобы понять цели продукта перед внесением изменений.
+- Убедитесь, что Node.js, `pnpm`, Rust toolchain и `opencode` установлены перед работой в репозитории.
+- Запустите `pnpm install` один раз после checkout, затем проверьте изменение с помощью `pnpm typecheck` плюс `pnpm test:e2e` (или целевого подмножества скриптов) перед открытием PR.
+- Используйте `.github/pull_request_template.md` при открытии PR и включите точные команды, результаты, шаги ручной проверки и доказательства.
+- Если CI падает, классифицируйте сбои в теле PR как либо регрессии кода, либо внешние/окружение/аутентификация блокеры.
+- Добавляйте новые PRD в `apps/app/pr/.md`, следуя соглашениям `.opencode/skills/prd-conventions/SKILL.md`, описанным в `AGENTS.md`.
+
+Документация сообщества:
+
+- `CODE_OF_CONDUCT.md`
+- `SECURITY.md`
+- `SUPPORT.md`
+- `TRIAGE.md`
+
+Контрольный список первого вклада:
+
+- [ ] Запустите `pnpm install` и команды базовой проверки.
+- [ ] Подтвердите, что ваше изменение имеет чёткую ссылку на issue и область.
+- [ ] Добавьте/обновите тесты для поведенческих изменений.
+- [ ] Включите запущенные команды и результаты в ваш PR.
+- [ ] Добавьте скриншоты/видео для изменений пользовательских потоков.
+
+## Для команд и бизнеса
+
+Интересует использование OpenWork в вашей организации? Мы будем рады услышать от вас — свяжитесь с нами по адресу [ben@openworklabs.com](mailto:ben@openworklabs.com), чтобы обсудить ваш вариант использования.
+
+## Лицензия
+
+MIT — см. `LICENSE`.
diff --git a/README_ZH.md b/README_ZH.md
index c039b3844..bf9a89422 100644
--- a/README_ZH.md
+++ b/README_ZH.md
@@ -1,7 +1,5 @@
[](https://discord.gg/VEhNQXxYMB)
-[English](./README.md) | 简体中文 | [繁體中文](./README_ZH_hk.md) | [日本語](./README_JA.md)
-
# OpenWork
> 让您的公司提升 1000 倍的生产力。
diff --git a/README_ZH_hk.md b/README_ZH_hk.md
index d98ff10a6..2d9839c4a 100644
--- a/README_ZH_hk.md
+++ b/README_ZH_hk.md
@@ -1,7 +1,5 @@
[](https://discord.gg/VEhNQXxYMB)
-[English](./README.md) | [简体中文](./README_ZH.md) | 繁體中文 | [日本語](./README_JA.md)
-
# OpenWork
> 讓您的公司提升 1000 倍的生產力。
diff --git a/apps/app/src/i18n/index.ts b/apps/app/src/i18n/index.ts
index 38553c37c..d67e6edd3 100644
--- a/apps/app/src/i18n/index.ts
+++ b/apps/app/src/i18n/index.ts
@@ -5,18 +5,19 @@ import zh from "./locales/zh";
import vi from "./locales/vi";
import ptBR from "./locales/pt-BR";
import th from "./locales/th";
+import ru from "./locales/ru";
import { LANGUAGE_PREF_KEY } from "../app/constants";
/**
* Supported languages
*/
-export type Language = "en" | "ja" | "zh" | "vi" | "pt-BR" | "th";
+export type Language = "en" | "ja" | "zh" | "vi" | "pt-BR" | "th" | "ru";
export type Locale = Language;
/**
* All supported languages - single source of truth
*/
-export const LANGUAGES: Language[] = ["en", "ja", "zh", "vi", "pt-BR", "th"];
+export const LANGUAGES: Language[] = ["en", "ja", "zh", "vi", "pt-BR", "th", "ru"];
/**
* Language options for UI - single source of truth
@@ -28,6 +29,7 @@ export const LANGUAGE_OPTIONS = [
{ value: "vi" as Language, label: "Vietnamese", nativeName: "Tiếng Việt" },
{ value: "pt-BR" as Language, label: "Portuguese (BR)", nativeName: "Português (BR)" },
{ value: "th" as Language, label: "ไทย", nativeName: "ไทย" },
+ { value: "ru" as Language, label: "Русский", nativeName: "Русский" },
] as const;
/**
@@ -38,8 +40,9 @@ const TRANSLATIONS: Record> = {
ja,
zh,
vi,
- "pt-BR": ptBR,
+ "pt-BR": ptBR,
th,
+ ru,
};
/**
diff --git a/apps/app/src/i18n/locales/index.ts b/apps/app/src/i18n/locales/index.ts
index 394728a7b..ae5929d4b 100644
--- a/apps/app/src/i18n/locales/index.ts
+++ b/apps/app/src/i18n/locales/index.ts
@@ -6,3 +6,4 @@ export { default as ja } from "./ja";
export { default as zh } from "./zh";
export { default as vi } from "./vi";
export { default as ptBR } from "./pt-BR";
+export { default as ru } from "./ru";
diff --git a/apps/app/src/i18n/locales/ru.ts b/apps/app/src/i18n/locales/ru.ts
new file mode 100644
index 000000000..5cf3e9c4f
--- /dev/null
+++ b/apps/app/src/i18n/locales/ru.ts
@@ -0,0 +1,2724 @@
+/**
+ * Russian translations
+ */
+
+export default {
+ // ==================== Dashboard ====================
+ "dashboard.title": "Панель управления",
+ "dashboard.sessions": "Сессии",
+ "dashboard.commands": "Команды",
+ "dashboard.skills": "Навыки",
+ "dashboard.plugins": "Плагины",
+ "dashboard.mcps": "Приложения",
+ "dashboard.settings": "Настройки",
+ "dashboard.home": "Главная",
+ "dashboard.runs": "Запуски",
+ "dashboard.find_workspace": "Найти рабочее пространство...",
+ "dashboard.workspaces": "Рабочие пространства",
+ "dashboard.no_workspaces": "Нет подходящих рабочих пространств.",
+ "dashboard.new_workspace": "Новое рабочее пространство...",
+ "dashboard.new_remote_workspace": "Добавить удалённое рабочее пространство...",
+ "dashboard.forget_workspace": "Забыть рабочее пространство",
+ "dashboard.remote": "Удалённое",
+ "dashboard.connection": "Подключение",
+ "dashboard.local_engine": "Локальный движок",
+ "dashboard.client_mode": "Режим клиента",
+ "dashboard.connected": "Подключено",
+ "dashboard.not_connected": "Не подключено",
+ "dashboard.stop_disconnect": "Остановить и отключить",
+ "dashboard.disconnect": "Отключить",
+ "dashboard.new_task": "Новая задача",
+ "dashboard.new": "Создать",
+ "dashboard.busy": "Занят",
+ "dashboard.hero_title": "Что сделаем сегодня?",
+ "dashboard.hero_description":
+ "Опишите результат. OpenWork выполнит задачу и сохранит журнал.",
+ "dashboard.quick_start_commands": "Команды быстрого старта",
+ "dashboard.view_all": "Показать все",
+ "dashboard.no_commands":
+ "Команд пока нет. Здесь появятся стартовые команды.",
+ "dashboard.run_command": "Запустить сохранённую команду",
+ "dashboard.recent_sessions": "Недавние сессии",
+ "dashboard.this_workspace": "в этом пространстве",
+ "dashboard.no_sessions": "Сессий пока нет.",
+ "dashboard.idle": "Ожидание",
+ "dashboard.running": "Выполняется",
+ "dashboard.completed": "Завершено",
+ "dashboard.failed": "Ошибка",
+ "dashboard.repairing_cache": "Восстановление кэша",
+ "dashboard.repair_cache": "Восстановить кэш",
+ "dashboard.retry": "Повторить",
+ "dashboard.alpha": "Alpha",
+ "dashboard.create_workspace_title": "Создать рабочее пространство",
+ "dashboard.create_workspace_subtitle":
+ "Инициализировать новое рабочее пространство на основе папки.",
+ "dashboard.create_workspace_confirm": "Создать рабочее пространство",
+ "dashboard.create_sandbox_confirm": "Создать как песочницу",
+ "share_skill_destination.title": "Куда добавить этот навык?",
+ "share_skill_destination.subtitle":
+ "Выберите существующее рабочее пространство или создайте новое перед импортом этого общего навыка.",
+ "share_skill_destination.skill_label": "Общий навык",
+ "share_skill_destination.fallback_skill_name": "Общий навык",
+ "share_skill_destination.trigger_label": "Триггер",
+ "share_skill_destination.current_badge": "Текущий",
+ "share_skill_destination.existing_workers": "Существующие рабочие пространства",
+ "share_skill_destination.no_workers":
+ "Рабочих пространств пока нет. Создайте или подключите удалённое пространство для установки этого навыка.",
+ "share_skill_destination.new_destination": "Новое назначение",
+ "share_skill_destination.selection_ready": "Готово к добавлению",
+ "share_skill_destination.selected_badge": "Выбрано",
+ "share_skill_destination.selected_hint":
+ "Выбрано. Проверьте назначение ниже, затем подтвердите.",
+ "share_skill_destination.footer_idle": "Выберите рабочее пространство для продолжения.",
+ "share_skill_destination.footer_selected": "Выбранное рабочее пространство:",
+ "share_skill_destination.confirm_button": "Добавить навык в рабочее пространство",
+ "share_skill_destination.confirm_busy": "Добавление навыка...",
+ "share_skill_destination.local_badge": "Локальное",
+ "share_skill_destination.remote_badge": "Удалённое",
+ "share_skill_destination.sandbox_badge": "Песочница",
+ "share_skill_destination.create_worker": "Создать новое рабочее пространство",
+ "share_skill_destination.create_worker_desc":
+ "Откройте настройку рабочего пространства, затем добавьте этот навык после готовности нового пространства.",
+ "share_skill_destination.connect_remote": "Подключить удалённое рабочее пространство",
+ "share_skill_destination.connect_remote_desc":
+ "Подключите хост OpenWork, затем выберите его из списка для импорта этого навыка.",
+ "dashboard.sandbox_get_ready_title": "Песочница требует Docker",
+ "dashboard.sandbox_get_ready_action": "Подготовить систему",
+ "dashboard.sandbox_get_ready_desc":
+ "Запустите это рабочее пространство в изолированном контейнере Docker для более безопасных и воспроизводимых запусков.",
+ "dashboard.sandbox_checking_docker": "Проверка Docker...",
+ "dashboard.create_remote_workspace_title": "Добавить удалённое рабочее пространство",
+ "dashboard.create_remote_workspace_subtitle":
+ "Сохранить сервер OpenWork как рабочее пространство.",
+ "dashboard.create_remote_workspace_confirm": "Добавить рабочее пространство",
+ "dashboard.edit_remote_workspace_title": "Редактировать удалённое подключение",
+ "dashboard.edit_remote_workspace_subtitle":
+ "Обновить данные сервера OpenWork для этого рабочего пространства.",
+ "dashboard.edit_remote_workspace_confirm": "Сохранить подключение",
+ "dashboard.remote_workspace_title": "Удалённое рабочее пространство",
+ "dashboard.remote_workspace_hint":
+ "Отслеживайте сервер OpenWork и переподключайтесь в любое время.",
+ "dashboard.remote_base_url_label": "URL сервера OpenWork",
+ "dashboard.remote_base_url_placeholder": "http://127.0.0.1:",
+ "dashboard.remote_base_url_required": "Добавьте URL сервера для продолжения.",
+ "dashboard.openwork_host_label": "URL сервера OpenWork",
+ "dashboard.openwork_host_placeholder": "https://your-server.openwork.app",
+ "dashboard.openwork_host_hint": "Используйте URL, предоставленный вашим сервером OpenWork.",
+ "dashboard.openwork_host_token_label": "Токен соавтора или владельца",
+ "dashboard.openwork_host_token_placeholder": "Вставьте ваш токен",
+ "dashboard.openwork_host_token_hint":
+ "Необязательно. Вставьте токен соавтора для обычного доступа или токен владельца, когда этот клиент должен отвечать на запросы разрешений.",
+ "dashboard.remote_mode_openwork_alpha": "Сервер OpenWork",
+ "dashboard.remote_mode_direct": "Прямое (устаревшее)",
+ "dashboard.remote_connection_openwork": "OpenWork",
+ "dashboard.remote_connection_direct": "Прямое",
+ "dashboard.remote_directory_label": "Директория рабочего пространства (необязательно)",
+ "dashboard.remote_directory_placeholder": "/home/team/project",
+ "dashboard.remote_directory_hint": "Оставьте пустым для использования серверной директории по умолчанию.",
+ "dashboard.remote_display_name_label": "Отображаемое имя (необязательно)",
+ "dashboard.remote_display_name_placeholder": "Рабочее пространство команды дизайна",
+ "dashboard.select_folder": "Выбрать папку",
+ "dashboard.choose_folder": "Выберите папку",
+ "dashboard.choose_folder_next": "Поделитесь файлами с вашим рабочим пространством.",
+ "dashboard.change": "Изменить",
+ "dashboard.opening": "Открытие...",
+ "dashboard.choose_preset": "Выберите пресет",
+ "dashboard.choose_folder_continue": "Выберите папку для продолжения.",
+ "dashboard.starter_workspace": "Стартовое рабочее пространство",
+ "dashboard.starter_workspace_desc":
+ "Преднастроено для демонстрации работы с плагинами, командами и навыками.",
+ "dashboard.empty_workspace": "Пустое рабочее пространство",
+ "dashboard.empty_workspace_desc":
+ "Начните с пустой папки и добавьте всё необходимое.",
+ "dashboard.blueprints_workspace": "Шаблоны",
+ "dashboard.blueprints_workspace_desc":
+ "Начните с рабочего пространства, готового к автоматизации, с переиспользуемыми навыками, командами и общими потоками.",
+
+ "workspace.rename_title": "Редактировать имя рабочего пространства",
+ "workspace.rename_description": "Обновите имя, отображаемое в боковой панели.",
+ "workspace.rename_label": "Имя рабочего пространства",
+ "workspace.rename_placeholder": "Рабочее пространство команды дизайна",
+
+ "session.no_selected": "Сессия не выбрана",
+ "session.back_to_dashboard": "Назад к панели управления",
+ "session.new_task": "Новая задача",
+ "session.recents": "Недавние",
+ "session.recents_notice":
+ "Эти задачи выполняются локально и не синхронизируются между устройствами.",
+ "session.ready_to_work_title": "Готово к работе",
+ "session.ready_to_work_description":
+ "Опишите задачу. Я покажу прогресс и запрошу разрешения при необходимости.",
+ "session.document_label": "Документ",
+ "session.standard_label": "Стандартный",
+ "session.no_artifacts_fallback": "Артефактов пока нет.",
+ "session.active_plugins_label": "Активные плагины",
+ "session.active_plugins_count": "{count}",
+ "session.no_plugins_loaded": "Плагины не загружены.",
+ "session.selected_folders_label": "Выбранные папки",
+ "session.selected_folders_count": "{count}",
+ "session.working_files_label": "Рабочие файлы",
+ "session.none_yet_label": "Пока нет.",
+ "session.permission_required_title": "Требуется разрешение",
+ "session.permission_required_description":
+ "OpenCode запрашивает разрешение на продолжение.",
+ "session.permission_label_uppercase": "Разрешение",
+ "session.scope_label_uppercase": "Область",
+ "session.details_label": "Детали",
+ "session.steps_notice_text": "Шаги появятся по мере выполнения задачи.",
+ "session.ready_to_work": "Готово к работе",
+ "session.ready_description":
+ "Опишите задачу. Я покажу прогресс и запрошу разрешения при необходимости.",
+ "session.hide_steps": "Скрыть шаги",
+ "session.view_steps": "Показать шаги",
+ "session.open": "Открыть",
+ "session.reveal": "Показать",
+ "session.opened_toast": "Открыто в приложении по умолчанию.",
+ "session.revealed_toast": "Показано в файловом менеджере.",
+ "session.artifact_path_missing": "Путь к артефакту отсутствует.",
+ "session.desktop_only": "Открытие доступно только в десктопном приложении.",
+ "session.open_failed": "Не удалось открыть артефакт.",
+ "session.model": "Модель",
+ "session.ready": "Готово",
+ "session.connect_provider": "Подключите провайдер для настройки.",
+ "session.running": "Выполняется",
+ "session.progress": "Прогресс",
+ "session.steps_notice": "Шаги появятся по мере выполнения задачи.",
+ "session.artifacts": "Артефакты",
+ "session.no_artifacts": "Артефактов пока нет.",
+ "session.context": "Контекст",
+ "session.active_plugins": "Активные плагины",
+ "session.no_plugins": "Плагины не загружены.",
+ "session.selected_folders": "Выбранные папки",
+ "session.working_files": "Рабочие файлы",
+ "session.none_yet": "Пока нет.",
+ "session.document": "Документ",
+ "session.standard": "Стандартный",
+ "session.try_notion_prompt": "Попробуйте: настройте мою CRM в Notion",
+ "session.insert_prompt": "Вставить запрос",
+ "session.placeholder": "Спросите OpenWork...",
+ "session.run": "Запустить",
+ "session.permission_required": "Требуется разрешение",
+ "session.permission_description":
+ "OpenCode запрашивает разрешение на продолжение.",
+ "session.permission_label": "Разрешение",
+ "session.scope_label": "Область",
+ "session.details": "Детали",
+ "session.deny": "Отклонить",
+ "session.once": "Один раз",
+ "session.allow_for_session": "Разрешить для сессии",
+
+ "session.tasks_local_hint":
+ "Эти задачи выполняются локально и не синхронизируются между устройствами.",
+ "session.recents_label": "Недавние",
+ "session.model_standard": "Стандартный",
+ "session.run_button_title": "Запустить",
+ "session.rename_title": "Переименовать сессию",
+ "session.rename_description": "Обновите имя для этой сессии.",
+ "session.rename_label": "Имя сессии",
+ "session.rename_placeholder": "Введите новое имя",
+ "session.provider_connected": "Провайдер подключён",
+ "session.oauth_failed": "OAuth не удался",
+ "session.api_key_saved": "API ключ сохранён",
+ "session.failed_to_save_api_key": "Не удалось сохранить API ключ",
+ "session.quick_actions_title": "Быстрые действия (Ctrl/Cmd+K)",
+ "session.quick_actions_label": "Быстрые действия",
+ "session.menu_label": "Меню",
+ "session.search_conversation_title": "Поиск в разговоре (Ctrl/Cmd+F)",
+ "session.search_conversation_label": "Поиск в разговоре",
+ "session.undo_title": "Отменить последнее сообщение",
+ "session.revert_label": "Вернуть",
+ "session.redo_title": "Повторить последнее отменённое сообщение",
+ "session.redo_aria_label": "Повторить последнее отменённое сообщение",
+
+ "commands.new": "Создать",
+ "commands.empty_state":
+ "Сохраните запрос или команду, чтобы запустить их снова одним нажатием.",
+ "commands.workspace": "Это рабочее пространство",
+ "commands.global": "Все рабочие пространства",
+ "commands.other": "Другие команды",
+ "commands.run": "Запустить",
+ "commands.modal_title": "Сохранить переиспользуемый поток",
+ "commands.modal_description": "Сохраните запрос или команду для быстрого повторного использования.",
+ "commands.name_label": "Имя команды",
+ "commands.name_placeholder": "например, daily-standup",
+ "commands.name_hint": "Это станет /daily-standup в OpenCode.",
+ "commands.description_label": "Описание (необязательно)",
+ "commands.description_placeholder": "Что делает эта команда?",
+ "commands.template_label": "Инструкции",
+ "commands.template_placeholder": "Напишите инструкции для повторного использования…",
+ "commands.template_hint": "Используйте $ARGUMENTS для передачи деталей.",
+ "commands.details_required": "Детали",
+ "commands.default_description": "Запустить сохранённую команду",
+ "commands.command_label": "Команда",
+ "commands.details_label": "Детали",
+ "commands.details_placeholder": "Добавьте необязательные детали",
+ "commands.details_hint": "Эти детали передаются команде.",
+ "commands.run_modal_title": "Запустить команду",
+ "commands.run_modal_description": "Добавьте необязательные детали перед запуском.",
+ "commands.run_modal_run": "Запустить команду",
+ "commands.name_will_be": "Будет создано как",
+ "commands.override_title": "Заменить существующую команду?",
+ "commands.override_description": "Команда с таким именем уже существует.",
+ "commands.override_warning":
+ 'Это заменит существующую команду "{name}". Это действие нельзя отменить.',
+ "commands.override_confirm": "Заменить",
+ "commands.override_cancel": "Оставить существующую",
+
+ "skills.title": "Навыки",
+ "skills.subtitle": "Управляйте навыками для этого рабочего пространства.",
+ "skills.refresh": "Обновить",
+ "skills.add_title": "Добавить навыки",
+ "skills.add_description":
+ "Установите стартовую команду, импортируйте навык или откройте папку.",
+ "skills.install_from_openpackage": "Установить из OpenPackage",
+ "skills.host_mode_only": "Только локальное рабочее пространство",
+ "skills.install": "Установить",
+ "skills.installed_label": "Установлено",
+ "skills.install_hint":
+ "Устанавливает пакеты OpenPackage в текущее рабочее пространство. Навыки должны появиться в `.opencode/skills`.",
+ "skills.import_local": "Импортировать локальный навык",
+ "skills.import_local_hint":
+ "Скопируйте существующую папку навыка в это рабочее пространство.",
+ "skills.import": "Импорт",
+ "skills.curated_packages": "Подобранные пакеты",
+ "skills.view": "Просмотр",
+ "skills.search_placeholder":
+ "Поиск пакетов или списков (например, claude, registry, community)",
+ "skills.no_matches": "Нет подобранных совпадений. Попробуйте другой поиск.",
+ "skills.install_package": "Установить",
+ "skills.registry_notice":
+ "Публикация в реестр OpenPackage сегодня требует аутентификации. Поиск по реестру + синхронизация подобранного списка запланированы.",
+ "skills.installed": "Установленные навыки",
+ "skills.no_skills":
+ "Навыки не обнаружены в `.opencode/skills`, `.claude/skills` или `~/.agents/skills`.",
+ "skills.desktop_required": "Управление навыками требует десктопного приложения.",
+ "skills.host_only_error":
+ "Управление навыками требует локального рабочего пространства или подключённого сервера OpenWork.",
+ "skills.install_skill_creator": "Установить создатель навыков",
+ "skills.install_skill_creator_hint":
+ "Этот навык позволяет создавать другие навыки прямо из чата.",
+ "skills.installing_skill_creator": "Установка создателя навыков...",
+ "skills.skill_creator_installed": "Создатель навыков установлен.",
+ "skills.skill_creator_already_installed":
+ "Создатель навыков уже установлен.",
+ "skills.install_failed": "Установка навыка не удалась.",
+ "skills.reveal_folder": "Открыть папку навыков",
+ "skills.reveal_folder_hint": "Откройте директорию навыков в Finder.",
+ "skills.reveal_button": "Показать в Finder",
+ "skills.reveal_failed": "Не удалось открыть папку навыков.",
+ "skills.uninstall": "Удалить",
+ "skills.uninstall_title": "Удалить навык?",
+ "skills.uninstall_warning":
+ "Это навсегда удалит навык `{name}` из вашего рабочего пространства.",
+ "skills.uninstall_failed": "Не удалось удалить навык.",
+ "skills.uninstalled": "Навык удалён.",
+ "skills.share_title": "Поделиться навыком",
+ "skills.share_chooser_subtitle":
+ "Сохраните в вашу организацию OpenWork Cloud или опубликуйте публичную ссылку для установки.",
+ "skills.share_subtitle_public":
+ "Любой, у кого есть ссылка, может установить этот навык.",
+ "skills.share_subtitle_team": "Хранится в вашей организации для команды.",
+ "skills.share_option_team_title": "Поделиться с командой",
+ "skills.share_option_team_desc":
+ "Добавьте этот навык в вашу активную организацию OpenWork Cloud.",
+ "skills.share_option_public_title": "Публичная ссылка",
+ "skills.share_option_public_desc":
+ "Создайте ссылку, которую любой сможет использовать для установки этого навыка.",
+ "skills.share_public_intro":
+ "Опубликуйте публичную ссылку. Любой, у кого есть URL, сможет установить этот навык.",
+ "skills.share_publisher_label": "Издатель",
+ "skills.share_public_create": "Создать ссылку",
+ "skills.share_public_regenerate": "Пересоздать ссылку",
+ "skills.share_public_creating": "Публикация…",
+ "skills.share_copy_link": "Копировать",
+ "skills.share_team_intro":
+ "Сохраните этот навык в вашу активную организацию, чтобы команда могла установить его из Cloud.",
+ "skills.share_team_org_fallback": "Активная организация Cloud",
+ "skills.share_team_hub_label": "Добавить в хаб навыков (необязательно)",
+ "skills.share_team_hub_none": "Только организация — не в хабе",
+ "skills.share_team_hubs_loading": "Загрузка хабов…",
+ "skills.share_team_sign_in": "Войдите, чтобы поделиться с командой",
+ "skills.share_team_sign_in_hint":
+ "OpenWork Cloud откроется в вашем браузере. Вернитесь сюда после входа.",
+ "skills.share_team_save": "Сохранить для команды",
+ "skills.share_team_saving": "Сохранение…",
+ "skills.share_team_success":
+ "Сохранено в {org}. Команда может установить его из навыков вашей организации.",
+ "skills.share_team_choose_org":
+ "Выберите организацию в Настройки → Cloud перед тем, как поделиться с командой.",
+ "skills.share_back": "Назад",
+ "skills.share_close": "Закрыть",
+ "skills.share_done": "Готово",
+ "skills.source_placeholder": "github:anthropics/claude-code",
+ "skills.notion_crm_title": "Навыки обогащения Notion CRM",
+ "skills.notion_crm_description":
+ "Добавьте рабочие процессы обогащения для контактов, воронок и последующих действий.",
+ "skills.notion_crm_card_description":
+ "Обогатите данные Notion CRM готовыми навыками.",
+ "skills.connect_host_to_load": "Подключите сервер OpenWork для загрузки навыков.",
+ "skills.pick_workspace_first": "Сначала выберите папку рабочего пространства.",
+ "skills.no_skills_found": "Навыки пока не найдены.",
+ "skills.installed_description": "Навыки, доступные в этом рабочем пространстве.",
+ "skills.failed_to_load": "Не удалось загрузить навыки",
+ "skills.plugin_management_host_only":
+ "Управление плагинами требует десктопного приложения.",
+ "skills.plugins_host_only": "Плагины доступны только в десктопном приложении.",
+ "skills.pick_project_for_plugins":
+ "Выберите папку проекта для управления плагинами проекта.",
+ "skills.pick_project_for_active":
+ "Выберите папку проекта для загрузки активных плагинов.",
+ "skills.no_opencode_found":
+ "opencode.json пока не найден. Добавьте плагин для его создания.",
+ "skills.no_opencode_workspace": "opencode.json в этом рабочем пространстве пока нет.",
+ "skills.failed_parse_opencode": "Не удалось распарсить opencode.json",
+ "skills.failed_load_opencode": "Не удалось загрузить opencode.json",
+ "skills.failed_load_active": "Не удалось загрузить активные плагины.",
+ "skills.enter_plugin_name": "Введите имя пакета плагина.",
+ "skills.plugin_already_listed": "Плагин уже указан в opencode.json.",
+ "skills.failed_update_opencode": "Не удалось обновить opencode.json",
+ "skills.opackage_install_host_only":
+ "Установка OpenPackage требует десктопного приложения.",
+ "skills.pick_project_first": "Сначала выберите папку проекта.",
+ "skills.enter_opackage_source":
+ "Введите источник OpenPackage (например, github:anthropics/claude-code).",
+ "skills.installing_opackage": "Установка OpenPackage...",
+ "skills.install_complete": "Установлено.",
+ "skills.curated_list_notice":
+ "Это подобранный список, ещё не OpenPackage. Скопируйте ссылку или следите за PRD для планов интеграции поиска по реестру.",
+ "skills.import_host_only": "Импорт навыков требует десктопного приложения.",
+ "skills.select_skill_folder": "Выберите папку навыка",
+ "skills.import_failed": "Импорт не удался ({status})",
+ "skills.imported": "Импортировано.",
+ "skills.unknown_error": "Неизвестная ошибка",
+ "skills.filter_all": "Все",
+ "skills.filter_installed": "Установлено",
+ "skills.filter_cloud": "Команда",
+ "skills.filter_hub": "Хаб",
+ "skills.catalog_search_placeholder": "Поиск установленных, командных и хаб-навыков",
+ "skills.cloud_section_title": "Из вашей организации",
+ "skills.cloud_section_subtitle":
+ "Навыки, которыми поделились с вами через OpenWork Cloud — включая командные хабы навыков, к которым у вас есть доступ.",
+ "skills.cloud_refresh": "Обновить командные навыки",
+ "skills.cloud_org_fallback": "OpenWork Cloud",
+ "skills.cloud_sign_in_hint":
+ "Войдите в OpenWork Cloud для просмотра командных и организационных навыков.",
+ "skills.cloud_sign_in": "Войти в Cloud",
+ "skills.cloud_choose_org_hint":
+ "Выберите организацию в Настройки → Cloud для загрузки командных навыков.",
+ "skills.cloud_choose_org_detail":
+ "Используйте панель Cloud для выбора активной организации, затем обновите этот список.",
+ "skills.cloud_org_empty": "Организационные навыки пока недоступны.",
+ "skills.cloud_org_load_failed": "Не удалось загрузить организационные навыки.",
+ "skills.cloud_no_search_matches": "Нет навыков, соответствующих поиску.",
+ "skills.cloud_install_need_server":
+ "Подключитесь к серверу OpenWork с правом записи навыков для установки командных навыков на этот воркер.",
+ "skills.cloud_installed": "Установлено {name} на этот воркер.",
+ "skills.cloud_installing": "Установка {title}…",
+ "skills.cloud_installing_short": "Установка",
+ "skills.cloud_add_skill": "Добавить навык",
+ "skills.cloud_badge": "Cloud",
+ "skills.cloud_hub_label": "Хаб: {name}",
+ "skills.cloud_shared_org": "Организация",
+ "skills.cloud_shared_public": "Публичное",
+ "skills.cloud_footer_label": "Команда",
+
+ "plugins.title": "Плагины OpenCode",
+ "plugins.description":
+ "Управляйте `opencode.json` для вашего проекта или глобальными плагинами OpenCode.",
+ "plugins.config_label": "Конфигурация",
+ "plugins.config_not_loaded": "Ещё не загружено",
+ "plugins.suggested_label": "Рекомендуемые плагины",
+ "plugins.no_plugins_yet": "Плагины ещё не настроены.",
+ "plugins.enabled_label": "Включено",
+ "plugins.open_label": "Открыть",
+ "plugins.path_label": "Путь",
+ "plugins.scope_project": "Проект",
+ "plugins.scope_global": "Глобальный",
+ "plugins.refresh": "Обновить",
+ "plugins.config": "Конфигурация",
+ "plugins.not_loaded": "Ещё не загружено",
+ "plugins.suggested": "Рекомендуемые плагины",
+ "plugins.hide_setup": "Скрыть настройку",
+ "plugins.setup": "Настройка",
+ "plugins.added": "Добавлено",
+ "plugins.add": "Добавить",
+ "plugins.enabled": "Включено",
+ "plugins.no_plugins": "Плагины ещё не настроены.",
+ "plugins.add_label": "Добавить плагин",
+ "plugins.placeholder": "opencode-wakatime",
+ "plugins.add_hint": "Добавьте имена npm пакетов, например opencode-wakatime",
+
+ "mcp.add_modal_title": "Добавить пользовательское приложение",
+ "mcp.add_modal_subtitle":
+ "Подключите пользовательский сервер MCP по URL или локальной команде.",
+ "mcp.custom_app_cta_hint":
+ "Подключите ваш собственный сервер MCP, внутренний инструмент или размещённое приложение.",
+ "mcp.server_type": "Тип",
+ "mcp.type_remote": "Удалённый (URL)",
+ "mcp.type_local_cmd": "Локальный (команда)",
+ "mcp.server_command": "Команда",
+ "mcp.server_command_placeholder":
+ "npx -y @modelcontextprotocol/server-sequential-thinking",
+ "mcp.server_command_hint": "Команда оболочки для запуска сервера.",
+ "mcp.sign_in_section_label": "Вход",
+ "mcp.oauth_optional_label": "Это приложение требует входа",
+ "mcp.oauth_optional_hint":
+ "Использует OAuth в браузере для подключения вашего аккаунта.",
+ "mcp.remote_workspace_url_hint":
+ "Удалённые воркеры быстрее всего подключаются через URL-based MCP серверы.",
+ "mcp.add_server_button": "Добавить приложение",
+ "mcp.name_required": "Введите имя сервера.",
+ "mcp.url_or_command_required":
+ "Введите URL для удалённого или команду для локальных серверов.",
+ "mcp.control_chrome_setup_title": "Настройка Control Chrome",
+ "mcp.control_chrome_setup_subtitle":
+ "Включите доступ Chrome, затем выберите, должен ли OpenWork использовать свой чистый профиль или подключиться к уже используемому Chrome.",
+ "mcp.control_chrome_browser_title": "1. Включите доступ Chrome",
+ "mcp.control_chrome_browser_hint": "В Chrome 144 или новее сделайте это сначала:",
+ "mcp.control_chrome_browser_step_one":
+ "Откройте chrome://inspect/#remote-debugging.",
+ "mcp.control_chrome_browser_step_two": "Включите удалённую отладку.",
+ "mcp.control_chrome_browser_step_three":
+ "Разрешите входящие подключения отладки, когда Chrome спросит.",
+ "mcp.control_chrome_docs": "Официальное руководство MCP",
+ "mcp.control_chrome_profile_title": "2. Выберите какой Chrome использовать",
+ "mcp.control_chrome_profile_hint":
+ "Control Chrome обычно открывает отдельный профиль Chrome. Включите это, если хотите, чтобы OpenWork использовал уже открытое окно Chrome.",
+ "mcp.control_chrome_toggle_label": "Использовать мой существующий профиль Chrome",
+ "mcp.control_chrome_toggle_hint":
+ "Когда включено, OpenWork добавляет --autoConnect, чтобы MCP подключался к уже запущенному экземпляру Chrome.",
+ "mcp.control_chrome_toggle_on":
+ "OpenWork будет использовать ваши текущие вкладки, куки и входы.",
+ "mcp.control_chrome_toggle_off":
+ "OpenWork запустит отдельный профиль Chrome только для автоматизации.",
+ "mcp.control_chrome_connect": "Добавить Control Chrome",
+ "mcp.control_chrome_save": "Сохранить настройки",
+ "mcp.control_chrome_edit": "Редактировать настройки",
+
+ "mcp.logout_label": "OAuth",
+ "mcp.logout_action": "Выйти",
+ "mcp.logout_working": "Выход...",
+ "mcp.logout_hint":
+ "Удаляет сохранённые учётные данные OAuth. Вам нужно будет войти снова.",
+ "mcp.login_action": "Войти",
+ "mcp.login_hint": "Подключите ваш аккаунт для завершения настройки этого приложения.",
+ "mcp.login_unavailable": "Это приложение не поддерживает вход из OpenWork.",
+ "mcp.logout_modal_title": "Выйти из этого приложения?",
+ "mcp.logout_modal_message":
+ "Это удалит сохранённые учётные данные OAuth для {server}. Вам нужно будет войти снова для использования этого приложения.",
+ "mcp.logout_success": "Вышли из {server}.",
+ "mcp.logout_failed": "Выход не удался.",
+
+ "mcp.auth.open_browser_signin": "Мы откроем ваш браузер для завершения входа.",
+ "mcp.auth.connect_server": "Подключить {server}",
+ "mcp.auth.already_connected": "Уже подключено",
+ "mcp.auth.already_connected_description":
+ "{server} уже аутентифицирован и готов к использованию.",
+ "mcp.auth.configured_previously":
+ "MCP мог быть настроен глобально или в предыдущей сессии. Вы можете закрыть это модальное окно и начать использовать инструменты MCP прямо сейчас.",
+ "mcp.auth.reload_engine_retry": "Применить изменения и повторить",
+ "mcp.auth.retry_now": "Повторить сейчас",
+ "mcp.auth.retry": "Повторить",
+ "mcp.auth.reload_failed": "Не удалось перезагрузить воркер перед входом.",
+ "mcp.auth.applying_changes_title": "Применение изменений перед входом",
+ "mcp.auth.applying_changes_body":
+ "Мы перезапускаем воркер, чтобы новый MCP был готов к аутентификации.",
+ "mcp.auth.waiting_for_conversation_title":
+ "Ожидание завершения разговора",
+ "mcp.auth.waiting_for_conversation_body":
+ "Мы перенаправим вас для аутентификации как можно скорее.",
+ "mcp.auth.waiting_for_session": "Ожидание завершения работы {session}",
+ "mcp.auth.force_stop": "Принудительно остановить",
+ "mcp.auth.force_stopping": "Остановка...",
+ "mcp.auth.reload_before_oauth":
+ "Перезагрузите движок для завершения настройки этого MCP перед запуском OAuth.",
+ "mcp.auth.reload_notice":
+ "Для вступления изменений в силу, OpenWork должен обновить сервис воркера. Это может прервать выполняющуюся сессию.",
+ "mcp.auth.reload_blocked":
+ "Перезагрузка приостановлена, пока выполняется сессия. Остановите запуск для завершения настройки.",
+ "mcp.auth.reload_remote_confirm":
+ "Для вступления изменений в силу, OpenWork должен обновить сервис воркера. Это может остановить вашу выполняющуюся сессию. Продолжить?",
+ "mcp.auth.reload_needed":
+ "Завершите настройку, перезагрузив движок, затем попробуйте подключиться снова.",
+ "mcp.auth.manual_finish_title": "Удалённый сервер?",
+ "mcp.auth.manual_finish_hint":
+ "Вставьте URL обратного вызова (localhost:19876) или просто код для завершения подключения.",
+ "mcp.auth.callback_label": "URL обратного вызова или код",
+ "mcp.auth.callback_placeholder":
+ "http://127.0.0.1:19876/mcp/oauth/callback?code=...",
+ "mcp.auth.complete_connection": "Завершить подключение",
+ "mcp.auth.callback_invalid":
+ "Вставьте URL обратного вызова или параметр кода для завершения OAuth.",
+ "mcp.auth.port_forward_hint":
+ "Совет: пробросьте порт обратного вызова при необходимости: ssh -L 19876:127.0.0.1:19876 user@host",
+ "mcp.auth.step1_title": "Открываем ваш браузер",
+ "mcp.auth.step1_description":
+ "Мы автоматически запустим поток входа {server}.",
+ "mcp.auth.step2_title": "Авторизуйте OpenWork",
+ "mcp.auth.step2_description": "Войдите и одобрите доступ при появлении запроса.",
+ "mcp.auth.step3_title": "Вернитесь сюда после завершения",
+ "mcp.auth.step3_description":
+ "Мы завершим подключение сразу после окончания авторизации.",
+ "mcp.auth.waiting_authorization":
+ "Ожидание завершения авторизации в вашем браузере...",
+ "mcp.auth.follow_browser_steps":
+ "Следуйте шагам авторизации в браузере.",
+ "mcp.auth.reopen_browser_link": "Нажмите здесь для повторного открытия браузера",
+ "mcp.auth.done": "Готово",
+ "mcp.auth.cancel": "Отмена",
+ "mcp.auth.im_done": "Готово",
+ "mcp.auth.client_registration_required":
+ "Регистрация клиента требуется перед продолжением OAuth.",
+ "mcp.auth.server_disabled":
+ "Этот сервер MCP отключён. Включите его и попробуйте снова.",
+ "mcp.auth.oauth_failed": "Аутентификация OAuth не удалась.",
+ "mcp.auth.invalid_refresh_token":
+ "Токен обновления OAuth недействителен или просрочен. Повторно авторизуйтесь для продолжения.",
+ "mcp.auth.reauth_action": "Повторная авторизация OAuth",
+ "mcp.auth.reauth_running": "Повторная авторизация...",
+ "mcp.auth.reauth_failed": "Повторная авторизация не удалась.",
+ "mcp.auth.reauth_cli_hint": "Запустите: opencode mcp auth {server}",
+ "mcp.auth.reauth_remote_hint":
+ "Повторно авторизуйтесь с машины, запускающей этот воркер.",
+ "mcp.auth.authorization_still_required":
+ "Авторизация всё ещё требуется. Попробуйте снова для перезапуска потока.",
+ "mcp.auth.oauth_not_supported_hint":
+ "Это может означать:\n• Сервер MCP не рекламирует возможности OAuth\n• Движок требует перезагрузки для обнаружения возможностей сервера\n• Попробуйте: opencode mcp auth {server} из CLI",
+ "mcp.auth.try_reload_engine": "{message}. Попробуйте сначала перезагрузить движок.",
+ "mcp.auth.failed_to_start_oauth": "Не удалось запустить поток OAuth",
+ "mcp.auth.oauth_completed_reload":
+ "OAuth завершён. Перезагрузите движок для активации MCP.",
+
+ "mcp.apps_title": "Приложения",
+ "mcp.apps_subtitle":
+ "Подключите ваши любимые инструменты, чтобы OpenWork мог использовать их от вашего имени.",
+ "mcp.app_connected": "приложение подключено",
+ "mcp.apps_connected": "приложения подключены",
+ "mcp.title": "Приложения",
+ "mcp.description": "Подключите ваши инструменты в один клик.",
+ "mcp.alpha_banner_title":
+ "Приложения в раннем доступе, пока мы улучшаем опыт.",
+ "mcp.alpha_banner_help":
+ "Если хотите помочь, откройте PR и включите короткое видео, показывающее端到дный поток входа.",
+ "mcp.mcps_title": "Приложения",
+ "mcp.connect_mcp_hint": "Подключите приложения для расширения возможностей OpenWork.",
+ "mcp.finish_setup": "Почти готово",
+ "mcp.finish_setup_hint": "Нажмите Активировать для завершения подключения приложения.",
+ "mcp.activate_button": "Активировать",
+ "mcp.reload_banner_title": "Почти готово",
+ "mcp.reload_banner_description":
+ "Нажмите Активировать для завершения подключения приложения.",
+ "mcp.reload_banner_description_blocked":
+ "Задача выполняется. Остановите её, затем активируйте.",
+ "mcp.reload_banner_blocked_hint": "Остановите выполняющуюся задачу для активации.",
+ "mcp.available_apps": "Доступные приложения",
+ "mcp.one_click_connect": "Подключение в один клик",
+ "mcp.tap_to_connect": "Нажмите для подключения",
+ "mcp.connected_badge": "Подключено",
+ "mcp.your_apps": "Ваши приложения",
+ "mcp.last_synced": "Синхронизировано",
+ "mcp.no_apps_yet": "Приложения пока не подключены",
+ "mcp.no_apps_hint": "Подключите одно выше для начала.",
+ "mcp.quick_connect_title": "Доступные приложения",
+ "mcp.oauth_only_label": "В один клик",
+ "mcp.connected_status": "Подключено",
+ "mcp.no_env_vars": "Дополнительная настройка не требуется.",
+ "mcp.connected_title": "Ваши приложения",
+ "mcp.from_opencode_json": "Из конфигурации",
+ "mcp.no_servers_yet": "Приложения пока не подключены.",
+ "mcp.edit_config_title": "Редактировать файл конфигурации",
+ "mcp.edit_config_description":
+ "Приложения хранятся в файле конфигурации вашего рабочего пространства.",
+ "mcp.docs_link": "Узнать больше",
+ "mcp.scope_project": "Это рабочее пространство",
+ "mcp.scope_global": "Все рабочие пространства",
+ "mcp.config_label": "Конфигурация",
+ "mcp.config_file": "Файл конфигурации",
+ "mcp.config_not_loaded": "Ещё не загружено",
+ "mcp.open_file_label": "Открыть файл",
+ "mcp.reveal_in_finder": "Показать в Finder",
+ "mcp.opening_label": "Открытие...",
+ "mcp.file_not_found": "Файл конфигурации ещё не создан",
+ "mcp.config_load_failed": "Не удалось загрузить файл конфигурации",
+ "mcp.open_file": "Открыть файл",
+ "mcp.pick_workspace_error": "Сначала выберите папку рабочего пространства.",
+ "mcp.reveal_config_failed": "Не удалось открыть файл конфигурации",
+ "mcp.alpha_warning":
+ "Приложения в раннем доступе, пока мы улучшаем опыт.",
+ "mcp.github_issue": "Посмотреть issue #9510 на GitHub",
+ "mcp.contribution_guide":
+ "Если хотите помочь, откройте PR и включите короткое видео, показывающее端到дный поток входа.",
+ "mcp.advanced_settings": "Расширенные настройки",
+ "mcp.advanced_settings_hint":
+ "Редактируйте файлы конфигурации и управляйте подключениями вручную.",
+ "mcp.hide_advanced": "Скрыть расширенные настройки",
+ "mcp.show_advanced": "Показать расширенные настройки",
+ "mcp.mcps_label": "Приложения",
+ "mcp.mcps_description": "Подключите приложения для расширения возможностей OpenWork.",
+ "mcp.configured": "настроено",
+ "mcp.updated": "Синхронизировано",
+ "mcp.reload_required": "Требуется активация",
+ "mcp.reload_description": "Активируйте для начала использования нового подключения.",
+ "mcp.reload_engine": "Активировать",
+ "mcp.quick_connect": "Доступные приложения",
+ "mcp.oauth_only": "В один клик",
+ "mcp.connecting": "Подключение...",
+ "mcp.connect": "Подключить",
+ "mcp.connected": "Подключено",
+ "mcp.connected_label": "Подключено",
+ "mcp.no_env_required": "Дополнительная настройка не требуется.",
+ "mcp.config_source": "Из конфигурации",
+ "mcp.no_servers": "Приложения пока не подключены.",
+ "mcp.advanced": "Расширенные",
+ "mcp.advanced_description": "Для пользовательских подключений.",
+ "mcp.hide": "Скрыть",
+ "mcp.show": "Показать",
+ "mcp.server_name": "Имя приложения",
+ "mcp.server_name_placeholder": "github-copilot",
+ "mcp.server_url": "URL сервера",
+ "mcp.server_url_placeholder": "https://api.githubcopilot.com/mcp/",
+ "mcp.oauth": "Войти",
+ "mcp.api_key": "API ключ",
+ "mcp.enabled": "Включено",
+ "mcp.disabled": "Отключено",
+ "mcp.add_mcp": "Добавить приложение",
+ "mcp.verify_connection": "Тест подключения",
+ "mcp.cli_guidance": "Команда терминала (расширенный)",
+ "mcp.config_locations":
+ "Конфигурация может быть в opencode.json, opencode.jsonc или .opencode/opencode.json.",
+ "mcp.app_details": "Детали приложения",
+ "mcp.details_title": "Детали приложения",
+ "mcp.select_app_hint": "Выберите приложение для просмотра деталей.",
+ "mcp.select_server_hint": "Выберите приложение для просмотра деталей.",
+ "mcp.connection_type": "Подключение",
+ "mcp.type_cloud": "Cloud (войдите через ваш аккаунт)",
+ "mcp.type_local": "Локальное (работает на этом устройстве)",
+ "mcp.capabilities_label": "Возможности",
+ "mcp.cap_tools": "AI инструменты",
+ "mcp.cap_signin": "Вход в аккаунт",
+ "mcp.tools_enabled_label": "AI инструменты",
+ "mcp.oauth_ready_label": "Вход в аккаунт",
+ "mcp.usage_hint_text":
+ "Упомяните имя приложения в вашем запросе для использования его инструментов.",
+ "mcp.issue_label": "Проблема",
+ "mcp.technical_details": "Технические детали",
+ "mcp.next_steps_label": "Что делать",
+ "mcp.reload_step": "Активируйте после подключения нового приложения.",
+ "mcp.auth_step": "Войдите при появлении запроса.",
+ "mcp.connection_failed": "Проблема подключения — попробуйте снова",
+ "mcp.needs_auth": "Требуется вход",
+ "mcp.register_client": "Требуется настройка",
+ "mcp.status_disabled": "Приостановлено",
+ "mcp.disconnected": "Офлайн",
+ "mcp.failed": "Проблема",
+ "mcp.friendly_status_ready": "Готово",
+ "mcp.friendly_status_needs_signin": "Требуется вход",
+ "mcp.friendly_status_paused": "Приостановлено",
+ "mcp.friendly_status_offline": "Офлайн",
+ "mcp.friendly_status_issue": "Проблема",
+ "mcp.host_mode_only": "Приложения требуют десктопного приложения.",
+ "mcp.pick_workspace_first": "Сначала выберите папку рабочего пространства.",
+ "mcp.desktop_required": "Приложения требуют десктопного приложения.",
+ "mcp.connect_server_first": "Сначала подключитесь к серверу.",
+ "mcp.reload_required_after_add": "Активируйте для начала использования нового приложения.",
+ "mcp.connect_failed": "Не удалось подключиться. Попробуйте снова.",
+ "mcp.enter_name_and_url": "Введите имя приложения и URL.",
+ "mcp.enter_url_first": "Сначала введите URL.",
+ "mcp.use_debug_command": "Запустите opencode mcp debug для устранения неполадок.",
+ "mcp.add_failed": "Не удалось добавить приложение.",
+ "mcp.remove_app": "Удалить",
+ "mcp.remove_failed": "Не удалось удалить приложение.",
+ "mcp.remove_modal_title": "Удалить приложение",
+ "mcp.remove_modal_message":
+ "Вы уверены, что хотите удалить {server}? Вы всегда сможете добавить его позже.",
+
+ "settings.title": "Настройки",
+ "settings.connection": "Подключение",
+ "settings.engine_source": "Источник движка",
+ "settings.from_path": "Из PATH",
+ "settings.from_sidecar": "Встроенный сайдкар",
+ "settings.engine_source_description":
+ "PATH использует установленный OpenCode (по умолчанию). Сайдкар использует встроенный бинарный файл при наличии.",
+ "settings.sidecar_unsupported": "Сайдкар доступен на Windows",
+ "settings.sidecar_unavailable_detail": "Сайдкар поставляется при наличии.",
+ "settings.model": "Модель",
+ "settings.model_description": "Параметры по умолчанию + управление мышлением для запусков.",
+ "settings.change": "Изменить",
+ "settings.engine_path": "PATH",
+ "settings.engine_sidecar": "Сайдкар",
+ "settings.thinking": "Мышление",
+ "settings.thinking_description": "Показывать части мышления (только режим разработчика).",
+ "settings.on": "Вкл",
+ "settings.off": "Выкл",
+ "settings.model_variant": "Вариант модели",
+ "settings.edit": "Редактировать",
+ "settings.default_model": "Модель по умолчанию",
+ "settings.session_model": "Модель",
+ "settings.model_description_default":
+ "Выберите из настроенных провайдеров. Этот выбор будет использоваться для новых сессий.",
+ "settings.model_description_session":
+ "Выберите из настроенных провайдеров. Этот выбор применяется к вашему следующему сообщению.",
+ "settings.search_models": "Поиск моделей…",
+ "settings.showing_models": "Показано {count} из {total}",
+ "settings.model_variant_prompt":
+ "Вариант модели (специфичный для провайдера, например high/max/minimal). Оставьте пустым для очистки.",
+ "settings.model_fallback": "Резервный",
+ "settings.model_default": "По умолчанию",
+ "settings.model_free": "Бесплатный",
+ "settings.model_reasoning": "Рассуждение",
+ "settings.done": "Готово",
+ "settings.updates": "Обновления",
+ "settings.updates_description": "Держите OpenWork в актуальном состоянии.",
+ "settings.automatic_checks": "Автоматические проверки",
+ "settings.automatic_checks_description": "Раз в день (тихо)",
+ "settings.update_checking": "Проверка...",
+ "settings.update_available": "Доступно обновление: v",
+ "settings.update_downloading": "Загрузка...",
+ "settings.update_ready": "Готово к установке: v",
+ "settings.update_error": "Проверка обновления не удалась",
+ "settings.update_uptodate": "Актуальная версия",
+ "settings.last_checked": "Последняя проверка",
+ "settings.published": "Опубликовано",
+ "settings.check_update": "Проверить",
+ "settings.install_restart": "Установить и перезапустить",
+ "settings.update_not_supported":
+ "Обновления не поддерживаются в этой среде.",
+ "settings.update_desktop_only":
+ "Обновления доступны только в десктопном приложении.",
+ "settings.startup": "Запуск",
+ "settings.mode_label": "режим",
+ "settings.switch_mode": "Переключить",
+ "settings.reset_startup": "Сбросить режим запуска по умолчанию",
+ "settings.reset_startup_description":
+ "Это очистит ваше сохранённое предпочтение и покажет выбор режима при следующем запуске.",
+ "settings.advanced": "Расширенные",
+ "settings.advanced_description":
+ "Сбросить локальное состояние OpenWork для повторного тестирования онбординга.",
+ "settings.reset_onboarding": "Сбросить онбординг",
+ "settings.reset_onboarding_description":
+ "Очищает предпочтения OpenWork и перезапускает приложение.",
+ "settings.reset_app_data": "Сбросить данные приложения",
+ "settings.reset_app_data_description":
+ "Более агрессивно. Очищает кэш OpenWork + данные приложения.",
+ "settings.reset": "Сбросить",
+ "settings.requires_typing": "Требует ввода",
+ "settings.will_restart": "и перезапустит приложение.",
+ "settings.reset_onboarding_title": "Сбросить онбординг",
+ "settings.reset_app_data_title": "Сбросить данные приложения",
+ "settings.reset_confirmation_hint":
+ 'Введите RESET для подтверждения. OpenWork перезапустится.',
+ "settings.reset_onboarding_warning":
+ "Очищает локальные предпочтения OpenWork и маркеры онбординга рабочего пространства.",
+ "settings.reset_app_data_warning":
+ "Очищает кэш OpenWork и данные приложения на этом устройстве.",
+ "settings.reset_stop_active_runs": "Остановите активные запуски перед сбросом.",
+ "settings.reset_confirmation_label": "Подтверждение",
+ "settings.reset_confirmation_placeholder": "Введите RESET",
+ "settings.reset_cancel": "Отмена",
+ "settings.reset_confirm_button": "Сбросить и перезапустить",
+ "settings.developer": "Разработчик",
+ "settings.opencode_cache": "Кэш OpenCode",
+ "settings.opencode_cache_description":
+ "Восстанавливает кэшированные данные, используемые для запуска движка. Безопасно.",
+ "settings.repair_cache": "Восстановить кэш",
+ "settings.repairing_cache": "Восстановление кэша",
+ "settings.cache_repair_requires_desktop":
+ "Восстановление кэша требует десктопного приложения",
+ "settings.pending_permissions": "Ожидающие разрешения",
+ "settings.recent_events": "Недавние события",
+ "settings.notion_connected": "Подключено",
+ "settings.reload_required": "Требуется перезагрузка",
+ "settings.connection_failed": "Подключение не удалось",
+ "settings.notion_not_connected": "Не подключено",
+ "settings.show_thinking": "Показать мышление",
+ "settings.update": "Обновить",
+ "settings.about": "О приложении",
+ "settings.version": "Версия",
+ "settings.check_for_updates": "Проверить обновления",
+ "settings.download_update": "Загрузить обновление",
+ "settings.install_update": "Установить обновление и перезапустить",
+ "settings.enable_developer_mode": "Включить режим разработчика",
+ "settings.disable_developer_mode": "Отключить режим разработчика",
+ "settings.stop_engine": "Остановить движок",
+ "settings.disconnect": "Отключить",
+ "settings.language": "Язык",
+ "settings.language.description": "Выберите предпочитаемый язык",
+ "settings.connection_title": "Подключение",
+ "settings.engine_source_label": "Источник движка",
+ "settings.engine_source_hint":
+ "PATH использует установленный OpenCode (по умолчанию). Сайдкар использует встроенный бинарный файл при наличии.",
+ "settings.sidecar_unavailable": "Сайдкар поставляется при наличии.",
+ "settings.model_title": "Модель",
+ "settings.model_hint": "Параметры по умолчанию + управление мышлением для запусков.",
+ "settings.thinking_label": "Мышление",
+ "settings.thinking_hint": "Показывать части мышления (только режим разработчика).",
+ "settings.model_variant_label": "Вариант модели",
+ "settings.appearance_title": "Внешний вид",
+ "settings.appearance_hint": "Соответствовать системе или принудительно светлый/тёмный режим.",
+ "settings.theme_system": "Системная",
+ "settings.theme_light": "Светлая",
+ "settings.theme_dark": "Тёмная",
+ "settings.theme_system_hint":
+ "Системный режим следует предпочтениям ОС автоматически.",
+ "settings.updates_title": "Обновления",
+ "settings.updates_hint": "Держите OpenWork в актуальном состоянии.",
+ "settings.automatic_checks_label": "Автоматические проверки",
+ "settings.automatic_checks_hint": "Раз в день (тихо)",
+ "settings.last_checked_time": "Последняя проверка {time}",
+ "settings.published_date": "Опубликовано {date}",
+ "settings.update_not_supported_hint":
+ "Обновления не поддерживаются в этой среде.",
+ "settings.update_desktop_only_hint":
+ "Обновления доступны только в десктопном приложении.",
+ "settings.startup_title": "Запуск",
+ "settings.mode_suffix": "режим",
+ "settings.reset_startup_label": "Сбросить режим запуска по умолчанию",
+ "settings.reset_startup_hint":
+ "Это очистит ваше сохранённое предпочтение и покажет выбор режима при следующем запуске.",
+ "settings.advanced_title": "Расширенные",
+ "settings.advanced_hint": "Сбросить локальное состояние OpenWork для повторного тестирования онбординга.",
+ "settings.reset_onboarding_label": "Сбросить онбординг",
+ "settings.reset_onboarding_hint":
+ "Очищает предпочтения OpenWork и перезапускает приложение.",
+ "settings.reset_app_data_label": "Сбросить данные приложения",
+ "settings.reset_app_data_hint":
+ "Более агрессивно. Очищает кэш OpenWork + данные приложения.",
+ "settings.reset_requires_hint":
+ "Требует ввода RESET и перезапустит приложение.",
+ "settings.developer_title": "Разработчик",
+ "settings.opencode_cache_label": "Кэш OpenCode",
+ "settings.opencode_cache_hint":
+ "Восстанавливает кэшированные данные, используемые для запуска движка. Безопасно.",
+ "settings.pending_permissions_label": "Ожидающие разрешения",
+ "settings.recent_events_label": "Недавние события",
+ "settings.stop_active_runs_hint": "Остановите активные запуски для обновления",
+ "settings.stop_active_runs_reset_hint": "Остановите активные запуски для сброса",
+ "settings.stop_runs_to_update": "Остановите активные запуски для обновления",
+ "settings.stop_runs_to_reset": "Остановите активные запуски для сброса",
+ "settings.updates_not_supported":
+ "Обновления не поддерживаются в этой среде.",
+ "settings.updates_desktop_only":
+ "Обновления доступны только в десктопном приложении.",
+
+ "reload.toast_title": "Доступны обновления",
+ "reload.toast_description": "Перезагрузите рабочее пространство для применения изменений конфигурации.",
+ "reload.toast_warning": "Остановит все активные задачи.",
+ "reload.toast_warning_active": "Перезагрузка остановит {count} активн. задач.",
+ "reload.toast_reload": "Перезагрузить",
+ "reload.toast_reload_stopped": "Перезагрузить и остановить задачи",
+ "reload.toast_reloading": "Перезагрузка...",
+ "reload.toast_dismiss": "Позже",
+ "reload.toast_blocked_host": "Перезагрузка доступна только для локальных воркеров.",
+ "reload.toast_blocked_connect": "Подключитесь к этому рабочему пространству для перезагрузки.",
+ "reload.toast_blocked_runs":
+ "Ожидание завершения активных задач перед перезагрузкой.",
+
+ "onboarding.starting_host": "Запуск сервера OpenWork...",
+ "onboarding.searching_host": "Подключение к серверу OpenWork...",
+ "onboarding.getting_ready": "Подготовка всего необходимого",
+ "onboarding.verifying": "Проверка безопасного рукопожатия",
+ "onboarding.create_first_workspace": "Создайте ваше первое рабочее пространство",
+ "onboarding.create_workspace": "Создать рабочее пространство",
+ "onboarding.workspace_description":
+ "Выберите папку и пресет для настройки вашего рабочего пространства.",
+ "onboarding.start": "Запустить OpenWork",
+ "onboarding.back": "Назад",
+ "onboarding.advanced_settings": "Расширенные настройки",
+ "onboarding.opencode_engine": "Движок OpenCode",
+ "onboarding.refresh": "Обновить",
+ "onboarding.checking_cli": "Проверка OpenCode CLI...",
+ "onboarding.cli_not_found": "OpenCode CLI не найден.",
+ "onboarding.cli_needs_update": "OpenCode CLI требует обновления для serve.",
+ "onboarding.opencode": "OpenCode",
+ "onboarding.cli_ready": "OpenCode CLI готов.",
+ "onboarding.cli_version": "OpenCode {version}",
+ "onboarding.windows_install_instruction":
+ "Установите OpenCode для Windows, затем перезапустите OpenWork. Убедитесь, что opencode.exe в PATH.",
+ "onboarding.install_instruction":
+ "Установите OpenCode для включения локального сервера (терминал не требуется).",
+ "onboarding.install": "Установить OpenCode",
+ "onboarding.recheck": "Перепроверить",
+ "onboarding.ready_message": "OpenCode готов для запуска локального сервера.",
+ "onboarding.resolved_path": "Разрешённый путь",
+ "onboarding.version": "Версия",
+ "onboarding.search_notes": "Заметки поиска",
+ "onboarding.serve_help": "вывод serve --help",
+ "onboarding.workspace_folder_label":
+ "Рабочее пространство — это папка с собственными навыками, плагинами и командами.",
+ "onboarding.theme_label": "Тема",
+ "onboarding.theme_current": "Текущая: {mode}",
+ "onboarding.theme_system": "Системная",
+ "onboarding.theme_light": "Светлая",
+ "onboarding.theme_dark": "Тёмная",
+ "onboarding.access_label": "Доступ",
+ "onboarding.folders_allowed": "Допущено папок: {count}",
+ "onboarding.manage_access_hint":
+ "Вы можете управлять доступом в расширенных настройках.",
+ "onboarding.open_settings_hint":
+ "Нужны параметры движка или доступа? Откройте Настройки.",
+ "onboarding.open_settings": "Открыть настройки",
+ "onboarding.add_folder_path": "Добавить путь к папке",
+ "onboarding.pick": "Выбрать",
+ "onboarding.add": "Добавить",
+ "onboarding.remove": "Удалить",
+ "onboarding.cli_label": "OpenCode CLI",
+ "onboarding.cli_checking": "Проверка установки...",
+ "onboarding.cli_not_found_hint":
+ "Не найден. Установите для запуска локального сервера.",
+ "onboarding.cli_version_installed": "Установлено",
+ "onboarding.cli_recheck": "Перепроверить",
+ "onboarding.cli_install_commands":
+ "Установите OpenCode одной из команд ниже, затем перезапустите OpenWork.",
+ "onboarding.show_search_notes": "Показать заметки поиска",
+ "onboarding.last_checked": "Последняя проверка {time}",
+ "onboarding.server_url_placeholder": "http://localhost:8088",
+ "onboarding.directory_placeholder": "my-project",
+ "onboarding.connect_host": "Подключиться к серверу",
+ "onboarding.connect_description":
+ "Подключитесь к существующему серверу OpenCode (LAN или туннель).",
+ "onboarding.server_url": "URL сервера",
+ "onboarding.directory": "Директория (необязательно)",
+ "onboarding.directory_hint": "Используйте, если ваш сервер запускает несколько воркеров.",
+ "onboarding.connect": "Подключить",
+ "onboarding.remote_workspace_title": "Подключение к серверу OpenWork",
+ "onboarding.remote_workspace_description":
+ "Подключитесь к серверу OpenWork для доступа к рабочему пространству из любого места.",
+ "onboarding.remote_workspace_action": "Подключить",
+ "onboarding.remote_workspace_card_title": "Подключить удалённое рабочее пространство",
+ "onboarding.remote_workspace_card_description":
+ "Подключитесь к серверу OpenWork для доступа к общему рабочему пространству.",
+ "onboarding.advanced_openwork_host": "Сервер OpenWork",
+ "onboarding.advanced_openwork_hint":
+ "Используйте URL сервера и токен доступа для общего доступа.",
+ "onboarding.advanced_opencode_direct": "Расширенный: OpenCode напрямую",
+ "onboarding.advanced_opencode_hint":
+ "Подключитесь напрямую к движку OpenCode, если сервер недоступен.",
+ "onboarding.welcome_title": "Как вы хотите запустить OpenWork сегодня?",
+ "onboarding.run_local": "Запустить локально",
+ "onboarding.run_local_description":
+ "OpenWork запускает OpenCode локально и сохраняет вашу работу в приватности.",
+ "onboarding.engine_running": "Движок уже запущен",
+ "onboarding.attach_description":
+ "Подключитесь к существующей сессии на этом устройстве.",
+ "onboarding.attach": "Подключить",
+ "onboarding.remember_choice": "Запомнить мой выбор в следующий раз",
+ "onboarding.client_mode": "Подключить как клиент (удалённая связка)",
+ "onboarding.default_workspace_path": "~/OpenWork/Worker",
+ "onboarding.authorize_folder": "Авторизовать папку",
+ "onboarding.choose_workspace_folder": "Выберите папку рабочего пространства",
+
+ "common.alpha": "Alpha",
+ "common.change": "Изменить",
+ "common.refresh": "Обновить",
+ "common.new": "Создать",
+ "common.install": "Установить",
+ "common.delete": "Удалить",
+ "common.edit": "Редактировать",
+ "common.save": "Сохранить",
+ "common.cancel": "Отмена",
+ "common.close": "Закрыть",
+ "common.open": "Открыть",
+ "common.show": "Показать",
+ "common.hide": "Скрыть",
+ "common.path": "Путь",
+ "common.choose": "Выбрать",
+ "common.retry": "Повторить",
+ "common.untitled": "Без имени",
+ "common.default_parens": "(по умолчанию)",
+ "common.on": "Вкл",
+ "common.off": "Выкл",
+
+ "status.connected": "Подключено",
+ "status.disconnected": "Отключено",
+ "status.idle": "Ожидание",
+ "status.busy": "Занят",
+ "status.running": "Выполняется",
+ "status.live": "Live",
+ "status.connecting": "Подключение",
+ "status.creating_workspace": "Создание рабочего пространства",
+ "status.deleting_command": "Удаление команды",
+ "status.saving_workspace_command": "Сохранение команды рабочего пространства",
+ "status.saving_command": "Сохранение команды",
+ "status.loading_session": "Загрузка сессии",
+ "status.creating_task": "Создание новой задачи",
+ "status.starting_engine": "Запуск движка",
+ "status.reloading_engine": "Перезагрузка движка",
+ "status.restarting_engine": "Перезапуск движка",
+ "status.installing_opencode": "Установка OpenCode",
+ "status.disconnecting": "Отключение",
+
+ "workspace.switching_title": "Открытие {name}",
+ "workspace.switching_title_unknown": "Открытие рабочего пространства",
+ "workspace.switching_subtitle": "Мы восстановим вашу недавнюю работу.",
+ "workspace.switching_status_preparing": "Подготовка",
+ "workspace.switching_status_connecting": "Проверка подключения",
+ "workspace.switching_status_loading": "Загрузка недавних задач",
+ "workspace.switching_status_almost": "Почти готово",
+
+ "app.connection_lost": "Соединение с сервером потеряно. Перезагрузите.",
+ "app.unknown_error": "Неизвестная ошибка",
+ "app.error.tauri_required": "Это действие требует среды выполнения Tauri.",
+ "app.error.choose_folder": "Выберите папку для продолжения.",
+ "app.error.pick_workspace_folder": "Сначала выберите папку рабочего пространства.",
+ "app.error.remote_base_url_required": "Добавьте URL сервера для продолжения.",
+ "app.error.host_requires_local":
+ "Выберите локальное рабочее пространство для запуска движка.",
+ "app.error.sidecar_unsupported_windows":
+ "Sidecar OpenCode поставляется с Windows. Возврат к PATH.",
+ "app.error.install_failed": "Установка OpenCode не удалась. См. логи выше.",
+ "app.error.command_name_template_required":
+ "Требуется имя команды и инструкции.",
+ "app.error.workspace_commands_desktop": "Команды требуют десктопного приложения.",
+ "app.error.command_scope_unknown":
+ "Эту команду нельзя управлять в данном режиме.",
+
+ "app.shared_setup": "Общая настройка",
+ "app.skill_added": "Навык добавлен",
+ "app.worker_fallback": "Воркер",
+ "app.local_worker_detail": "Локальный воркер",
+ "app.remote_worker_detail": "Удалённый воркер",
+ "app.import_shared_bundle": "Импортировать общий пакет",
+ "app.import_bundle_desc": "Выберите способ импорта этого пакета.",
+ "app.local_disabled_reason":
+ "Создавайте локальные рабочие пространства в десктопном приложении. Удалённые и общие пространства работают здесь.",
+ "app.reload_stop_tasks": "Перезагрузить и остановить задачи",
+ "app.reload_now": "Перезагрузить сейчас",
+ "app.reload_later": "Позже",
+ "app.error_request_failed": "Запрос не удался",
+ "app.error_command_not_resolved": "Команда не была разрешена.",
+ "app.error_auth_failed": "Аутентификация не удалась",
+ "app.error_rate_limit": "Превышен лимит запросов",
+ "app.error_compact_no_session":
+ "Выберите сессию с сообщениями перед запуском /compact.",
+ "app.error_not_connected": "Нет подключения к серверу",
+ "app.error_compact_no_session_id": "Выберите сессию перед сжатием.",
+ "app.error_compact_empty": "Сжимать пока нечего.",
+ "app.error_session_name_required": "Требуется имя сессии",
+ "app.error_audit_load": "Не удалось загрузить журнал аудита.",
+ "app.error_restart_local_worker":
+ "Не удалось перезапустить локальный воркер с обновлённой настройкой общего доступа.",
+ "app.error_remote_access": "Не удалось обновить удалённый доступ.",
+ "app.error_deep_link_unrecognized":
+ "Эта ссылка не является распознаваемой глубокой ссылкой OpenWork или URL общего доступа.",
+ "app.deep_link_auth_queued": "В очередь добавлена глубокая ссылка Cloud auth для OpenWork.",
+ "app.deep_link_remote_queued":
+ "В очередь добавлена ссылка удалённого воркера. OpenWork должен перейти к потоку подключения.",
+ "app.error_desktop_signin":
+ "Вход через десктоп завершён, но OpenWork Cloud не вернул токен сессии.",
+ "app.error_cloud_signin": "Не удалось завершить вход в OpenWork Cloud.",
+ "app.error_pick_local_folder":
+ "Выберите папку локального воркера перед перезапуском локального сервера.",
+ "app.error_connect_first":
+ "Подключитесь к этому воркеру перед применением изменений среды выполнения.",
+ "app.error_runtime_changes": "Не удалось применить изменения среды выполнения.",
+ "app.reset_config_ok":
+ "Сброшены настройки приложения по умолчанию. Перезапустите OpenWork, если остались устаревшие настройки.",
+ "app.error_reset_config": "Не удалось сбросить настройки приложения по умолчанию.",
+ "app.model_behavior_title": "Поведение модели",
+ "app.model_behavior_desc":
+ "Сначала выберите модель, чтобы увидеть элементы управления поведением провайдера.",
+ "app.error_update_opencode_json": "Не удалось обновить opencode.json",
+ "app.error_auto_compact_scope":
+ "Автосжатие контекста можно изменить только для локального рабочего пространства или записываемого рабочего пространства сервера OpenWork.",
+ "app.skills_hint_disconnected":
+ "Сервер OpenWork недоступен. Добавьте URL/токен сервера в Расширенных для управления навыками.",
+ "app.skills_hint_limited":
+ "Сервер OpenWork требует токен хоста для установки/обновления навыков. Добавьте его в Расширенных и переподключитесь.",
+ "app.skills_hint_readonly":
+ "Сервер OpenWork доступен только для чтения для навыков. Добавьте токен хоста в Расширенных для включения установки.",
+ "app.plugins_hint_disconnected":
+ "Сервер OpenWork недоступен. Плагины доступны только для чтения.",
+ "app.plugins_hint_limited": "Сервер OpenWork требует токен для редактирования плагинов.",
+ "app.plugins_hint_readonly": "Сервер OpenWork доступен только для чтения для плагинов.",
+ "app.compact_command_desc": "Суммируйте эту сессию для уменьшения размера контекста.",
+ "app.error_connection_failed_url":
+ "Подключение не удалось. Проверьте URL и токен.",
+ "app.error_connection_failed": "Подключение не удалось",
+
+ "status.openwork_ready": "OpenWork готов",
+ "status.limited_mode": "Ограниченный режим",
+ "status.disconnected_label": "Отключено",
+ "status.ready_for_tasks": "Готово к новым задачам",
+ "status.developer_mode": "Режим разработчика",
+ "status.providers_connected": "{count} провайдер{plural} подключен",
+ "status.mcp_connected": "{count} MCP подключен",
+ "status.limited_hint": "Переподключитесь для восстановления всех функций OpenWork",
+ "status.limited_mcp_hint":
+ "{count} MCP подключен · переподключитесь для всех функций",
+ "status.disconnected_hint": "Откройте настройки для переподключения",
+ "status.back": "Назад к предыдущему экрану",
+ "status.feedback": "Обратная связь",
+ "status.send_feedback": "Отправить отзыв",
+ "status.settings": "Настройки",
+
+ "message.waiting_subagent": "Ожидание загрузки транскрипта субагента.",
+ "message.tool_request_label": "Запрос",
+ "message.tool_result_label": "Результат",
+
+ "message_list.copy_message": "Копировать сообщение",
+
+ "composer.no_matches": "Совпадений не найдено.",
+ "composer.loading_agents": "Загрузка агентов...",
+ "composer.run_task": "Запустить задачу",
+ "composer.stop": "Остановить",
+ "composer.agent_label": "Агент",
+ "composer.default_agent": "Агент по умолчанию",
+ "composer.loading_commands": "Загрузка команд...",
+ "composer.no_commands": "Команды не найдены.",
+ "composer.configure": "Настроить",
+ "composer.tools_label": "Команды, навыки и MCP",
+ "composer.mcps_label": "MCP",
+ "composer.skill_source": "Навык",
+ "composer.attach_files": "Прикрепить файлы",
+ "composer.image_kind": "Изображение",
+ "composer.file_kind": "Файл",
+ "composer.expand_pasted": "Нажмите для развёртывания вставленного текста",
+ "composer.failed_read_attachment": "Не удалось прочитать вложение",
+ "composer.attachments_unavailable": "Вложения недоступны.",
+ "composer.file_exceeds_limit": "{name} превышает лимит 8МБ.",
+ "composer.file_too_large_encoding":
+ "{name} слишком большой после кодирования. Попробуйте изображение поменьше.",
+ "composer.uploaded_single_file":
+ "Загружено {name} в общую папку и вставлена ссылка.",
+ "composer.uploaded_multiple_files":
+ "Загружено {count} файл. в общую папку и вставлены ссылки.",
+ "composer.upload_failed_local_links":
+ "Не удалось загрузить в общую папку. Вставлены локальные ссылки.",
+ "composer.unsupported_attachment_type": "Неподдерживаемый тип вложения.",
+ "composer.inserted_links_unsupported":
+ "Вставлены ссылки для неподдерживаемых файлов.",
+ "composer.remote_worker_paste_warning":
+ "Это удалённый воркер. Песочницы тоже удалённые. Для обмена файлами загрузите их в общую папку на боковой панели.",
+ "composer.upload_to_shared_folder": "Загрузить в общую папку",
+ "composer.placeholder": "Опишите вашу задачу...",
+ "composer.behavior_label": "Поведение",
+
+ "context_panel.context": "Контекст",
+ "context_panel.working_files": "Рабочие файлы",
+ "context_panel.plugins": "Плагины",
+ "context_panel.no_plugins": "Плагины не загружены.",
+ "context_panel.mcp": "MCP",
+ "context_panel.no_mcp": "Серверы MCP не загружены.",
+ "context_panel.skills": "Навыки",
+ "context_panel.no_skills": "Навыки не загружены.",
+ "context_panel.authorized_folders": "Авторизованные папки",
+ "context_panel.none_yet": "Пока нет.",
+ "context_panel.mcp_disabled": "Отключено",
+ "context_panel.mcp_disconnected": "Отключено",
+ "context_panel.mcp_connected": "Подключено",
+ "context_panel.mcp_needs_auth": "Требуется аутентификация",
+ "context_panel.mcp_register_client": "Зарегистрировать клиент",
+ "context_panel.mcp_failed": "Ошибка",
+ "context_panel.open_file": "Открыть {path}",
+
+ "inbox_panel.shared_folder": "Общая папка",
+ "inbox_panel.refresh_tooltip": "Обновить общую папку",
+ "inbox_panel.uploading": "Загрузка...",
+ "inbox_panel.upload_prompt": "Перетащите файлы или нажмите для загрузки",
+ "inbox_panel.helper_text": "Поделитесь файлами с этим воркером из приложения.",
+ "inbox_panel.connect_to_see": "Подключитесь для просмотра общих файлов.",
+ "inbox_panel.no_files": "Общих файлов пока нет.",
+ "inbox_panel.showing_first": "Показаны первые {count}.",
+ "inbox_panel.upload_needs_worker":
+ "Подключитесь к воркеру для загрузки файлов в общую папку.",
+ "inbox_panel.uploading_label": "Загрузка {label}...",
+ "inbox_panel.upload_success": "Загружено в общую папку.",
+ "inbox_panel.upload_failed": "Загрузка в общую папку не удалась",
+ "inbox_panel.copy_failed":
+ "Копирование не удалось. Ваш браузер может блокировать доступ к буферу обмена.",
+ "inbox_panel.connect_to_download":
+ "Подключитесь к воркеру для загрузки общих файлов.",
+ "inbox_panel.missing_file_id": "Отсутствует id общего файла.",
+ "inbox_panel.download": "Скачать",
+ "inbox_panel.load_failed": "Не удалось загрузить общую папку",
+ "inbox_panel.drop_to_upload": "Перетащите файлы сюда для загрузки",
+ "inbox_panel.connect_to_upload": "Подключитесь к воркеру для загрузки",
+
+ "sidebar.no_workspaces":
+ "Рабочих пространств в этой сессии пока нет. Добавьте одно для начала.",
+ "sidebar.needs_attention": "Требует внимания",
+ "sidebar.active": "Активно",
+ "sidebar.switch": "Переключить",
+ "sidebar.expand": "Развернуть",
+ "sidebar.collapse": "Свернуть",
+ "sidebar.drag_reorder": "Перетащите для изменения порядка",
+ "sidebar.edit_connection": "Редактировать подключение",
+ "sidebar.test_connection": "Тест подключения",
+ "sidebar.stop_sandbox": "Остановить песочницу",
+ "sidebar.remove_workspace": "Удалить рабочее пространство",
+ "sidebar.show_fewer": "Показать меньше",
+ "sidebar.show_more": "Показать ещё {count}",
+ "sidebar.add_workspace": "Добавить новое рабочее пространство",
+ "sidebar.new_worker": "Новый воркер",
+ "sidebar.connect_remote": "Подключить удалённое",
+ "sidebar.import_config": "Импортировать конфигурацию",
+ "sidebar.progress": "Прогресс",
+ "sidebar.delete_session": "Удалить сессию",
+ "sidebar.no_sessions_yet": "Сессий пока нет",
+
+ "workspace_list.connecting": "Подключение...",
+ "workspace_list.workspace_fallback": "Рабочее пространство",
+ "workspace_list.reveal_explorer": "Показать в Проводнике",
+ "workspace_list.reveal_finder": "Показать в Finder",
+ "workspace_list.show_more": "Показать ещё {count}",
+ "workspace_list.show_more_fallback": "Показать ещё",
+ "workspace_list.workspace_options": "Параметры рабочего пространства",
+ "workspace_list.session_actions": "Действия сессии",
+ "workspace_list.hide_child_sessions": "Скрыть дочерние сессии",
+ "workspace_list.show_child_sessions": "Показать дочерние сессии",
+ "workspace_list.edit_name": "Редактировать имя",
+ "workspace_list.share": "Поделиться...",
+ "workspace_list.recover": "Восстановить",
+ "workspace_list.test_connection": "Тест подключения",
+ "workspace_list.edit_connection": "Редактировать подключение",
+ "workspace_list.remove_workspace": "Удалить рабочее пространство",
+ "workspace_list.rename_session": "Переименовать сессию",
+ "workspace_list.delete_session": "Удалить сессию",
+ "workspace_list.add_workspace": "Добавить рабочее пространство",
+ "workspace_list.new_workspace": "Новое рабочее пространство",
+ "workspace_list.connect_remote": "Подключить удалённое рабочее пространство",
+ "workspace_list.import_config": "Импортировать конфигурацию",
+ "workspace_list.desktop_only_hint":
+ "Создавайте локальные рабочие пространства в десктопном приложении.",
+
+ "workspace.sandbox_badge": "Песочница",
+ "workspace.remote_badge": "Удалённое",
+ "workspace.local_badge": "Локальное",
+
+ "workspace_sidebar.configuration": "конфигурация",
+ "workspace_sidebar.close_sidebar": "Закрыть боковую панель",
+ "workspace_sidebar.collapse_sidebar": "Свернуть боковую панель",
+ "workspace_sidebar.expand_sidebar": "Развернуть боковую панель",
+ "workspace_sidebar.automations": "Автоматизации",
+ "workspace_sidebar.extensions": "Расширения",
+ "workspace_sidebar.messaging": "Обмен сообщениями",
+
+ "common.unknown": "Неизвестно",
+
+ "den.cloud_section_title": "OpenWork Cloud",
+ "den.cloud_section_desc":
+ "Войдите, выберите организацию и откройте Cloud воркеры или командные шаблоны.",
+ "den.cloud_sleep_hint":
+ "Войдите в OpenWork Cloud, чтобы задачи работали даже в спящем режиме компьютера.",
+ "den.cloud_control_plane_url_label": "URL управляющей плоскости Cloud",
+ "den.cloud_control_plane_url_hint":
+ "Только режим разработчика. Используйте для локальной или саморазмещённой управляющей плоскости Cloud. Изменение выйдет из системы, чтобы приложение могло обновиться относительно новой плоскости.",
+ "den.cloud_control_plane_reset": "Сбросить",
+ "den.cloud_control_plane_save": "Сохранить URL",
+ "den.cloud_control_plane_open": "Открыть в браузере",
+ "den.signin_title": "Вход в OpenWork Cloud",
+ "den.signin_button": "Войти",
+ "den.create_account": "Создать аккаунт",
+ "den.hide_signin_code": "Скрыть код входа",
+ "den.paste_signin_code": "Вставить код входа",
+ "den.signin_link_label": "Ссылка для входа или одноразовый код",
+ "den.signin_link_placeholder": "openwork://den-auth?... или вставленный код",
+ "den.signin_link_hint":
+ "Если ваш браузер не возвращается в OpenWork автоматически, вставьте ссылку для входа или одноразовый код из OpenWork Cloud здесь.",
+ "den.finishing": "Завершение...",
+ "den.finish_signin": "Завершить вход",
+ "den.signin_code_note":
+ "Принимает ссылку openwork://den-auth или одноразовый грант.",
+ "den.auto_reconnect_hint":
+ "Завершите аутентификацию в браузере, и OpenWork автоматически переподключится здесь.",
+ "den.cloud_account_title": "Аккаунт Cloud",
+ "den.cloud_account_hint": "Управляйте подключённым аккаунтом и организацией.",
+ "den.signing_out": "Выход...",
+ "den.sign_out": "Выйти",
+ "den.active_org_title": "Активная организация",
+ "den.active_org_hint":
+ "Cloud воркеры и командные шаблоны привязаны к выбранной организации.",
+ "den.no_org_selected": "Организация не выбрана",
+ "den.needs_attention": "Требует внимания",
+ "den.checking_session": "Проверка сессии",
+ "den.signed_out": "Вышли из системы",
+ "den.cloud_workers_title": "Cloud воркеры",
+ "den.cloud_workers_hint":
+ "Открывайте воркеры напрямую в OpenWork, используя тот же поток удалённого подключения, что и в других местах приложения.",
+ "den.refresh": "Обновить",
+ "den.no_cloud_workers":
+ "Cloud воркеры пока не видны для этой организации. Создайте один в Cloud, затем обновите эту вкладку.",
+ "den.worker_mine_badge": "Мой",
+ "den.worker_secondary_cloud": "Cloud воркер",
+ "den.worker_not_ready_title": "Этот воркер пока не готов к открытию.",
+ "den.open": "Открыть",
+ "den.opening": "Открытие...",
+ "den.team_templates_title": "Командные шаблоны",
+ "den.team_templates_hint":
+ "Откройте переиспользуемые шаблоны рабочих пространств, которыми поделились с этой организацией.",
+ "den.team_template_badge": "Командный шаблон",
+ "den.no_team_templates":
+ "Командных шаблонов пока нет. Используйте Поделиться → Шаблон → Поделиться с командой.",
+ "den.choose_org_for_templates": "Выберите организацию для просмотра командных шаблонов.",
+ "den.error_base_url":
+ "Введите корректный URL управляющей плоскости Cloud http:// или https://.",
+ "den.error_choose_org": "Выберите организацию перед открытием воркера.",
+ "den.error_worker_not_ready":
+ "Воркер пока не готов к открытию. Попробуйте снова после завершения подготовки.",
+ "den.error_load_orgs": "Не удалось загрузить организации.",
+ "den.error_load_workers": "Не удалось загрузить воркеры.",
+ "den.error_load_templates": "Не удалось загрузить командные шаблоны.",
+ "den.error_no_session": "Активная Cloud сессия не найдена.",
+ "den.error_paste_valid_code":
+ "Вставьте корректную ссылку для входа или одноразовый код входа OpenWork.",
+ "den.error_signin_failed": "Не удалось завершить вход в OpenWork Cloud.",
+ "den.error_no_token":
+ "Вход через десктоп завершён, но OpenWork Cloud не вернул токен сессии.",
+ "den.status_browser_signin":
+ "Завершите вход в браузере для подключения OpenWork.",
+ "den.status_browser_signup":
+ "Завершите создание аккаунта в браузере для подключения OpenWork.",
+ "den.status_cloud_signin_done": "OpenWork Cloud подключён.",
+ "den.status_base_url_updated":
+ "Обновлён URL управляющей плоскости Cloud. Войдите снова для продолжения.",
+ "den.status_signed_out":
+ "Вышли из системы и очистили сессию OpenWork Cloud на этом устройстве.",
+ "den.status_signed_in_as": "Вошли как {email}.",
+ "den.status_cloud_signed_in_as": "Подключён OpenWork Cloud как {email}.",
+ "den.status_loaded_orgs": "Загружено организаций: {count}.",
+ "den.status_loaded_workers": "Загружено воркеров для {name}: {count}.",
+ "den.status_no_workers": "Воркеры для {name} не найдены.",
+ "den.status_loaded_templates": "Загружено шаблонов для {name}: {count}.",
+ "den.status_no_templates": "Командные шаблоны для {name} не найдены.",
+ "den.status_opened_worker": "Открыто {name} в OpenWork.",
+ "den.status_opened_template": "Открыто {name} из {org}.",
+ "den.status_opened_template_fallback": "Открыто {name} из командных шаблонов.",
+ "den.signing_in": "Завершение входа в OpenWork Cloud...",
+ "den.org_switched": "Переключено на {name}.",
+ "den.org_owner_suffix": "(Владелец)",
+ "den.org_member_suffix": "(Участник)",
+ "den.worker_provider_label": "{provider} воркер",
+ "den.error_open_worker": "Не удалось открыть {name} в OpenWork.",
+ "den.error_open_worker_fallback": "Не удалось открыть {name}.",
+ "den.error_open_template": "Не удалось открыть {name}.",
+
+ "dashboard.recently_updated": "Недавно обновлено",
+ "dashboard.unknown_creator": "Неизвестный создатель",
+ "dashboard.cloud_worker": "Cloud воркер",
+ "dashboard.access_token": "Токен доступа",
+ "dashboard.create_local_workspace_title": "Локальное рабочее пространство",
+ "dashboard.create_local_workspace_subtitle":
+ "Создайте рабочее пространство на этом устройстве и опционально начните с командного шаблона.",
+ "dashboard.create_remote_custom_title": "Подключить пользовательский удалённый",
+ "dashboard.create_remote_custom_subtitle":
+ "Подключитесь к саморазмещённому воркеру OpenWork.",
+ "dashboard.create_shared_title": "Общие рабочие пространства",
+ "dashboard.create_shared_subtitle_signed_in":
+ "Просматривайте Cloud воркеры, которыми поделились с вашей организацией, и подключайтесь в один шаг.",
+ "dashboard.create_shared_subtitle_signed_out":
+ "Войдите в OpenWork Cloud для доступа к воркерам, которыми поделились с вашей организацией.",
+ "dashboard.chooser_local_desc":
+ "Создайте рабочее пространство на этом устройстве и опционально начните с командного шаблона.",
+ "dashboard.chooser_remote_desc":
+ "Подключитесь к саморазмещённому воркеру OpenWork, используя URL и токен доступа.",
+ "dashboard.chooser_shared_desc":
+ "Просматривайте Cloud воркеры, которыми поделились с вашей организацией, и подключайтесь в один шаг.",
+ "dashboard.workspace_folder_title": "Папка рабочего пространства",
+ "dashboard.workspace_folder_hint":
+ "Выберите, где этому рабочему пространству находиться на вашем устройстве.",
+ "dashboard.no_folder_selected": "Папка ещё не выбрана.",
+ "dashboard.team_templates_title": "Командные шаблоны",
+ "dashboard.team_templates_hint":
+ "Выберите отправную точку или оставьте пустым для создания пустого рабочего пространства.",
+ "dashboard.team_templates_syncing": "Синхронизация",
+ "dashboard.team_templates_none":
+ "Общие шаблоны рабочих пространств для этой организации не найдены.",
+ "dashboard.template_selected_badge": "Выбрано",
+ "dashboard.remote_server_details_title": "Детали удалённого сервера",
+ "dashboard.remote_server_details_hint":
+ "Подключитесь к саморазмещённому воркеру OpenWork.",
+ "dashboard.worker_url_label": "URL воркера",
+ "dashboard.worker_url_hint":
+ "Вставьте URL воркера OpenWork, к которому хотите подключиться.",
+ "dashboard.access_token_optional_hint":
+ "Добавьте токен только если воркер его требует.",
+ "dashboard.display_name_label": "Отображаемое имя",
+ "dashboard.display_name_optional": "(необязательно)",
+ "dashboard.cloud_signin_title": "Вход в OpenWork Cloud",
+ "dashboard.cloud_signin_hint":
+ "Доступ к удалённым воркерам, которыми поделились с вашей организацией.",
+ "dashboard.cloud_signin_button": "Продолжить с Cloud",
+ "dashboard.cloud_signin_next":
+ "Далее вы выберете команду и подключитесь к существующему рабочему пространству.",
+ "dashboard.worker_status_ready": "Готово",
+ "dashboard.worker_status_starting": "Запуск",
+ "dashboard.worker_status_attention": "Внимание",
+ "dashboard.worker_status_stopped": "Остановлен",
+ "dashboard.worker_status_unknown": "Неизвестно",
+ "dashboard.error_choose_org":
+ "Выберите организацию перед открытием рабочего пространства.",
+ "dashboard.error_load_orgs": "Не удалось загрузить организации.",
+ "dashboard.error_load_shared_workspaces": "Не удалось загрузить общие рабочие пространства.",
+ "dashboard.error_workspace_not_ready":
+ "Рабочее пространство пока не готово к подключению. Попробуйте снова через мгновение.",
+ "dashboard.error_connect_worker": "Не удалось подключиться к {name}.",
+ "dashboard.error_create_template": "Не удалось создать {name}.",
+ "dashboard.desktop_badge": "Десктоп",
+ "dashboard.import_config": "Импортировать конфигурацию",
+ "dashboard.importing": "Импорт\u2026",
+ "dashboard.search_shared_workspaces": "Поиск общих рабочих пространств",
+ "dashboard.shared_workspaces_loading": "Загрузка общих рабочих пространств\u2026",
+ "dashboard.shared_workspaces_no_match":
+ "Общие рабочие пространства не соответствуют поиску.",
+ "dashboard.shared_workspaces_none": "Общих рабочих пространств пока нет.",
+ "dashboard.workspace_connecting": "Подключение",
+ "dashboard.workspace_connect": "Подключить",
+ "dashboard.workspace_connect_unavailable":
+ "Подключение общих рабочих пространств здесь недоступно.",
+ "dashboard.workspace_not_ready_title":
+ "Это рабочее пространство пока не готово к подключению.",
+ "dashboard.shared_workspaces_refreshing": "Обновление рабочих пространств\u2026",
+ "dashboard.open_cloud_dashboard": "Открыть панель Cloud",
+ "dashboard.sandbox_setup": "Настройка песочницы",
+ "dashboard.sandbox_hide_logs": "Скрыть логи",
+ "dashboard.sandbox_show_logs": "Показать логи",
+ "dashboard.sandbox_live_logs": "Логи в реальном времени",
+ "dashboard.docker_debug_details": "Детали отладки Docker",
+ "dashboard.creating": "Создание...",
+ "dashboard.connect_remote_button": "Подключить удалённое",
+ "dashboard.connecting": "Подключение...",
+ "dashboard.modal_back": "Назад",
+ "dashboard.modal_close": "Закрыть модальное окно добавления рабочего пространства",
+
+ "den_settings.title": "Cloud",
+ "den_settings.sign_in": "Войти",
+ "den_settings.sign_out": "Выйти",
+ "den_settings.sign_in_hint":
+ "Войдите в OpenWork Cloud для доступа к общим рабочим пространствам и командным функциям.",
+ "den_settings.signed_in_as": "Вошли как",
+ "den_settings.manage_account": "Управление аккаунтом",
+ "den_settings.workers_title": "Общие рабочие пространства",
+ "den_settings.workers_hint":
+ "Cloud рабочие пространства, которыми поделились с вашей организацией.",
+ "den_settings.no_workers": "Общие рабочие пространства не найдены.",
+ "den_settings.open_workspace": "Открыть рабочее пространство",
+ "den_settings.refresh": "Обновить",
+
+ "share.title": "Поделиться рабочим пространством",
+ "share.workspace_fallback": "Рабочее пространство",
+ "share.field_password": "Пароль",
+ "share.field_worker_url": "URL воркера",
+ "share.hide_password": "Скрыть пароль",
+ "share.reveal_password": "Показать пароль",
+ "share.copy_hint": "Копировать",
+ "share.copy_link_hint": "Копировать ссылку",
+ "share.close_hint": "Закрыть",
+ "share.back_hint": "Назад к параметрам общего доступа",
+ "share.publishing": "Публикация...",
+ "share.included_in_template": "Включено в этот шаблон",
+ "share.template_item_settings": "Настройки рабочего пространства",
+ "share.template_item_settings_desc":
+ "Профиль общего рабочего пространства и поведение по умолчанию.",
+ "share.template_item_skills": "Включённые навыки",
+ "share.template_item_skills_desc": "Пользовательские навыки, сохранённые в этом рабочем пространстве.",
+ "share.template_item_config": "Команды и конфигурация",
+ "share.template_item_config_desc":
+ "Переиспользуемые команды плюс конфигурация OpenWork/OpenCode.",
+ "share.view_template": "Поделиться шаблоном",
+ "share.view_template_public": "Публичный шаблон",
+ "share.view_template_team": "Поделиться с командой",
+ "share.view_access": "Удалённый доступ к рабочему пространству",
+ "share.option_template_title": "Поделиться шаблоном",
+ "share.option_template_desc":
+ "Упакуйте эту настройку, чтобы кто-то другой мог начать с того же окружения.",
+ "share.option_access_title": "Удалённый доступ к рабочему пространству",
+ "share.option_access_desc":
+ "Покажите детали подключения для доступа к этому работающему рабочему пространству с другой машины.",
+ "share.template_intro":
+ "Поделитесь переиспользуемой настройкой без предоставления прямого доступа к этому работающему рабочему пространству.",
+ "share.option_team_title": "Поделиться с командой",
+ "share.option_team_desc":
+ "Сохраните этот шаблон рабочего пространства в вашу активную организацию OpenWork Cloud.",
+ "share.option_public_title": "Публичный шаблон",
+ "share.option_public_desc":
+ "Создайте ссылку, которую любой сможет использовать для старта с этого шаблона.",
+ "share.public_intro": "Поделитесь этим рабочим пространством как публичной ссылкой на шаблон.",
+ "share.workspace_template_title": "Шаблон рабочего пространства",
+ "share.workspace_template_desc":
+ "Поделитесь базовой настройкой и значениями рабочего пространства по умолчанию.",
+ "share.create_template_link": "Создать ссылку на шаблон",
+ "share.regenerate_link": "Пересоздать ссылку",
+ "share.team_intro":
+ "Сохраните этот шаблон в вашу активную организацию OpenWork Cloud, чтобы коллеги могли открыть его позже из настроек Cloud.",
+ "share.active_cloud_org": "Активная организация Cloud",
+ "share.template_name_label": "Имя шаблона",
+ "share.sign_in_to_share": "Войдите, чтобы поделиться с командой",
+ "share.saving": "Сохранение...",
+ "share.save_to_team": "Сохранить для команды",
+ "share.cloud_signin_note":
+ "OpenWork Cloud откроется в вашем браузере и вернётся сюда после входа.",
+ "share.warning_basic":
+ "Делитесь только с доверенными людьми. Эти учётные данные предоставляют прямой доступ к этому рабочему пространству.",
+ "share.warning_full":
+ "Эти учётные данные предоставляют прямой доступ к этому рабочему пространству. Удалённый доступ к этому рабочему пространству может позволить любому, имеющему доступ к вашей сети, управлять вашим воркером.",
+ "share.remote_access_title": "Удалённый доступ",
+ "share.remote_access_desc":
+ "Отключено по умолчанию. Включайте только когда нужен доступ к этому воркеру с другой машины.",
+ "share.remote_access_enabled": "Удалённый доступ сейчас включён.",
+ "share.remote_access_disabled": "Удалённый доступ сейчас отключён.",
+ "share.remote_save_busy": "Сохранение...",
+ "share.remote_save": "Сохранить",
+ "share.credentials_disabled_hint":
+ "Включите удалённый доступ и нажмите Сохранить для перезапуска воркера и отображения деталей подключения для этого рабочего пространства.",
+ "share.connection_details_label": "Детали подключения",
+ "share.connect_messaging_title": "Подключить обмен сообщениями",
+ "share.connect_messaging_desc":
+ "Используйте это рабочее пространство из Slack, Telegram и других.",
+ "share.setup": "Настройка",
+ "share.optional_collaborator": "Необязательный доступ соавтора",
+ "share.collaborator_hint": "Обычный доступ без одобрения разрешений.",
+ "share.chooser_subtitle": "Выберите, как вы хотите поделиться этим рабочим пространством.",
+ "share.subtitle_template_public":
+ "Создайте публичную ссылку на шаблон рабочего пространства, которую любой сможет импортировать.",
+ "share.subtitle_template_team":
+ "Сохраните шаблон рабочего пространства в вашу активную организацию OpenWork Cloud.",
+ "share.subtitle_access":
+ "Отобразите детали подключения для доступа к этому рабочему пространству с другой машины.",
+
+ "scheduled.title": "Автоматизации",
+ "extensions.title": "Расширения",
+ "settings.tab_automations": "Автоматизации",
+ "settings.tab_skills": "Навыки",
+ "settings.tab_extensions": "Расширения",
+ "settings.tab_messaging": "Обмен сообщениями",
+ "settings.tab_advanced": "Расширенные",
+ "settings.tab_appearance": "Внешний вид",
+ "settings.tab_updates": "Обновления",
+ "settings.tab_recovery": "Восстановление",
+ "settings.tab_cloud": "Cloud",
+ "settings.tab_debug": "Отладка",
+ "settings.tab_general": "Настройки",
+ "session.provider_auth_in_progress": "Аутентификация провайдера уже выполняется.",
+ "session.share_worker_url": "URL воркера",
+ "session.share_desktop_required": "Требуется десктопное приложение",
+ "session.share_starting_server": "Запуск сервера...",
+ "session.share_url_worker_hint":
+ "Используйте на телефонах или ноутбуках, подключающихся к этому воркеру.",
+ "session.share_url_resolving_hint":
+ "URL воркера разрешается; показан URL хоста как запасной вариант.",
+ "session.share_password": "Пароль",
+ "session.share_password_owner_hint":
+ "Используйте, когда удалённый клиент должен отвечать на запросы разрешений.",
+ "session.share_collaborator_token": "Токен соавтора",
+
+ "workspace.needs_attention": "Требует внимания",
+ "workspace.active": "Активно",
+ "workspace.switch": "Переключить",
+ "workspace.no_tasks": "Задач пока нет.",
+ "workspace.new_task_inline": "+ Новая задача",
+ "workspace.loading_tasks": "Загрузка задач...",
+ "workspace.selected": "Выбрано",
+
+ "common.copy": "Копировать",
+ "common.copied": "Скопировано",
+ "common.reset": "Сбросить",
+ "common.add": "Добавить",
+ "common.done": "Готово",
+
+ "session.permission_message":
+ "OpenCode запрашивает разрешение на продолжение.",
+ "session.doom_loop_title": "Обнаружен цикл неудач",
+ "session.doom_loop_message":
+ "OpenCode обнаружил повторяющиеся вызовы инструментов с одинаковым вводом и спрашивает, следует ли продолжать после повторяющихся сбоев.",
+ "session.doom_loop_label": "Цикл неудач",
+ "session.doom_loop_tool_label": "Инструмент",
+ "session.doom_loop_repeated_call_label": "Повторяющийся вызов",
+ "session.doom_loop_repeated_tool_call": "Повторяющийся вызов инструмента",
+ "session.doom_loop_note":
+ "Отклоните для остановки цикла или разрешите, если хотите, чтобы агент продолжал попытки.",
+ "session.default_agent": "Агент по умолчанию",
+ "session.workspace_label": "Рабочее пространство",
+ "session.no_matches": "Нет совпадений",
+ "session.status_delegating": "Делегирование",
+ "session.status_planning": "Планирование",
+ "session.status_gathering_context": "Сбор контекста",
+ "session.status_searching_codebase": "Поиск в кодовой базе",
+ "session.status_searching_web": "Поиск в интернете",
+ "session.status_writing_file": "Запись файла",
+ "session.status_running_shell": "Выполнение оболочки",
+ "session.status_working": "Работа",
+ "session.status_thinking": "Размышление",
+ "session.phase_sending": "Отправка",
+ "session.phase_retrying": "Повтор",
+ "session.phase_responding": "Ответ",
+ "session.phase_run_failed": "Запуск не удался",
+ "session.compacting_auto": "OpenCode автоматически сжимает эту сессию",
+ "session.compacting_manual": "OpenCode сжимает эту сессию",
+ "session.compaction_started":
+ "OpenCode начал сжатие контекста сессии.",
+ "session.compaction_finished":
+ "OpenCode завершил сжатие контекста сессии.",
+ "session.no_session_selected": "Сессия не выбрана",
+ "session.stopping_run": "Остановка запуска...",
+ "session.stopped": "Остановлено.",
+ "session.failed_to_stop": "Остановка не удалась",
+ "session.nothing_to_retry": "Повторять пока нечего",
+ "session.trying_again": "Повторная попытка...",
+ "session.nothing_to_undo": "Отменять пока нечего.",
+ "session.reverted_last_message": "Последнее сообщение пользователя отменено.",
+ "session.failed_to_undo": "Отмена не удалась",
+ "session.nothing_to_redo": "Повторять нечего.",
+ "session.restored_message": "Отменённое сообщение восстановлено.",
+ "session.failed_to_redo": "Повтор не удался",
+ "session.nothing_to_compact": "Сжимать пока нечего.",
+ "session.compacting": "Сжатие контекста сессии...",
+ "session.compacted": "Сессия сжата.",
+ "session.failed_to_compact": "Сжатие сессии не удалось",
+ "session.deleted": "Сессия удалена",
+ "session.failed_to_delete": "Удаление сессии не удалось",
+ "session.failed_to_load_agents": "Загрузка агентов не удалась",
+ "session.failed_to_create_session": "Создание сессии не удалось",
+ "session.failed_to_load_providers": "Загрузка провайдеров не удалась",
+ "session.cmd_new_session_title": "Создать новую сессию",
+ "session.cmd_new_session_detail":
+ "Начать новую задачу в текущем рабочем пространстве",
+ "session.cmd_new_session_meta": "Создать",
+ "session.cmd_rename_title": "Переименовать текущую сессию",
+ "session.cmd_rename_detail_fallback":
+ "Дайте вашей выбранной сессии более понятное имя",
+ "session.cmd_rename_meta": "Переименовать",
+ "session.cmd_compact_title": "Сжать разговор",
+ "session.cmd_compact_detail":
+ "Отправить компактную инструкцию в OpenCode для этой сессии",
+ "session.cmd_compact_detail_empty": "Сообщений пользователя для сжатия пока нет",
+ "session.cmd_compact_meta": "Сжать",
+ "session.cmd_sessions_title": "Поиск сессий",
+ "session.cmd_sessions_meta": "Переход",
+ "session.cmd_model_title": "Изменить модель",
+ "session.cmd_model_meta": "Открыть",
+ "session.cmd_model_fallback": "Модель",
+ "session.cmd_provider_title": "Подключить провайдер",
+ "session.cmd_provider_detail": "Открыть поток подключения провайдера",
+ "session.cmd_provider_meta": "Открыть",
+ "session.cmd_current_workspace": "Текущее рабочее пространство",
+ "session.cmd_switch": "Переключить",
+ "session.palette_title_sessions": "Поиск сессий",
+ "session.palette_title_actions": "Быстрые действия",
+ "session.palette_placeholder_sessions": "Поиск по имени сессии или рабочему пространству",
+ "session.palette_placeholder_actions": "Поиск действий",
+ "session.search_placeholder": "Поиск в этом чате",
+ "session.search_prev": "Назад",
+ "session.search_next": "Вперёд",
+ "session.undo_label": "Вернуть",
+ "session.redo_label": "Повторить",
+ "session.loading_title": "Загрузка сессии",
+ "session.loading_detail": "Получение последних сообщений для этой задачи.",
+ "session.workspace_setup_label": "Настройка рабочего пространства",
+ "session.workspace_setup_title": "Настройте ваше первое рабочее пространство",
+ "session.workspace_setup_desc":
+ "Начните с guided рабочего пространства OpenWork или выберите существующую папку для работы.",
+ "session.create_workspace_title": "Создать рабочее пространство",
+ "session.create_workspace_desc":
+ "Откройте создатель рабочего пространства и выберите, как начать.",
+ "session.pick_folder_title": "Выберите папку для работы",
+ "session.pick_folder_desc":
+ "Выберите существующую папку проекта или заметок, и OpenWork использует её как рабочее пространство.",
+ "session.loading_earlier": "Загрузка более ранних сообщений...",
+ "session.load_earlier": "Загрузить более ранние сообщения",
+ "session.jump_to_start": "Перейти к началу сообщения",
+ "session.jump_to_latest": "Перейти к последнему",
+ "session.flyout_new_task": "Новая задача",
+ "session.flyout_file_modified": "Файл изменён",
+ "session.attachments_add_token": "Добавьте токен сервера для прикрепления файлов.",
+ "session.attachments_connect_server":
+ "Подключитесь к серверу OpenWork для прикрепления файлов.",
+ "session.unable_to_reveal": "Не удалось отобразить рабочее пространство",
+ "session.workspace_path_unavailable": "Путь к рабочему пространству недоступен.",
+ "session.reveal_desktop_only": "Отображение доступно в десктопном приложении.",
+ "session.file_open_remote_unavailable":
+ "Открытие файла недоступно для удалённых рабочих пространств.",
+ "session.file_open_desktop_only":
+ "Открытие файла доступно в десктопном приложении.",
+ "session.pick_workspace_to_open": "Выберите рабочее пространство для открытия файлов.",
+ "session.unable_to_open_file": "Не удалось открыть файл",
+ "session.share_collaborator_label": "Токен соавтора",
+ "session.share_desktop_app_required": "Требуется десктопное приложение",
+ "session.share_worker_url_phones_hint":
+ "Используйте на телефонах или ноутбуках, подключающихся к этому воркеру.",
+ "session.share_worker_url_resolving_hint":
+ "URL воркера разрешается; показан URL хоста как запасной вариант.",
+ "session.share_owner_permission_hint":
+ "Используйте, когда удалённый клиент должен отвечать на запросы разрешений.",
+ "session.share_collaborator_hint":
+ "Обычный удалённый доступ, когда не нужны действия только владельца.",
+ "session.share_collaborator_host_hint":
+ "Обычный удалённый доступ к этому хосту без действий только владельца.",
+ "session.share_set_token_hint": "Установите токен в настройках рабочего пространства",
+ "session.share_connected_with_hint":
+ "Это рабочее пространство сейчас подключено с этим паролем.",
+ "session.share_opencode_base_url": "Базовый URL OpenCode",
+ "session.share_note_direct_runtime":
+ "Среда выполнения движка установлена на Direct. Переключение локальных воркеров может перезапустить хост и отключить клиентов. Токен может измениться после перезапуска.",
+ "session.share_select_workspace": "Сначала выберите рабочее пространство.",
+ "session.share_openwork_workers_only":
+ "Ссылки общего сервиса доступны для воркеров OpenWork.",
+ "session.share_local_host_not_ready": "Локальный хост OpenWork пока не готов.",
+ "session.share_missing_host_url": "Отсутствует URL хоста OpenWork.",
+ "session.share_missing_token": "Отсутствует токен OpenWork.",
+ "session.share_active_cloud_org": "Активная организация Cloud",
+ "session.share_choose_org":
+ "Выберите организацию в Настройки -> Cloud перед тем, как поделиться с командой.",
+ "session.share_resolve_local_workspace_failed":
+ "Не удалось разрешить это рабочее пространство на локальном хосте OpenWork.",
+ "session.share_host_url_and_token_required":
+ "URL хоста OpenWork и токен обязательны.",
+ "session.share_resolve_remote_workspace_failed":
+ "Не удалось разрешить это рабочее пространство на хосте OpenWork.",
+ "session.share_workspace_template_desc":
+ "Полный шаблон рабочего пространства OpenWork с конфигурацией, командами, навыками и дополнительными файлами .opencode.",
+ "session.share_publish_workspace_failed":
+ "Публикация профиля рабочего пространства не удалась",
+ "session.share_sign_in_required":
+ "Войдите в OpenWork Cloud в Настройках, чтобы поделиться с командой.",
+ "session.share_team_fallback_name": "шаблоны вашей команды",
+ "session.share_saved_to_org": "Сохранено {name} в {org}.",
+ "session.share_save_team_template_failed": "Сохранение командного шаблона не удалось",
+ "session.share_skills_set_desc":
+ "Полный набор навыков из рабочего пространства OpenWork.",
+ "session.share_no_skills": "Навыки в этом рабочем пространстве не найдены.",
+ "session.share_publish_skills_failed": "Публикация набора навыков не удалась",
+ "session.export_desktop_only_local":
+ "Экспорт доступен для локальных воркеров в десктопном приложении.",
+ "session.export_local_only": "Экспорт поддерживается только для локальных воркеров.",
+ "session.export_desktop_only": "Экспорт доступен в десктопном приложении.",
+ "session.export_already_running": "Экспорт уже выполняется.",
+ "session.update_ready": "Обновление готово",
+ "session.install_update": "Установить обновление",
+ "session.downloading": "Загрузка",
+ "session.update_available": "Доступно обновление",
+ "session.connect_failed": "Подключение не удалось",
+ "session.upload_connect_server":
+ "Подключитесь к серверу OpenWork для загрузки файлов в общую папку.",
+ "session.uploaded_to_shared_folder": "Загружено в общую папку.",
+ "session.create_or_connect_workspace": "Создайте или подключите рабочее пространство",
+ "session.allow_once": "Один раз",
+ "session.connect_to_sync": "Подключитесь к серверу OpenWork для синхронизации удалённых файлов.",
+ "session.obsidian_worker_relative_only":
+ "Только файлы относительно воркера могут быть открыты в Obsidian.",
+ "session.resize_workspace_column": "Изменить размер колонки рабочего пространства",
+ "dashboard.close_settings": "Закрыть настройки",
+ "dashboard.nav_ids": "ID",
+ "session.downloading_percent": "Загрузка {percent}%",
+ "session.update_ready_stop_runs_title":
+ "Обновление готово {version}. Остановите активные запуски для перезапуска.",
+ "session.restart_update_title": "Перезапустите для применения обновления {version}",
+ "session.downloading_update_title": "Загрузка обновления {version}",
+ "session.update_available_title": "Доступно обновление {version}",
+ "session.file_open_failed": "Открытие файла не удалось",
+ "session.remote_sync_failed": "Синхронизация удалённого файла не удалась",
+ "session.shared_folder_upload_failed": "Загрузка в общую папку не удалась",
+ "session.status_compacting": "Сжатие контекста",
+ "session.status_active": "Сессия активна",
+ "session.status_ready_session": "Сессия готова",
+ "session.status_ready": "Готово",
+ "session.delete_session_title": "Удалить сессию?",
+ "session.delete_named_session_message":
+ 'Это навсегда удалит "{title}" и её сообщения.',
+ "session.delete_session_generic":
+ "Это навсегда удалит выбранную сессию и её сообщения.",
+ "session.deleting": "Удаление...",
+ "session.delete": "Удалить",
+ "session.loading_session": "Загрузка сессии",
+ "session.workspace_fallback": "Рабочее пространство",
+ "session.model_fallback": "Модель",
+ "session.close_quick_actions": "Закрыть быстрые действия",
+ "session.prev_match": "Предыдущее совпадение",
+ "session.next_match": "Следующее совпадение",
+ "session.close_search": "Закрыть поиск",
+ "session.unable_to_open_obsidian": "Не удалось открыть файл в Obsidian",
+ "session.search_position": "{current} из {total}",
+ "session.conflict_sync_toast":
+ "Конфликт синхронизации {path}. Локальные изменения сохранены в {conflictPath}.",
+ "session.todo_progress": "Выполнено {completed} из {total} задач",
+ "session.uploading_to_shared_folder":
+ "Загрузка {label} в общую папку...",
+ "session.uploaded_with_summary": "Загружено в общую папку: {summary}",
+ "session.cmd_sessions_detail": "{count} доступно across рабочих пространств",
+ "session.cmd_model_detail": "{model} · {variant}",
+ "session.show_earlier": "Показать {count} более ранних сообщ.{plural}",
+ "session.back": "Назад",
+ "session.no_matches_command": "Нет совпадений.",
+ "session.palette_hint_navigate": "Стрелки для навигации",
+ "session.palette_hint_run": "Enter для запуска · Esc для закрытия",
+
+ "message_list.tool_run_command": "Запустить {command}",
+ "message_list.tool_run_command_fallback": "Запустить команду",
+ "message_list.tool_reviewed_file": "Просмотрено {file}",
+ "message_list.tool_reviewed_file_fallback": "Файл просмотрен",
+ "message_list.tool_updated_file": "Обновлено {file}",
+ "message_list.tool_updated_file_fallback": "Файл обновлён",
+ "message_list.tool_update_file": "Обновить {file}",
+ "message_list.tool_update_file_fallback": "Обновить файл",
+ "message_list.tool_searched_pattern": "Поиск {pattern}",
+ "message_list.tool_searched_code_fallback": "Поиск в коде",
+ "message_list.tool_reviewed_path": "Просмотрено {path}",
+ "message_list.tool_reviewed_files_fallback": "Файлы просмотрены",
+ "message_list.tool_delegate_agent": "Делегировать {agent}",
+ "message_list.tool_delegate_task_fallback": "Делегировать задачу",
+ "message_list.tool_update_todo": "Обновить список задач",
+ "message_list.tool_read_todo": "Прочитать список задач",
+ "message_list.tool_checked_url": "Проверено {url}",
+ "message_list.tool_checked_web_fallback": "Веб-страница проверена",
+ "message_list.tool_load_skill_named": "Загрузить навык {name}",
+ "message_list.tool_load_skill_fallback": "Загрузить навык",
+ "message_list.subagent_type_task": "{agentType} задача",
+ "message_list.subagent_session_fallback": "Сессия субагента",
+ "message_list.subagent_loading_transcript": "Загрузка транскрипта",
+ "message_list.subagent_running": "Выполняется",
+ "message_list.subagent_message_count": "{count} сообщ.{plural}",
+ "message_list.subagent_waiting_transcript": "Ожидание транскрипта",
+ "message_list.open_session": "Открыть сессию",
+ "message_list.step_updates_progress": "Обновляет прогресс",
+
+ "inbox_panel.copied_path": "Скопировано: {path}",
+ "inbox_panel.download_failed": "Загрузка не удалась",
+
+ "automations.desktop_required": "Запланированные задачи требуют десктопного приложения.",
+ "automations.failed_to_load": "Загрузка запланированных задач не удалась.",
+ "automations.prompt_empty": "Запрос автоматизации пуст.",
+ "automations.prompt_required": "Требуется запрос.",
+ "automations.schedule_required": "Требуется расписание.",
+ "automations.server_needs_token":
+ "Серверу OpenWork требуется токен для загрузки запланированных задач.",
+ "automations.server_not_ready": "Сервер OpenWork не готов.",
+ "automations.server_unavailable":
+ "Сервер OpenWork недоступен. Подключитесь для синхронизации запланированных задач.",
+
+ "common.navigate": "перейти",
+ "common.next": "Далее",
+ "common.question": "Вопрос",
+ "common.remove": "Удалить",
+ "common.select": "выбрать",
+ "common.something_went_wrong": "Что-то пошло не так",
+ "common.submit": "Отправить",
+
+ "config.auto_reload_desc":
+ "Автоматически перезагружать после изменения агентов/навыков/команд/конфигурации (только в режиме ожидания).",
+ "config.auto_reload_title": "Автоперезагрузка (локальная)",
+ "config.auto_reload_unavailable":
+ "Доступно для локальных рабочих пространств в десктопном приложении.",
+ "config.collaborator_token_disabled_hint":
+ "Сохранено заранее для удалённого общего доступа, но удалённый доступ сейчас отключён.",
+ "config.collaborator_token_label": "Токен соавтора",
+ "config.collaborator_token_remote_hint":
+ "Обычный удалённый доступ для телефонов или ноутбуков, подключающихся к этому серверу.",
+ "config.connection_failed": "Подключение не удалось.",
+ "config.connection_failed_check":
+ "Подключение не удалось. Проверьте URL и токен хоста.",
+ "config.connection_status_updated": "Статус подключения обновлён.",
+ "config.connection_successful": "Подключение успешно.",
+ "config.copied": "Скопировано",
+ "config.copy": "Копировать",
+ "config.desktop_only_hint":
+ "Некоторые функции конфигурации (общий доступ к локальному серверу + мост обмена сообщениями) требуют десктопного приложения.",
+ "config.diagnostics_desc": "Копировать очищенное состояние среды выполнения для отладки.",
+ "config.diagnostics_title": "Диагностический пакет",
+ "config.enable_auto_reload_first": "Сначала включите автоперезагрузку",
+ "config.engine_reload_desc":
+ "Перезапустить сервер OpenCode для этого рабочего пространства.",
+ "config.engine_reload_title": "Перезагрузка движка",
+ "config.host_admin_token_hint":
+ "Внутренний токен только для хоста для CLI одобрений и админ API. Не используйте его в потоке подключения удалённого приложения.",
+ "config.host_admin_token_label": "Токен администратора хоста",
+ "config.host_local_only": "Только локальный",
+ "config.host_offline": "Офлайн",
+ "config.host_remote_enabled": "Удалённый доступ включён",
+ "config.local_ip_hint":
+ "Используйте ваш локальный IP в той же Wi-Fi сети для быстрейшего подключения.",
+ "config.mdns_hint":
+ "Имена .local легче запомнить, но они могут не разрешаться во всех сетях.",
+ "config.messaging_identities_desc":
+ "Управляйте идентичностями Telegram/Slack и маршрутизацией на вкладке Идентичности.",
+ "config.messaging_identities_title": "Идентичности обмена сообщениями",
+ "config.not_set": "Не установлено",
+ "config.owner_token_disabled_hint":
+ "Актуально только после включения удалённого доступа для этого воркера.",
+ "config.owner_token_label": "Токен владельца",
+ "config.owner_token_remote_hint":
+ "Используйте, когда удалённый клиент должен отвечать на запросы разрешений или выполнять действия только владельца.",
+ "config.reload_active_tasks_warning": "Перезагрузка остановит активные задачи.",
+ "config.reload_availability_hint":
+ "Перезагрузка доступна только для локальных воркеров или подключённых серверов OpenWork.",
+ "config.reload_connect_hint": "Подключитесь к этому воркеру для перезагрузки.",
+ "config.reload_engine": "Перезагрузить движок",
+ "config.reload_now_desc":
+ "Применяет обновления конфигурации и переподключает вашу сессию.",
+ "config.reload_now_title": "Перезагрузить сейчас",
+ "config.reloading": "Перезагрузка...",
+ "config.remote_access_off_hint":
+ "Удалённый доступ отключён. Используйте Поделиться рабочим пространством для включения перед подключением с другой машины.",
+ "config.resolved_worker_url": "Разрешённый URL воркера:",
+ "config.resume_sessions_desc":
+ "Если перезагрузка была в очереди во время выполнения задач, отправить сообщение о возобновлении после.",
+ "config.resume_sessions_title": "Возобновить сессии после автоперезагрузки",
+ "config.server_needed_hint":
+ "Требуется подключение к серверу OpenWork для синхронизации навыков, плагинов и команд.",
+ "config.server_section_desc":
+ "Подключитесь к серверу OpenWork. Используйте URL плюс токен соавтора или владельца от администратора сервера.",
+ "config.server_section_title": "Сервер OpenWork",
+ "config.server_sharing_desc":
+ "Поделитесь этими деталями с доверенным устройством. Держите сервер в той же сети для быстрейшей настройки.",
+ "config.server_sharing_menu_hint":
+ "Для ссылок общего доступа для каждого рабочего пространства используйте Поделиться... в меню рабочего пространства.",
+ "config.server_sharing_title": "Общий доступ к серверу OpenWork",
+ "config.server_url_hint":
+ "Используйте URL, предоставленный вашим сервером OpenWork. Локальные десктопные воркеры повторно используют постоянный высокий порт в диапазоне 48000-51000.",
+ "config.server_url_input_label": "URL сервера OpenWork",
+ "config.server_url_label": "URL сервера OpenWork",
+ "config.starting_server": "Запуск сервера…",
+ "config.status_connected": "Подключено",
+ "config.status_limited": "Ограничено",
+ "config.status_not_connected": "Не подключено",
+ "config.test_connection": "Тест подключения",
+ "config.testing": "Тестирование...",
+ "config.testing_connection": "Тестирование подключения...",
+ "config.token_hint":
+ "Необязательно. Вставьте токен соавтора для обычного доступа или токен владельца, когда этот клиент должен отвечать на запросы разрешений.",
+ "config.token_label": "Токен соавтора или владельца",
+ "config.token_placeholder": "Вставьте ваш токен",
+ "config.unavailable": "Недоступно",
+ "config.worker_id": "ID воркера:",
+ "config.workspace_config_desc":
+ "Эти настройки влияют на выбранное рабочее пространство. Действия только для среды выполнения применяются к тому рабочему пространству, которое подключено сейчас.",
+ "config.workspace_config_title": "Конфигурация рабочего пространства",
+ "config.workspace_id_prefix": "Рабочее пространство:",
+
+ "extensions.app_count_many": "приложений подключено",
+ "extensions.app_count_one": "приложение подключено",
+ "extensions.apps_mcp_header": "Приложения (MCP)",
+ "extensions.filter_all": "Все",
+ "extensions.filter_apps": "Приложения",
+ "extensions.filter_plugins": "Плагины",
+ "extensions.plugin_count_many": "плагинов",
+ "extensions.plugin_count_one": "плагин",
+ "extensions.plugins_opencode_header": "Плагины (OpenCode)",
+ "extensions.subtitle": "Приложения (MCP) и плагины OpenCode в одном месте.",
+
+ "identities.agent_behavior_desc":
+ "Один файл на рабочее пространство. Добавьте необязательную первую строку @agent для маршрутизации через определённый агент OpenCode.",
+ "identities.agent_behavior_title": "Поведение агента обмена сообщениями",
+ "identities.agent_created": "Создан файл агента обмена сообщениями по умолчанию.",
+ "identities.agent_file_changed":
+ "Файл изменён удалённо. Перезагрузите и сохраните снова.",
+ "identities.agent_loading": "Загрузка файла агента…",
+ "identities.agent_none": "нет",
+ "identities.agent_not_found": "Файл агента пока не найден в этом рабочем пространстве.",
+ "identities.agent_placeholder":
+ "Добавьте инструкции поведения обмена сообщениями для opencodeRouter здесь...",
+ "identities.agent_saved": "Поведение обмена сообщениями сохранено.",
+ "identities.agent_scope_status":
+ "Активная область: рабочее пространство · статус: {status} · выбранный агент: {agent}",
+ "identities.agent_status_loaded": "загружен",
+ "identities.agent_status_missing": "отсутствует",
+ "identities.agent_worker_scope_unavailable": "Область воркера недоступна.",
+ "identities.all_channels": "Все каналы",
+ "identities.app_token_label": "Токен приложения",
+ "identities.auto_bind_label": "Авто-привязка пира к директории при прямой отправке",
+ "identities.available_channels": "Доступные каналы",
+ "identities.bot_token_label": "Токен бота",
+ "identities.bot_token_placeholder":
+ "Вставьте токен Telegram бота от @BotFather",
+ "identities.botfather_step1_open": "1. Откройте @BotFather в Telegram",
+ "identities.botfather_step1_run": "и запустите /newbot",
+ "identities.botfather_step3_choose":
+ "3. Выберите имя и username для вашего бота",
+ "identities.botfather_step3_or_private": "для открытого ящика или",
+ "identities.botfather_step3_private": "Приватный",
+ "identities.botfather_step3_public": "Публичный",
+ "identities.botfather_step3_to_require": "требовать",
+ "identities.channel_label": "Канал",
+ "identities.channels_connected": "подключено",
+ "identities.channels_label": "Каналы",
+ "identities.configured_suffix": "настроено",
+ "identities.connect_server_desc":
+ "Идентичности доступны, когда вы подключены к хосту OpenWork.",
+ "identities.connect_server_title": "Подключиться к серверу OpenWork",
+ "identities.connect_slack": "Подключить Slack",
+ "identities.connected_badge": "Подключено",
+ "identities.connecting": "Подключение...",
+ "identities.copy_bot_token_hint": "Скопируйте токен бота и вставьте его ниже.",
+ "identities.copy_code": "Копировать код",
+ "identities.create_default_file": "Создать файл по умолчанию",
+ "identities.create_private_bot": "Создать приватный бот",
+ "identities.create_public_bot": "Создать публичный бот",
+ "identities.days_ago": "{days}д назад",
+ "identities.default_routing": "Маршрутизация по умолчанию",
+ "identities.directory_label": "Директория (необязательно)",
+ "identities.disable_messaging": "Отключить обмен сообщениями",
+ "identities.disable_messaging_message":
+ "Это отключит обмен сообщениями для этого рабочего пространства. Настройка Telegram и Slack будет скрыта до повторного включения обмена сообщениями, и вам нужно будет перезапустить воркер для полной остановки сайдкара обмена сообщениями.",
+ "identities.disable_messaging_title": "Отключить обмен сообщениями для этого воркера?",
+ "identities.disabled_label": "Отключено",
+ "identities.disabling": "Отключение...",
+ "identities.disconnect": "Отключить",
+ "identities.dispatched_messages": "Отправлено {sent}/{attempted} сообщений.",
+ "identities.enable_messaging": "Включить обмен сообщениями",
+ "identities.enable_messaging_risk":
+ "Обмен сообщениями может暴露ить этот воркер для удалённых команд. Если бот публичный или скомпрометирован, он может получить доступ к файлам, учётным данным и API ключам, доступным этому воркеру.",
+ "identities.enable_messaging_title": "Включить обмен сообщениями для этого воркера?",
+ "identities.enabled_label": "Включено",
+ "identities.enabling": "Включение...",
+ "identities.health_offline": "Офлайн",
+ "identities.health_running": "Работает",
+ "identities.health_unavailable": "Недоступно",
+ "identities.health_unavailable_status":
+ "Проверка здоровья OpenCodeRouter недоступна ({status})",
+ "identities.health_unknown": "Неизвестно",
+ "identities.hours_ago": "{hours}ч назад",
+ "identities.identities_label": "Идентичности",
+ "identities.just_now": "Только что",
+ "identities.last_activity": "Последняя активность",
+ "identities.later": "Позже",
+ "identities.message_label": "Сообщение",
+ "identities.message_routing_desc":
+ "Управляйте, какие разговоры идут в какую папку рабочего пространства. Сообщения маршрутизируются в папку воркера по умолчанию, если вы не настроите правила здесь.",
+ "identities.message_routing_title": "Маршрутизация сообщений",
+ "identities.messages_today": "Сообщения сегодня",
+ "identities.messaging_disabled_hint":
+ "Включайте обмен сообщениями только если понимаете риск и планируете защитить доступ (например, приватное сопряжение Telegram).",
+ "identities.messaging_disabled_restart":
+ "Обмен сообщениями отключён. Перезапустите этот воркер для остановки сайдкара обмена сообщениями.",
+ "identities.messaging_disabled_risk":
+ "Боты обмена сообщениями могут выполнять действия против вашего локального воркера. Если они暴露щены публично, они могут позволить доступ к файлам, учётным данным и API ключам, доступным этому воркеру.",
+ "identities.messaging_disabled_title": "Обмен сообщениями отключён по умолчанию",
+ "identities.messaging_enabled_restart":
+ "Обмен сообщениями включён. Перезапустите этот воркер для применения перед настройкой каналов.",
+ "identities.messaging_sidecar_not_running":
+ "Обмен сообщениями включён в этом рабочем пространстве, но сайдкар обмена сообщениями ещё не запущен. Перезапустите этот воркер, затем вернитесь к настройкам обмена сообщениями для подключения Telegram или Slack.",
+ "identities.minutes_ago": "{minutes}м назад",
+ "identities.not_set": "Не установлено",
+ "identities.open_bot_link": "Открыть @{username} в Telegram",
+ "identities.pairing_code_copied": "Код сопряжения скопирован.",
+ "identities.pairing_code_copy_failed":
+ "Не удалось скопировать код сопряжения. Скопируйте его вручную.",
+ "identities.pairing_code_instruction_prefix": "Отправьте",
+ "identities.peer_id_label": "Peer ID (необязательно)",
+ "identities.peer_id_placeholder_slack": "например, slack:U12345678",
+ "identities.peer_id_placeholder_telegram": "например, telegram:123456789",
+ "identities.private_label": "Приватный",
+ "identities.private_pairing_code": "Приватный код сопряжения",
+ "identities.public_bot_confirm": "Да, я понимаю риск",
+ "identities.public_bot_warning_message":
+ "Ваш бот будет доступен публично, и любой, кто получит доступ к вашему боту, сможет получить полный доступ к вашему локальному воркеру, включая любые файлы или API ключи, которые вы ему дали. Если вы создадите приватный бот, вы можете ограничить, кто может получить к нему доступ, потребовав токен сопряжения. Вы уверены, что хотите сделать ваш бот публичным?",
+ "identities.public_bot_warning_title": "Сделать этот бот публичным?",
+ "identities.public_label": "Публичный",
+ "identities.quick_setup": "Быстрая настройка",
+ "identities.reconnect_failed":
+ "Переподключение не удалось. Проверьте URL/токен OpenWork и попробуйте снова.",
+ "identities.reconnected": "Переподключено.",
+ "identities.reconnected_refreshing":
+ "Переподключено. Обновление состояния воркера...",
+ "identities.reload": "Перезагрузить",
+ "identities.repair_reconnect": "Восстановить и переподключить",
+ "identities.restart_failed":
+ "Перезапуск не удался. Перезапустите воркер из Настроек и попробуйте снова.",
+ "identities.restart_to_disable_messaging":
+ "Обмен сообщениями был отключён для этого рабочего пространства. Перезапустите воркер сейчас для остановки сайдкара обмена сообщениями.",
+ "identities.restart_to_enable_messaging":
+ "Обмен сообщениями был включён для этого рабочего пространства. Перезапустите воркер сейчас для запуска сайдкара обмена сообщениями и разблокировки настройки Telegram и Slack.",
+ "identities.restart_worker": "Перезапустить воркер",
+ "identities.restart_worker_title": "Перезапустить воркер сейчас?",
+ "identities.restarting": "Перезапуск...",
+ "identities.routing_override_prefix": "Все сообщения маршрутизируются в",
+ "identities.routing_override_suffix": "(переопределение активно)",
+ "identities.running_label": "Выполняется",
+ "identities.save_behavior": "Сохранить поведение",
+ "identities.saving": "Сохранение...",
+ "identities.send_test_button": "Отправить тестовое сообщение",
+ "identities.send_test_desc":
+ "Проверьте исходящую маршрутизацию. Используйте Peer ID для прямой отправки или оставьте Peer ID пустым для распределения по привязкам в директории.",
+ "identities.send_test_title": "Отправить тестовое сообщение",
+ "identities.sending": "Отправка...",
+ "identities.slack_desc":
+ "Ваш воркер появляется как бот в каналах Slack. Члены команды могут писать ему напрямую или упоминать его в ветках.",
+ "identities.slack_intro":
+ "Подключите ваше рабочее пространство Slack, чтобы члены команды могли взаимодействовать с этим воркером в каналах и личных сообщениях.",
+ "identities.slack_unavailable": "Идентичности Slack недоступны.",
+ "identities.status_active": "Активно",
+ "identities.status_label": "Статус",
+ "identities.status_stopped": "Остановлено",
+ "identities.stopped_label": "Остановлено",
+ "identities.subtitle":
+ "Позвольте людям обращаться к вашему воркеру через приложения обмена сообщениями. Подключите канал, и ваш воркер будет автоматически читать и отвечать на сообщения.",
+ "identities.tab_general": "Общие",
+ "identities.telegram_bot_access_desc":
+ "Публичный бот: первый чат Telegram автоматически ссылается. Приватный бот: требует код сопряжения перед тем, как любые сообщения запускают инструменты.",
+ "identities.telegram_delete_failed": "Удаление не удалось.",
+ "identities.telegram_deleted": "Удалено.",
+ "identities.telegram_deleted_pending": "Удалено (ожидание применения).",
+ "identities.telegram_desc":
+ "Подключите Telegram бота в публичном режиме (открытый ящик) или приватном режиме (требуется код сопряжения).",
+ "identities.telegram_private_saved_pair":
+ "Приватный бот сохранён. Сопряжение через /pair {code}",
+ "identities.telegram_save_failed": "Сохранение не удалось.",
+ "identities.telegram_saved": "Сохранено.",
+ "identities.telegram_saved_pending": "Сохранено (ожидание применения).",
+ "identities.telegram_saved_username": "Сохранено (@{username})",
+ "identities.telegram_unavailable": "Идентичности Telegram недоступны.",
+ "identities.title": "Каналы обмена сообщениями",
+ "identities.unsaved_changes": "Несохранённые изменения",
+ "identities.worker_offline": "Воркер офлайн",
+ "identities.worker_online": "Воркер онлайн",
+ "identities.worker_restarted": "Воркер перезапущен.",
+ "identities.worker_restarted_refreshing":
+ "Воркер перезапущен. Обновление статуса обмена сообщениями...",
+ "identities.worker_scope_unavailable": "Область воркера недоступна.",
+ "identities.worker_scope_unavailable_detail":
+ "Область воркера недоступна. Переподключитесь, используя URL воркера, или переключитесь на известный воркер.",
+ "identities.worker_unavailable": "Воркер недоступен",
+ "identities.workspace_id_required":
+ "Требуется ID рабочего пространства для управления идентичностями. Переподключитесь с URL рабочего пространства или выберите рабочее пространство, отображённое на этом хосте.",
+ "identities.workspace_scope_prefix": "Область рабочего пространства:",
+
+ "mcp.auth.authorization_link": "Ссылка авторизации",
+ "mcp.auth.copied": "Скопировано",
+ "mcp.auth.copy_link": "Копировать ссылку",
+ "mcp.auth.request_timed_out": "Время запроса истекло.",
+
+ "plugins.desc":
+ "Управляйте `opencode.json` для вашего проекта или глобальными плагинами OpenCode.",
+ "plugins.empty": "Плагины ещё не настроены.",
+ "plugins.not_loaded_yet": "Ещё не загружено",
+ "plugins.remove": "Удалить",
+ "plugins.suggested_heading": "Рекомендуемые плагины",
+
+ "providers.api_key_label": "API ключ",
+ "providers.api_key_required": "Требуется API ключ",
+ "providers.auth_failed": "Аутентификация не удалась",
+ "providers.connect_failed": "Подключение провайдера не удалось",
+ "providers.disabled_in_config_suffix": "и отключён в конфигурации OpenCode.",
+ "providers.disconnect_failed": "Отключение провайдера не удалось",
+ "providers.disconnected_prefix": "Отключено",
+ "providers.load_failed": "Загрузка провайдеров не удалась",
+ "providers.no_oauth_prefix": "Поток OAuth недоступен для",
+ "providers.no_providers_available": "Нет доступных провайдеров",
+ "providers.not_connected": "Не подключено к серверу",
+ "providers.not_oauth_flow_prefix":
+ "Выбранный метод аутентификации не является потоком OAuth для",
+ "providers.oauth_failed": "Завершение OAuth не удалось",
+ "providers.oauth_method_required": "Требуется метод OAuth",
+ "providers.provider_error": "Ошибка провайдера ({provider})",
+ "providers.provider_id_required": "Требуется ID провайдера",
+ "providers.rate_limit_exceeded": "Превышен лимит запросов",
+ "providers.removal_unsupported":
+ "Удаление аутентификации провайдера не поддерживается этим клиентом.",
+ "providers.request_failed": "Запрос не удался",
+ "providers.save_api_key_failed": "Сохранение API ключа не удалось",
+ "providers.still_connected_suffix":
+ ", но воркер всё ещё сообщает о нём как о подключённом. Очистите оставшиеся API ключи или учётные данные OAuth и перезапустите воркер для полного отключения.",
+ "providers.unknown_provider": "Неизвестный провайдер",
+ "providers.use_api_key_suffix": "Используйте API ключ вместо этого.",
+
+ "question_modal.custom_answer_label": "Или введите пользовательский ответ",
+ "question_modal.custom_answer_placeholder": "Введите ваш ответ здесь...",
+ "question_modal.question_counter": "Вопрос {current} из {total}",
+
+ "scheduled.at_time": "В {time}",
+ "scheduled.badge_end_of_day": "Конец дня",
+ "scheduled.badge_every_few_hours": "Каждые несколько часов",
+ "scheduled.badge_friday_wrapup": "Пятничное подведение итогов",
+ "scheduled.badge_weekday_evening": "Будний вечер",
+ "scheduled.badge_weekday_morning": "Буднее утро",
+ "scheduled.badge_weekend_review": "Выходной обзор",
+ "scheduled.create_button": "Создать",
+ "scheduled.create_desc":
+ "Автоматизации планируются путём запуска запроса в новой ветке. Мы предварительно заполним запрос для вас.",
+ "scheduled.create_title": "Создать автоматизацию",
+ "scheduled.created_prefix": "Создано",
+ "scheduled.custom_schedule": "Пользовательское расписание",
+ "scheduled.daily_mode": "Ежедневно",
+ "scheduled.day_fri": "Пт",
+ "scheduled.day_mon": "Пн",
+ "scheduled.day_sat": "Сб",
+ "scheduled.day_sun": "Вс",
+ "scheduled.day_thu": "Чт",
+ "scheduled.day_tue": "Вт",
+ "scheduled.day_wed": "Ср",
+ "scheduled.days_at": "{days} в {time}",
+ "scheduled.default_automation_name": "Ежедневное сканирование багов",
+ "scheduled.delete_confirm_desc":
+ "Это удалит расписание и определение задачи из {source}.",
+ "scheduled.delete_confirm_title": "Удалить автоматизацию?",
+ "scheduled.delete_error_fallback": "Удаление задачи не удалось.",
+ "scheduled.delete_label": "Удалить",
+ "scheduled.deleting": "Удаление",
+ "scheduled.desktop_required": "Запланированные задачи требуют десктопного приложения.",
+ "scheduled.empty_hint":
+ "Автоматизаций пока нет. Выберите шаблон или создайте свой запрос автоматизации.",
+ "scheduled.every_day_at": "Каждый день в {time}",
+ "scheduled.every_hour": "Каждый час",
+ "scheduled.every_n_hours": "Каждые {interval} часов",
+ "scheduled.every_prefix": "Каждый",
+ "scheduled.explore_more": "Исследовать ещё",
+ "scheduled.failed_status": "Ошибка",
+ "scheduled.filter_all": "Все",
+ "scheduled.filter_scheduled": "Запланировано",
+ "scheduled.filter_templates": "Шаблоны",
+ "scheduled.hours_suffix": "часов",
+ "scheduled.install_scheduler": "Установить планировщик",
+ "scheduled.install_scheduler_hint":
+ "Автоматизации работают через плагин opencode-scheduler. Добавьте его в это рабочее пространство для включения планирования.",
+ "scheduled.install_scheduler_title":
+ "Установите планировщик для разблокировки автоматизаций",
+ "scheduled.installing": "Установка...",
+ "scheduled.interval_mode": "Интервал",
+ "scheduled.last_run_prefix": "Последний запуск",
+ "scheduled.last_updated_prefix": "Последнее обновление",
+ "scheduled.name_label": "Имя",
+ "scheduled.never": "Никогда",
+ "scheduled.new_automation": "Новая автоматизация",
+ "scheduled.no_automations_match": "Автоматизации не соответствуют поиску.",
+ "scheduled.no_templates_match": "Шаблоны не соответствуют поиску.",
+ "scheduled.not_run_yet": "Ещё не запущено",
+ "scheduled.not_synced_yet": "Ещё не синхронизировано",
+ "scheduled.page_description":
+ "Планируйте повторяющиеся задачи для этого воркера, отслеживайте уже зарегистрированные и начните с переиспользуемого шаблона.",
+ "scheduled.prepare_error_fallback": "Подготовка автоматизации в чате не удалась.",
+ "scheduled.prepared_automation_in_chat": "Подготовлена автоматизация в чате.",
+ "scheduled.prepared_job_in_chat": "Подготовлено {name} в чате.",
+ "scheduled.quick_start_templates": "Шаблоны быстрого старта",
+ "scheduled.quick_start_templates_desc":
+ "Начните с проверенного повторяющегося рабочего процесса, затем адаптируйте запрос перед подготовкой в чате.",
+ "scheduled.refreshing": "Обновление",
+ "scheduled.reload_activate_hint":
+ "OpenCode загружает плагины при запуске. Перезагрузите OpenWork для активации opencode-scheduler.",
+ "scheduled.reload_activate_title": "Перезагрузите OpenWork для активации автоматизаций",
+ "scheduled.reload_openwork": "Перезагрузить OpenWork",
+ "scheduled.reloading": "Перезагрузка...",
+ "scheduled.removed_job": "Удалено {name}.",
+ "scheduled.run_label": "Запустить",
+ "scheduled.running_status": "Выполняется",
+ "scheduled.schedule_label": "Расписание",
+ "scheduled.scheduler_install_requested": "Запрошена установка планировщика.",
+ "scheduled.search_placeholder": "Поиск автоматизаций или шаблонов",
+ "scheduled.source_local": "Из локального планировщика",
+ "scheduled.source_remote": "Из сервера OpenWork",
+ "scheduled.subtitle_local":
+ "Автоматизации, выполняющиеся по расписанию на этом устройстве.",
+ "scheduled.subtitle_remote":
+ "Автоматизации, выполняющиеся по расписанию на подключённом сервере OpenWork.",
+ "scheduled.success_status": "Успех",
+ "scheduled.task_summary_no_prompt": "Запрос или команда не найдены.",
+ "scheduled.task_summary_prompt": "Запрос",
+ "scheduled.template_badge": "Шаблон",
+ "scheduled.template_count": "{count} шаблонов",
+ "scheduled.tpl_daily_planning_desc":
+ "Создайте сфокусированный план из ваших задач и календаря.",
+ "scheduled.tpl_daily_planning_name": "Ежедневный план",
+ "scheduled.tpl_habit_checkin_desc":
+ "Запускайте быструю проверку ответственности в течение дня.",
+ "scheduled.tpl_habit_checkin_name": "Проверка привычек",
+ "scheduled.tpl_inbox_zero_desc":
+ "Суммируйте непрочитанные сообщения и создавайте короткие ответы.",
+ "scheduled.tpl_inbox_zero_name": "Помощник чистого ящика",
+ "scheduled.tpl_learning_digest_desc":
+ "Превращайте сохранённые ссылки и заметки в еженедельный дайджест.",
+ "scheduled.tpl_learning_digest_name": "Дайджест обучения",
+ "scheduled.tpl_meeting_prep_desc":
+ "Создавайте подготовительные тезисы для завтрашних встреч.",
+ "scheduled.tpl_meeting_prep_name": "Заметки подготовки к встрече",
+ "scheduled.tpl_weekly_wins_desc":
+ "Создавайте пятничное резюме побед, блокеров и следующих шагов.",
+ "scheduled.tpl_weekly_wins_name": "Еженедельный обзор побед",
+ "scheduled.view_scheduler_docs": "Посмотреть документацию планировщика",
+ "scheduled.weekdays_at": "Будни в {time}",
+ "scheduled.weekends_at": "Выходные в {time}",
+ "scheduled.worker_root_hint":
+ "Корень воркера определяется из выбранного рабочего пространства.",
+ "scheduled.your_automations": "Ваши автоматизации",
+
+ "settings.action_download": "Скачать",
+ "settings.action_install": "Установить",
+ "settings.actor_host": "хост",
+ "settings.actor_remote": "удалённый",
+ "settings.actor_unknown": "неизвестный",
+ "settings.api_keys_info":
+ "API ключи хранятся локально OpenCode. Провайдеры с поддержкой окружения должны быть изменены в окружении воркера и затем перезагружены.",
+ "settings.audit_error": "Ошибка",
+ "settings.audit_loading": "Загрузка",
+ "settings.audit_log_title": "Журнал аудита",
+ "settings.audit_ready": "Ошибка",
+ "settings.auto_compact": "Автосжатие контекста",
+ "settings.auto_compact_desc":
+ "Управляет OpenCode compaction.auto для этого рабочего пространства. Перезагрузите движок после изменения.",
+ "settings.auto_update_desc": "Загружать обновления автоматически (запрашивает",
+ "settings.auto_update_title": "Автообновление",
+ "settings.background_checks_desc":
+ "OpenWork всегда проверяет при запуске. Также проверяет раз",
+ "settings.background_checks_title": "Фоновые проверки",
+ "settings.base_url_unavailable": "Базовый URL недоступен",
+ "settings.binary_unavailable": "Бинарный файл недоступен",
+ "settings.cap_browser_tools": "Инструменты браузера: {value}",
+ "settings.cap_commands": "Команды: {value}",
+ "settings.cap_config": "Конфигурация: {value}",
+ "settings.cap_file_tools": "Файловые инструменты: {value}",
+ "settings.cap_inbox_off": "ящик отключён",
+ "settings.cap_inbox_on": "ящик включён",
+ "settings.cap_mcp": "MCP: {value}",
+ "settings.cap_outbox_off": "исходящие отключены",
+ "settings.cap_outbox_on": "исходящие включены",
+ "settings.cap_plugins": "Плагины: {value}",
+ "settings.cap_proxy": "Прокси (OpenCodeRouter): {value}",
+ "settings.cap_read": "чтение",
+ "settings.cap_sandbox": "Песочница: {value}",
+ "settings.cap_skills": "Навыки: {value}",
+ "settings.cap_write": "запись",
+ "settings.capabilities_title": "Возможности сервера OpenWork",
+ "settings.capabilities_unavailable":
+ "Возможности недоступны. Подключитесь с токеном клиента.",
+ "settings.checking_for_updates": "Проверка обновлений",
+ "settings.choose": "Выбрать",
+ "settings.clear": "Очистить",
+ "settings.clipboard_unavailable":
+ "Буфер обмена недоступен в этой среде.",
+ "settings.configure": "Настроить",
+ "settings.connect_opencode_hint": "Подключитесь к OpenCode для загрузки провайдеров.",
+ "settings.connect_provider": "Подключить провайдер",
+ "settings.copied_debug_report": "Скопирован JSON отчёта среды выполнения.",
+ "settings.copy_failed": "Копирование отчёта среды выполнения не удалось.",
+ "settings.copy_json": "Копировать JSON",
+ "settings.custom_binary_hint":
+ "Используйте это для указания OpenWork на локальную сборку OpenCode",
+ "settings.custom_binary_label": "Пользовательский бинарный файл OpenCode",
+ "settings.data_dir_unavailable": "Директория данных недоступна",
+ "settings.debug_commit": "Коммит: {sha}",
+ "settings.debug_desktop_app": "Десктопное приложение: {version}",
+ "settings.debug_opencode_router_version": "OpenCodeRouter: {version}",
+ "settings.debug_opencode_version": "OpenCode: {version}",
+ "settings.debug_openwork_server_version": "Сервер OpenWork: {version}",
+ "settings.debug_orchestrator_version": "Оркестратор: {version}",
+ "settings.debug_section_title": "Разработчик",
+ "settings.deeplink_failed": "Открытие глубокой ссылки не удалось.",
+ "settings.deeplink_hint":
+ "Принимает openwork://, openwork-dev:// или прямой поддерживаемый https://share.openworklabs.com/b/... URL.",
+ "settings.delete_containers": "Удаление контейнеров...",
+ "settings.delete_local_config": "Удаление локального состояния...",
+ "settings.desktop_only_hint": "Доступно в десктопном приложении.",
+ "settings.dev_mode_badge": "Режим разработчика",
+ "settings.developer_mode_desc":
+ "Включает инструменты отладки, диагностику и вкладку Разработчик.",
+ "settings.developer_mode_title": "Режим разработчика",
+ "settings.developer_panel_disabled": "Панель разработчика включена.",
+ "settings.developer_panel_enabled": "Панель разработчика включена.",
+ "settings.devtools_desc": "Здоровье сайдкара, возможности и журнал аудита.",
+ "settings.devtools_title": "Инструменты разработчика",
+ "settings.diag_approval": "Одобрение: {mode} ({ms}мс)",
+ "settings.diag_config_path": "Путь конфигурации: {path}",
+ "settings.diag_daemon_url": "Демон: {url}",
+ "settings.diag_default": "по умолчанию",
+ "settings.diag_health_port": "Порт здоровья: {port}",
+ "settings.diag_healthy_ms": "Здоров: {ms}мс",
+ "settings.diag_host_token_source": "Источник токена хоста: {source}",
+ "settings.diag_last_attempt": "Последняя попытка: {time}",
+ "settings.diag_load_sessions_ms": "Загрузка сессий: {ms}мс",
+ "settings.diag_opencode_binary": "Бинарный файл OpenCode: {binary}",
+ "settings.diag_opencode_url": "OpenCode: {url}",
+ "settings.diag_pending_permissions_ms": "Ожидающие разрешения: {ms}мс",
+ "settings.diag_pid": "PID: {pid}",
+ "settings.diag_providers_ms": "Провайдеры: {ms}мс",
+ "settings.diag_read_only": "Только чтение: {value}",
+ "settings.diag_reason": "Причина: {reason}",
+ "settings.diag_runtime_workspace": "Среда выполнения рабочего пространства: {id}",
+ "settings.diag_selected_workspace": "Выбранное рабочее пространство: {id}",
+ "settings.diag_sidecar": "Сайдкар: {info}",
+ "settings.diag_started": "Запущен: {time}",
+ "settings.diag_token_source": "Источник токена: {source}",
+ "settings.diag_total_ms": "Всего: {ms}мс",
+ "settings.diag_version": "Версия: {version}",
+ "settings.diag_workspaces": "Рабочие пространства: {count}",
+ "settings.diagnostics_unavailable": "Диагностика недоступна.",
+ "settings.disabled": "{caps().proxy?.opencodeRouter",
+ "settings.disconnect_confirm_suffix":
+ "Отключить {resolved}? Это удалит сохранённые API ключи или учётные данные OAuth для этого провайдера.",
+ "settings.disconnect_server": "Отключить сервер",
+ "settings.disconnected_prefix": "Отключено {resolved}.",
+ "settings.disconnecting": "Отключение...",
+ "settings.docker_containers_desc":
+ "Принудительно удалить Docker контейнеры, запущенные OpenWork",
+ "settings.docker_containers_title": "Docker контейнеры OpenWork",
+ "settings.docker_requires_desktop": "Очистка Docker требует десктопного приложения",
+ "settings.downloading_bytes": "Загрузка {downloaded}",
+ "settings.downloading_progress":
+ "Загрузка {downloaded} / {total} ({percent}%)",
+ "settings.enable_exa": "Включить веб-поиск Exa",
+ "settings.enable_exa_desc":
+ "Применяется, когда OpenWork Orchestrator запускает OpenCode. Выключено по",
+ "settings.enabled": "Конфигурация:",
+ "settings.engine_bundled": "Встроенный (рекомендуется)",
+ "settings.engine_bundled_hint":
+ "Встроенный движок — самый надёжный вариант. Используйте Системный",
+ "settings.engine_custom_binary": "Пользовательский бинарный файл",
+ "settings.engine_desc": "Выберите, как OpenCode запускается локально.",
+ "settings.engine_runtime_label": "Среда выполнения движка",
+ "settings.engine_source_debug": "Источник движка",
+ "settings.engine_system_path": "Системная установка (PATH)",
+ "settings.engine_title": "Движок",
+ "settings.exa_restart_hint":
+ "Перезапустите OpenCode или оркестратор после изменения этой настройки.",
+ "settings.export": "Экспорт",
+ "settings.export_failed": "Экспорт отчёта среды выполнения не удался.",
+ "settings.export_unavailable": "Экспорт недоступен в этой среде.",
+ "settings.exported_debug_report": "Экспортирован JSON отчёта среды выполнения.",
+ "settings.failed": "Подключение",
+ "settings.failed_open_providers": "Открытие провайдеров не удалось",
+ "settings.feedback_badge": "Мы читаем каждое сообщение",
+ "settings.feedback_desc":
+ "Расскажите, что нравится, а что нет. Обратная связь идёт напрямую к команде и помогает нам приоритизировать следующие выпуски.",
+ "settings.feedback_title": "Помогите улучшить OpenWork",
+ "settings.group_global": "Рабочее пространство",
+ "settings.group_workspace": "Глобальный",
+ "settings.hide_titlebar": "Скрыть заголовок окна",
+ "settings.hide_titlebar_desc":
+ "Скрыть заголовок окна. Полезно для тайлинговых оконных менеджеров",
+ "settings.join_discord": "Присоединиться к Discord",
+ "settings.last_error": "Последняя ошибка",
+ "settings.last_stderr": "Последний stderr",
+ "settings.last_stdout": "Последний stdout",
+ "settings.loading_providers": "Загрузка провайдеров...",
+ "settings.logs_on_host": "Логи доступны на хосте.",
+ "settings.managed_by_env": "Отключить",
+ "settings.messaging_bridge_service": "Сервис моста обмена сообщениями.",
+ "settings.messaging_section_desc":
+ "Управляйте идентичностями Telegram/Slack и привязками на вкладке Идентичности.",
+ "settings.messaging_section_title": "Обмен сообщениями",
+ "settings.model_behavior": "Поведение модели",
+ "settings.model_behavior_desc":
+ "Откройте селектор модели по умолчанию для выбора профилей рассуждения, когда они доступны.",
+ "settings.model_section_desc":
+ "Выберите модель чата по умолчанию и просмотрите, как она рассуждает.",
+ "settings.no_access": "нет доступа",
+ "settings.no_active_workspace": "Нет активного локального рабочего пространства.",
+ "settings.no_audit_entries": "Записей аудита пока нет.",
+ "settings.no_binary_selected": "Бинарный файл не выбран.",
+ "settings.no_custom_path_set": "Пользовательский путь не установлен",
+ "settings.no_project_directory": "Нет директории проекта",
+ "settings.no_stderr": "stderr пока не захвачен.",
+ "settings.no_stdout": "stdout пока не захвачен.",
+ "settings.no_worker_directory": "Нет директории проекта",
+ "settings.no_worker_path": "Нет доступного пути к воркеру",
+ "settings.nuke_confirm_dev":
+ "Это необратимо. Это УДАЛИТ все данные OpenWork для этой dev сборки и все изолированные данные конфигурации, аутентификации, кэша, данных и состояния OpenCode dev, затем закроет OpenWork. Продолжить?",
+ "settings.nuke_confirm_prod":
+ "Это необратимо. Это УДАЛИТ все данные OpenWork для этой dev сборки и все изолированные данные конфигурации, аутентификации, кэша, данных и состояния OpenCode dev, затем закроет OpenWork. Продолжить?",
+ "settings.nuke_failed": "Удаление состояния OpenWork и OpenCode не удалось.",
+ "settings.nuke_hint":
+ "Используйте это только когда хотите полностью сбросить десктопное приложение и его состояние среды выполнения OpenCode.",
+ "settings.nuke_success":
+ "Удалено состояние OpenWork и OpenCode. OpenWork закрывается...",
+ "settings.offline": "Недоступно",
+ "settings.open_deeplink_action": "Открытие...",
+ "settings.open_deeplink_button": "Скрыть",
+ "settings.open_deeplink_desc": "font-mono",
+ "settings.open_deeplink_title": "Открыть глубокую ссылку",
+ "settings.opencode_engine_desc":
+ "Локальная среда выполнения для агентов, инструментов и провайдеров моделей.",
+ "settings.opencode_engine_label": "Движок OpenCode",
+ "settings.opencode_engine_sidecar_desc": "Сайдкар локального выполнения.",
+ "settings.opencode_router_sidecar": "Сайдкар OpenCodeRouter",
+ "settings.opencode_runtime_desc":
+ "Параметры среды выполнения для локального движка и моста оркестратора.",
+ "settings.opencode_sdk_desc": "Диагностика подключения UI.",
+ "settings.opencode_sdk_title": "Движок OpenCode",
+ "settings.opencode_section_label": "OpenCode",
+ "settings.opencode_url_unavailable": "Базовый URL недоступен",
+ "settings.opening": "Открыть глубокую ссылку",
+ "settings.openwork_config_sidecar_desc": "Сайдкар конфигурации и одобрений.",
+ "settings.openwork_diagnostics_title": "Диагностика сервера OpenWork",
+ "settings.openwork_server_desc":
+ "Плоскость управления сессиями для синхронизации приложения, воркеров и удалённого",
+ "settings.openwork_server_label": "Сервер OpenWork",
+ "settings.orchestrator_daemon_layer_desc": "Слой оркестрации рабочего пространства.",
+ "settings.orchestrator_daemon_title": "Демон оркестратора",
+ "settings.production_mode_badge": "Режим разработчика",
+ "settings.provider_source_config": "Конфигурация",
+ "settings.provider_source_custom": "Пользовательский",
+ "settings.provider_source_env": "Окружение",
+ "settings.providers_desc": "Подключите сервисы для моделей и инструментов.",
+ "settings.providers_title": "Провайдеры",
+ "settings.quit_hint":
+ "OpenWork закрывается сразу после очистки, чтобы следующий запуск начинался с чистого локального состояния для этого режима.",
+ "settings.reconnect_failed":
+ "Переподключение не удалось. Проверьте URL/токен сервера и попробуйте снова.",
+ "settings.reconnect_server": "Переподключение...",
+ "settings.reconnect_server_failed": "Переподключение сервера OpenWork не удалось.",
+ "settings.reconnected": "Переподключено к серверу OpenWork.",
+ "settings.reconnecting": "Переподключение...",
+ "settings.removing_containers": "Удаление контейнеров...",
+ "settings.removing_local_state": "Удаление локального состояния...",
+ "settings.report_issue": "Сообщить о проблеме",
+ "settings.reset_button": "Сбросить",
+ "settings.reset_config_defaults": "Сброс...",
+ "settings.reset_config_failed": "Сброс конфигурации приложения не удался.",
+ "settings.reset_openwork_desc_dev":
+ "При активном режиме разработчика, очищает только изолированное состояние OpenCode dev внутри openwork-dev-data.",
+ "settings.reset_openwork_desc_prod":
+ "При активном режиме разработчика, очищает только изолированное состояние OpenCode dev внутри openwork-dev-data.",
+ "settings.reset_openwork_title": "Сбросить состояние OpenWork + OpenCode",
+ "settings.reset_recovery_desc": "Очистить данные или перезапустить поток настройки.",
+ "settings.reset_recovery_title": "Сброс и восстановление",
+ "settings.reset_requires_confirm":
+ "Требует ввода RESET и перезапустит приложение.",
+ "settings.reset_startup_pref": "Сбросить предпочтение запуска",
+ "settings.resetting": "Сброс...",
+ "settings.restart_blocked_message":
+ "OpenWork требует перезапуска для завершения этого обновления. Чтобы не прерывать вашу текущую работу, установка приостановлена до завершения активных запусков или их остановки.",
+ "settings.restart_failed": "Перезапуск не удался. Проверьте логи и попробуйте снова.",
+ "settings.restart_local_server": "Перезапуск...",
+ "settings.restart_opencode": "Перезапуск...",
+ "settings.restart_opencode_router": "Перезапуск...",
+ "settings.restart_openwork_server": "Перезапуск...",
+ "settings.restart_orchestrator": "Перезапуск...",
+ "settings.restart_server_failed": "Перезапуск локального сервера не удался.",
+ "settings.restarted": "Локальный сервер перезапущен.",
+ "settings.restarting": "Перезапуск...",
+ "settings.reveal_config": "Показать конфигурацию",
+ "settings.reveal_config_failed": "Открытие конфигурации рабочего пространства не удалось.",
+ "settings.reveal_config_requires_desktop":
+ "Открытие конфигурации требует десктопного приложения",
+ "settings.revealed_workspace_config": "Конфигурация рабочего пространства показана.",
+ "settings.run_sandbox_probe": "Запуск зонда...",
+ "settings.running_probe": "Запуск зонда...",
+ "settings.runtime_applies_hint":
+ "Применяется при следующем запуске или перезагрузке движка.",
+ "settings.runtime_debug_desc":
+ "Читаемый снимок диагностики с экспортом в один клик.",
+ "settings.runtime_debug_title": "Отчёт отладки среды выполнения",
+ "settings.runtime_desc": "Статус вашего локального движка и сервера OpenWork.",
+ "settings.runtime_direct": "Прямой (OpenCode)",
+ "settings.runtime_orchestrator": "OpenWork Orchestrator",
+ "settings.runtime_title": "Среда выполнения",
+ "settings.sandbox_error": "готово",
+ "settings.sandbox_export_hint": "Используйте Экспорт в отчёте отладки среды выполнения выше для",
+ "settings.sandbox_probe_desc":
+ "Запускает временную проверку запуска Docker песочницы и",
+ "settings.sandbox_probe_errors": "Зонд песочницы завершён с ошибками.",
+ "settings.sandbox_probe_failed": "Зонд песочницы не удался.",
+ "settings.sandbox_probe_success":
+ "Зонд песочницы успешен. Экспортируйте отчёт отладки для поддержки.",
+ "settings.sandbox_probe_title": "Зонд песочницы",
+ "settings.sandbox_ready": "ошибка",
+ "settings.sandbox_requires_desktop": "Зонд песочницы требует десктопного приложения",
+ "settings.sandbox_result": "Результат: {status}",
+ "settings.sandbox_run_id": "ID запуска: {id}",
+ "settings.sandbox_stop_runs_hint": "Остановите активные запуски перед зондированием",
+ "settings.select_binary": "Выбрать бинарный файл OpenCode",
+ "settings.select_workspace_first":
+ "Выберите локальное рабочее пространство перед открытием конфигурации.",
+ "settings.send_feedback": "Отправить отзыв",
+ "settings.service_restarts_desc":
+ "Перезапустите определённые сервисы хоста, не покидая эту",
+ "settings.service_restarts_title": "Перезапуски сервисов",
+ "settings.show_model_reasoning": "Показать рассуждение модели",
+ "settings.show_model_reasoning_desc":
+ "Развернуть следы рассуждения в UI, когда модель их предоставляет.",
+ "settings.sidecar_config_unavailable": "Конфигурация сайдкара недоступна",
+ "settings.startup_local": "Запустить локальный сервер",
+ "settings.startup_not_set": "Подключиться к серверу",
+ "settings.startup_remote_warning":
+ "Предпочтение запуска сейчас удалённое. Настройки движка",
+ "settings.startup_reset_hint":
+ "Это очистит ваше сохранённое предпочтение и покажет подключение",
+ "settings.startup_server": "Подключиться к серверу",
+ "settings.stop_local_server": "Остановить локальный сервер",
+ "settings.stop_runs_before_cleanup": "Остановите активные запуски перед очисткой",
+ "settings.stop_runs_before_reset_config":
+ "Остановите активные запуски перед сбросом конфигурации",
+ "settings.suffix_available": "{available} доступно",
+ "settings.suffix_connected": "подключено",
+ "settings.switch": "Переключить",
+ "settings.tab_description_advanced":
+ "Проверьте здоровье среды выполнения, состояние подключения и элементы управления для разработчиков.",
+ "settings.tab_description_appearance":
+ "Настройте, как выглядит OpenWork на десктопе, тему системы и хром приложения.",
+ "settings.tab_description_automations":
+ "Создавайте и управляйте запланированными автоматизациями из настроек рабочего пространства.",
+ "settings.tab_description_debug":
+ "Просмотрите диагностику среды выполнения, логи и утилиты низкоуровневой отладки.",
+ "settings.tab_description_den":
+ "Управляйте подключением OpenWork Cloud, размещёнными воркерами и доступом к рабочему пространству.",
+ "settings.tab_description_extensions":
+ "Управляйте приложениями MCP и плагинами OpenCode для этого рабочего пространства.",
+ "settings.tab_description_general":
+ "Подключайте провайдеров, выбирайте модель по умолчанию, авторизуйте папки и управляйте выбранным рабочим пространством OpenWork плюс его подключение среды выполнения.",
+ "settings.tab_description_messaging":
+ "Настройте идентичности роутера и поведение ящика из настроек рабочего пространства.",
+ "settings.tab_description_model":
+ "Настройте модель по умолчанию, поведение среды выполнения и параметры вывода ассистента.",
+ "settings.tab_description_recovery":
+ "Восстановите состояние миграции, сбросьте параметры рабочего пространства по умолчанию и восстановите локальные настройки.",
+ "settings.tab_description_skills":
+ "Просматривайте, редактируйте и устанавливайте навыки, не покидая настройки.",
+ "settings.tab_description_updates":
+ "Держите приложение в актуальном состоянии с тихими фоновыми проверками и управлением установкой.",
+ "settings.tab_model": "Модель",
+ "settings.toolbar_ready_to_install": "Готово к установке${version ? ",
+ "settings.update_available_version": "Доступно обновление: v{version}",
+ "settings.update_check_button": "Проверить",
+ "settings.update_check_failed": "Проверка обновления не удалась",
+ "settings.update_download_button": "Скачать",
+ "settings.update_install_button": "Установить и перезапустить",
+ "settings.update_last_checked": "Последняя проверка {time}",
+ "settings.update_published": "Опубликовано {date}",
+ "settings.update_ready_version": "Готово к установке: v{version}",
+ "settings.updates_desc": "Держите OpenWork в актуальном состоянии.",
+ "settings.versions_desc": "Сайдкар + информация о сборке десктопа.",
+ "settings.versions_title": "Версии",
+ "settings.window_appearance_desc": "Настройте внешний вид окна.",
+ "settings.worker_id_label": "Воркер {id}",
+ "settings.worker_unresolved": "Воркер {runtimeWorkspaceId}",
+ "settings.workspace_config_desc": ".opencode/openwork.json",
+ "settings.workspace_config_title": "Конфигурация рабочего пространства",
+ "settings.workspace_debug_events_label": "События отладки рабочего пространства",
+ "settings.workspace_fallback_name": "Рабочее пространство",
+
+ "share_skill_destination.add_to_workspace":
+ "share_skill_destination.add_to_workspace",
+ "share_skill_destination.adding": "share_skill_destination.adding",
+ "share_skill_destination.connect_remote_hint":
+ "share_skill_destination.connect_remote_hint",
+ "share_skill_destination.create_worker_hint":
+ "share_skill_destination.create_worker_hint",
+ "share_skill_destination.more_options":
+ "share_skill_destination.more_options",
+
+ "skills.add_custom_repo": "Добавить пользовательский GitHub репо",
+ "skills.add_git_repo": "Добавить git репо",
+ "skills.add_openwork_hub": "Добавить OpenWork Hub",
+ "skills.available_from_hub": "Доступно из Hub",
+ "skills.copy_link_failed": "Копирование ссылки не удалось",
+ "skills.create_in_chat": "Создать навык в чате",
+ "skills.from_repo": "Из {owner}/{repo}",
+ "skills.github_repo_hint": "font-mono",
+ "skills.hub_desc":
+ "Просматривайте общие навыки из Hub на GitHub и добавляйте их к этому воркеру.",
+ "skills.hub_label": "Hub",
+ "skills.import_local_skill": "Импортировать локальный навык",
+ "skills.install_name_title": "Установить {name}",
+ "skills.installed_desc":
+ "Установленные навыки живут на этом воркере и могут быть редактированы или общими.",
+ "skills.installed_status": "Установлено",
+ "skills.installing": "Добавить навык",
+ "skills.installing_prefix": "Установка {name}…",
+ "skills.link_copied": "Ссылка скопирована",
+ "skills.loading": "Загрузка…",
+ "skills.no_description": "Описания пока нет.",
+ "skills.no_hub_repo_label": "Hub репо не выбрано",
+ "skills.no_hub_repo_selected": "Hub навыки недоступны.",
+ "skills.no_hub_skills":
+ "Hub репо не выбрано. Добавьте GitHub репо для просмотра навыков.",
+ "skills.owner_label": "Владелец",
+ "skills.owner_repo_required": "Требуются владелец и репо.",
+ "skills.ref_label": "Ref (ветка/тег/коммит)",
+ "skills.refresh_hub": "Обновить hub",
+ "skills.refresh_hub_title": "Обновить каталог hub",
+ "skills.remove_saved_repo": "Удалить сохранённый репо",
+ "skills.repo_label": "Репо",
+ "skills.save_and_load": "Сохранить и загрузить",
+ "skills.save_failed": "Сохранение навыка не удалось.",
+ "skills.shown_count": "Показано {count}",
+ "skills.skill_load_failed": "Загрузка навыка не удалась.",
+ "skills.source_label": "Источник",
+ "skills.trigger_label": "Триггер: {trigger}",
+ "skills.worker_profile_desc":
+ "Навыки — это основные способности этого воркера. Откройте их из Hub, управляйте установленными и создавайте новые прямо в чате.",
+} as const;