diff options
| author | Adam <[email protected]> | 2026-02-09 13:55:55 -0600 |
|---|---|---|
| committer | Adam <[email protected]> | 2026-02-09 13:55:55 -0600 |
| commit | 274bb948e793c72d22d4e2d31e6b9559c6ff4d6c (patch) | |
| tree | 34d892e508c4af9387518d545dfd7ed4a875ff71 /packages/web/src/content/docs/ru | |
| parent | d9b4535d643f6bdc5c6cec0aa2c020ab98f9180c (diff) | |
| download | opencode-274bb948e793c72d22d4e2d31e6b9559c6ff4d6c.tar.gz opencode-274bb948e793c72d22d4e2d31e6b9559c6ff4d6c.zip | |
fix(docs): locale markdown issues
Diffstat (limited to 'packages/web/src/content/docs/ru')
27 files changed, 364 insertions, 364 deletions
diff --git a/packages/web/src/content/docs/ru/acp.mdx b/packages/web/src/content/docs/ru/acp.mdx index 0b63b2580..6030bc019 100644 --- a/packages/web/src/content/docs/ru/acp.mdx +++ b/packages/web/src/content/docs/ru/acp.mdx @@ -5,7 +5,7 @@ description: Используйте OpenCode в любом ACP-совмести� OpenCode поддерживает [Протокол агента-клиента](https://agentclientprotocol.com) или (ACP), что позволяет использовать его непосредственно в совместимых редакторах и IDE. -:::кончик +:::tip Список редакторов и инструментов, поддерживающих ACP, можно найти в [отчете о ходе работы ACP](https://zed.dev/blog/acp-progress-report#available-now). ::: @@ -144,7 +144,7 @@ require("codecompanion").setup({ OpenCode через ACP работает так же, как и в терминале. Поддерживаются все функции: -:::примечание +:::note Некоторые встроенные команды слэша, такие как `/undo` и `/redo`, в настоящее время не поддерживаются. ::: diff --git a/packages/web/src/content/docs/ru/agents.mdx b/packages/web/src/content/docs/ru/agents.mdx index 3b71a5f6f..9ed2289df 100644 --- a/packages/web/src/content/docs/ru/agents.mdx +++ b/packages/web/src/content/docs/ru/agents.mdx @@ -5,7 +5,7 @@ description: Настройте и используйте специализир Агенты — это специализированные ИИ-помощники, которых можно настроить для конкретных задач и рабочих процессов. Они позволяют создавать специализированные инструменты с настраиваемыми подсказками, моделями и доступом к инструментам. -:::кончик +:::tip Используйте агент плана для анализа кода и просмотра предложений без внесения каких-либо изменений в код. ::: @@ -23,7 +23,7 @@ description: Настройте и используйте специализир Первичные агенты — это основные помощники, с которыми вы взаимодействуете напрямую. Вы можете переключаться между ними, используя клавишу **Tab** или настроенную привязку клавиш `switch_agent`. Эти агенты ведут ваш основной разговор. Доступ к инструментам настраивается с помощью разрешений — например, при сборке все инструменты включены, а при планировании — ограничены. -:::кончик +:::tip Вы можете использовать клавишу **Tab** для переключения между основными агентами во время сеанса. ::: @@ -301,7 +301,7 @@ Provide constructive feedback without making direct changes. При достижении лимита агент получает специальную системную подсказку с указанием в ответ краткой информации о своей работе и рекомендуемых оставшихся задачах. -:::осторожность +:::caution Устаревшее поле `maxSteps` устарело. Вместо этого используйте `steps`. ::: @@ -345,7 +345,7 @@ Provide constructive feedback without making direct changes. Используйте конфигурацию `model`, чтобы переопределить модель этого агента. Полезно для использования разных моделей, оптимизированных под разные задачи. Например, более быстрая модель планирования и более эффективная модель реализации. -:::кончик +:::tip Если вы не укажете модель, основные агенты будут использовать глобально настроенную модель](/docs/config#models), а субагенты будут использовать модель основного агента, вызвавшего субагент. ::: @@ -385,7 +385,7 @@ Provide constructive feedback without making direct changes. } ``` -:::примечание +:::note Конфигурация, специфичная для агента, переопределяет глобальную конфигурацию. ::: @@ -557,7 +557,7 @@ Only analyze code and suggest changes. Это влияет только на видимость пользователя в меню автозаполнения. Скрытые агенты по-прежнему могут быть вызваны моделью с помощью инструмента «Задачи», если разрешения позволяют. -:::примечание +:::note Применяется только к агентам `mode: subagent`. ::: @@ -586,11 +586,11 @@ Only analyze code and suggest changes. Если установлено значение `deny`, субагент полностью удаляется из описания инструмента «Задача», поэтому модель не будет пытаться его вызвать. -:::кончик +:::tip Правила оцениваются по порядку, и **побеждает последнее подходящее правило**. В приведенном выше примере `orchestrator-planner` соответствует как `*` (запретить), так и `orchestrator-*` (разрешить), но поскольку `orchestrator-*` идет после `*`, результатом будет `allow`. ::: -:::кончик +:::tip Пользователи всегда могут вызвать любой субагент напрямую через меню автозаполнения `@`, даже если разрешения задач агента запрещают это. ::: @@ -656,7 +656,7 @@ Only analyze code and suggest changes. Эти дополнительные параметры зависят от модели и поставщика. Проверьте документацию вашего провайдера на наличие доступных параметров. -:::кончик +:::tip Запустите `opencode models`, чтобы просмотреть список доступных моделей. ::: @@ -696,7 +696,7 @@ opencode agent create Вот несколько примеров агентов, которые могут оказаться вам полезными. -:::кончик +:::tip У вас есть агент, которым вы хотели бы поделиться? [Отправьте PR](https://github.com/anomalyco/opencode). ::: diff --git a/packages/web/src/content/docs/ru/commands.mdx b/packages/web/src/content/docs/ru/commands.mdx index 044a087c0..23be01227 100644 --- a/packages/web/src/content/docs/ru/commands.mdx +++ b/packages/web/src/content/docs/ru/commands.mdx @@ -316,7 +316,7 @@ Check for performance issues and suggest improvements. открытый код включает несколько встроенных команд, таких как `/init`, `/undo`, `/redo`, `/share`, `/help`; [подробнее](/docs/tui#commands). -:::примечание +:::note Пользовательские команды могут переопределять встроенные команды. ::: diff --git a/packages/web/src/content/docs/ru/config.mdx b/packages/web/src/content/docs/ru/config.mdx index e8f6b490f..00276c559 100644 --- a/packages/web/src/content/docs/ru/config.mdx +++ b/packages/web/src/content/docs/ru/config.mdx @@ -28,7 +28,7 @@ OpenCode поддерживает форматы **JSON** и **JSONC** (JSON с Вы можете разместить свою конфигурацию в нескольких разных местах, и у них есть разный порядок старшинства. -:::примечание +:::note Файлы конфигурации **объединяются**, а не заменяются. ::: @@ -51,7 +51,7 @@ OpenCode поддерживает форматы **JSON** и **JSONC** (JSON с Это означает, что конфигурации проекта могут переопределять глобальные настройки по умолчанию, а глобальные конфигурации могут переопределять настройки по умолчанию для удаленной организации. -:::примечание +:::note В каталогах `.opencode` и `~/.config/opencode` для подкаталогов используются **множественные имена**: `agents/`, `commands/`, `modes/`, `plugins/`, `skills/`, `tools/` и `themes/`. Единственные имена (например, `agent/`) также поддерживаются для обратной совместимости. ::: @@ -105,7 +105,7 @@ OpenCode поддерживает форматы **JSON** и **JSONC** (JSON с Добавьте `opencode.json` в корень вашего проекта. Конфигурация проекта имеет наивысший приоритет среди стандартных файлов конфигурации — она переопределяет как глобальные, так и удаленные конфигурации. -:::кончик +:::tip Поместите конфигурацию конкретного проекта в корень вашего проекта. ::: @@ -291,7 +291,7 @@ Amazon Bedrock поддерживает конфигурацию, специфи - `profile` — именованный профиль AWS из `~/.aws/credentials` (по умолчанию переменная окружения `AWS_PROFILE`) - `endpoint` — URL-адрес пользовательской конечной точки для конечных точек VPC. Это псевдоним общего параметра `baseURL`, использующий терминологию, специфичную для AWS. Если указаны оба параметра, `endpoint` имеет приоритет. -:::примечание +:::note Токены носителя (`AWS_BEARER_TOKEN_BEDROCK` или `/connect`) имеют приоритет над аутентификацией на основе профиля. Подробности см. в [приоритет аутентификации](/docs/providers#authentication-precedence). ::: @@ -576,7 +576,7 @@ OpenCode автоматически загрузит все новые обно� } ``` -:::примечание +:::note `disabled_providers` имеет приоритет над `enabled_providers`. ::: @@ -601,7 +601,7 @@ OpenCode автоматически загрузит все новые обно� Это полезно, если вы хотите ограничить OpenCode использованием только определенных поставщиков, а не отключать их по одному. -:::примечание +:::note `disabled_providers` имеет приоритет над `enabled_providers`. ::: @@ -620,7 +620,7 @@ OpenCode автоматически загрузит все новые обно� } ``` -:::осторожность +:::caution Экспериментальные варианты не стабильны. Они могут быть изменены или удалены без предварительного уведомления. ::: diff --git a/packages/web/src/content/docs/ru/ecosystem.mdx b/packages/web/src/content/docs/ru/ecosystem.mdx index eff3a2813..6aae89cb4 100644 --- a/packages/web/src/content/docs/ru/ecosystem.mdx +++ b/packages/web/src/content/docs/ru/ecosystem.mdx @@ -5,7 +5,7 @@ description: Проекты и интеграции, созданные с по� Коллекция проектов сообщества, построенных на OpenCode. -:::примечание +:::note Хотите добавить свой проект, связанный с OpenCode, в этот список? Разместите пиар. ::: diff --git a/packages/web/src/content/docs/ru/enterprise.mdx b/packages/web/src/content/docs/ru/enterprise.mdx index e29879792..d2119686f 100644 --- a/packages/web/src/content/docs/ru/enterprise.mdx +++ b/packages/web/src/content/docs/ru/enterprise.mdx @@ -8,7 +8,7 @@ export const email = `mailto:${config.email}` OpenCode Enterprise предназначен для организаций, которые хотят быть уверены, что их код и данные никогда не покинут инфраструктуру. Это можно сделать с помощью централизованной конфигурации, которая интегрируется с вашим единым входом и внутренним шлюзом AI. -:::примечание +:::note OpenCode не хранит ваш код или контекстные данные. ::: @@ -154,7 +154,7 @@ npm login --registry=https://your-company.jfrog.io/api/npm/npm-virtual/ При этом создается `~/.npmrc` с данными аутентификации. OpenCode автоматически возьми это. -:::осторожность +:::caution Перед запуском OpenCode вы должны войти в частный реестр. ::: diff --git a/packages/web/src/content/docs/ru/gitlab.mdx b/packages/web/src/content/docs/ru/gitlab.mdx index ce8999777..d2c2e9a9a 100644 --- a/packages/web/src/content/docs/ru/gitlab.mdx +++ b/packages/web/src/content/docs/ru/gitlab.mdx @@ -64,7 +64,7 @@ OpenCode интегрируется с вашим рабочим процесс� OpenCode работает в вашем конвейере GitLab CI/CD. Вот что вам понадобится для его настройки: -:::кончик +:::tip Ознакомьтесь с [**документацией GitLab**](https://docs.gitlab.com/user/duo_agent_platform/agent_assistant/) для получения актуальных инструкций. ::: @@ -160,7 +160,7 @@ OpenCode работает в вашем конвейере GitLab CI/CD. Вот Вот несколько примеров того, как вы можете использовать OpenCode в GitLab. -:::кончик +:::tip Вы можете настроить использование триггерной фразы, отличной от `@opencode`. ::: diff --git a/packages/web/src/content/docs/ru/index.mdx b/packages/web/src/content/docs/ru/index.mdx index 58b022cba..ff26fde3e 100644 --- a/packages/web/src/content/docs/ru/index.mdx +++ b/packages/web/src/content/docs/ru/index.mdx @@ -182,7 +182,7 @@ opencode Это позволит OpenCode проанализировать ваш проект и создать файл `AGENTS.md` в корень проекта. -:::кончик +:::tip Вам следует зафиксировать файл `AGENTS.md` вашего проекта в Git. ::: @@ -205,7 +205,7 @@ opencode Вы можете попросить OpenCode объяснить вам кодовую базу. -:::кончик +:::tip Используйте ключ `@` для нечеткого поиска файлов в проекте. ::: @@ -321,7 +321,7 @@ Can you refactor the function in @packages/functions/src/api/index.ts? Отсюда вы можете настроить подсказку и попросить OpenCode повторить попытку. -:::кончик +:::tip Вы можете запустить `/undo` несколько раз, чтобы отменить несколько изменений. ::: @@ -344,7 +344,7 @@ Can you refactor the function in @packages/functions/src/api/index.ts? Это создаст ссылку на текущий разговор и скопирует ее в буфер обмена. -:::примечание +:::note По умолчанию общий доступ к беседам не предоставляется. ::: diff --git a/packages/web/src/content/docs/ru/lsp.mdx b/packages/web/src/content/docs/ru/lsp.mdx index 84d8ccaa7..f747ad454 100644 --- a/packages/web/src/content/docs/ru/lsp.mdx +++ b/packages/web/src/content/docs/ru/lsp.mdx @@ -11,44 +11,44 @@ OpenCode интегрируется с вашим протоколом язык� OpenCode поставляется с несколькими встроенными LSP-серверами для популярных языков: -| ЛСП Сервер | Расширения | Требования | -| --------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------------- | -| астро | .astro | Автоматическая установка для проектов Astro | -| бить | .sh, .bash, .zsh, .ksh | Автоматически устанавливает сервер языка bash | -| лязг | .c, .cpp, .cc, .cxx, .c++, .h, .hpp, .hh, .hxx, .h++ | Автоматическая установка для проектов C/C++. | -| csharp | .cs | `.NET SDK` установлен | -| Clojure-LSP | .clj, .cljs, .cljc, .edn | Доступна команда `clojure-lsp` | -| дротик | .dart | Доступна команда `dart` | -| дено | .ts, .tsx, .js, .jsx, .mjs | Доступна команда `deno` (автоматически определяет deno.json/deno.jsonc) | -| эликсир-ls | .ex, .exs | Доступна команда `elixir` | -| эслинт | .ts, .tsx, .js, .jsx, .mjs, .cjs, .mts, .cts, .vue | Зависимость `eslint` в проекте | -| fsharp | .fs, .fsi, .fsx, .fsscript | `.NET SDK` установлен | -| светиться | .блеск | Доступна команда `gleam` | -| гоплс | .идти | Доступна команда `go` | -| хлс | .hs, .lhs | Доступна команда `haskell-language-server-wrapper` | -| jdtls | .java | `Java SDK (version 21+)` установлен | -| Котлин-LS | .кт, .ктс | Автоматическая установка для проектов Kotlin | -| Луа-ЛС | .lua | Автоматическая установка для проектов Lua | -| снег | .nix | Доступна команда `nixd` | -| ocaml-lsp | .мл, .мли | Доступна команда `ocamllsp` | -| бычья линта | .ts, .tsx, .js, .jsx, .mjs, .cjs, .mts, .cts, .vue, .astro, .svelte | Зависимость `oxlint` в проекте | -| PHP | .php | Автоматическая установка для проектов PHP | -| призма | .prisma | Доступна команда `prisma` | -| пирит | .py, .pyi | Установлена зависимость `pyright` | -| рубин-lsp (рубокоп) | .rb, .rake, .gemspec, .ru | Доступны команды `ruby` и `gem`. | -| ржавчина | .rs | Доступна команда `rust-analyzer` | -| исходный комплект-lsp | .swift, .objc, .objcpp | `swift` установлен (`xcode` в macOS) | -| стройный | .стройный | Автоматическая установка для проектов Svelte | -| терраформировать | .tf, .tfvars | Автоматическая установка из выпусков GitHub | -| tinymist | .тип, .типк | Автоматическая установка из выпусков GitHub | -| машинопись | .ts, .tsx, .js, .jsx, .mjs, .cjs, .mts, .cts | Зависимость `typescript` в проекте | -| вид | .vue | Автоматическая установка для проектов Vue | -| Ямл-лс | .yaml, .yml | Автоматически устанавливает Red Hat yaml-language-server | -| Злс | .zig, .zon | Доступна команда `zig` | +| LSP Server | Extensions | Requirements | +| ------------------ | ------------------------------------------------------------------- | ------------------------------------------------------------ | +| astro | .astro | Auto-installs for Astro projects | +| bash | .sh, .bash, .zsh, .ksh | Auto-installs bash-language-server | +| clangd | .c, .cpp, .cc, .cxx, .c++, .h, .hpp, .hh, .hxx, .h++ | Auto-installs for C/C++ projects | +| csharp | .cs | `.NET SDK` installed | +| clojure-lsp | .clj, .cljs, .cljc, .edn | `clojure-lsp` command available | +| dart | .dart | `dart` command available | +| deno | .ts, .tsx, .js, .jsx, .mjs | `deno` command available (auto-detects deno.json/deno.jsonc) | +| elixir-ls | .ex, .exs | `elixir` command available | +| eslint | .ts, .tsx, .js, .jsx, .mjs, .cjs, .mts, .cts, .vue | `eslint` dependency in project | +| fsharp | .fs, .fsi, .fsx, .fsscript | `.NET SDK` installed | +| gleam | .gleam | `gleam` command available | +| gopls | .go | `go` command available | +| hls | .hs, .lhs | `haskell-language-server-wrapper` command available | +| jdtls | .java | `Java SDK (version 21+)` installed | +| kotlin-ls | .kt, .kts | Auto-installs for Kotlin projects | +| lua-ls | .lua | Auto-installs for Lua projects | +| nixd | .nix | `nixd` command available | +| ocaml-lsp | .ml, .mli | `ocamllsp` command available | +| oxlint | .ts, .tsx, .js, .jsx, .mjs, .cjs, .mts, .cts, .vue, .astro, .svelte | `oxlint` dependency in project | +| php intelephense | .php | Auto-installs for PHP projects | +| prisma | .prisma | `prisma` command available | +| pyright | .py, .pyi | `pyright` dependency installed | +| ruby-lsp (rubocop) | .rb, .rake, .gemspec, .ru | `ruby` and `gem` commands available | +| rust | .rs | `rust-analyzer` command available | +| sourcekit-lsp | .swift, .objc, .objcpp | `swift` installed (`xcode` on macOS) | +| svelte | .svelte | Auto-installs for Svelte projects | +| terraform | .tf, .tfvars | Auto-installs from GitHub releases | +| tinymist | .typ, .typc | Auto-installs from GitHub releases | +| typescript | .ts, .tsx, .js, .jsx, .mjs, .cjs, .mts, .cts | `typescript` dependency in project | +| vue | .vue | Auto-installs for Vue projects | +| yaml-ls | .yaml, .yml | Auto-installs Red Hat yaml-language-server | +| zls | .zig, .zon | `zig` command available | Серверы LSP автоматически включаются при обнаружении одного из указанных выше расширений файлов и выполнении требований. -:::примечание +:::note Вы можете отключить автоматическую загрузку LSP-сервера, установив для переменной среды `OPENCODE_DISABLE_LSP_DOWNLOAD` значение `true`. ::: @@ -78,11 +78,11 @@ OpenCode поставляется с несколькими встроенным | Свойство | Тип | Описание | | ---------------- | ------------------- | --------------------------------------------------------------------------- | -| `disabled` | логическое значение | Установите для этого параметра значение `true`, чтобы отключить сервер LSP. | -| `command` | нить[] | Команда запуска LSP-сервера | -| `extensions` | нить[] | Расширения файлов, которые должен обрабатывать этот сервер LSP | -| `env` | объект | Переменные среды, которые нужно установить при запуске сервера | -| `initialization` | объект | Параметры инициализации для отправки на сервер LSP | +| `disabled` | boolean | Установите для этого параметра значение `true`, чтобы отключить сервер LSP. | +| `command` | string[] | Команда запуска LSP-сервера | +| `extensions` | string[] | Расширения файлов, которые должен обрабатывать этот сервер LSP | +| `env` | object | Переменные среды, которые нужно установить при запуске сервера | +| `initialization` | object | Параметры инициализации для отправки на сервер LSP | Давайте посмотрим на несколько примеров. @@ -126,7 +126,7 @@ OpenCode поставляется с несколькими встроенным } ``` -:::примечание +:::note Параметры инициализации зависят от сервера LSP. Проверьте документацию вашего LSP-сервера на наличие доступных опций. ::: diff --git a/packages/web/src/content/docs/ru/mcp-servers.mdx b/packages/web/src/content/docs/ru/mcp-servers.mdx index a80481d3f..2792bdd52 100644 --- a/packages/web/src/content/docs/ru/mcp-servers.mdx +++ b/packages/web/src/content/docs/ru/mcp-servers.mdx @@ -13,7 +13,7 @@ description: Добавьте локальные и удаленные инст� Когда вы используете сервер MCP, он добавляет контекст. Это может быстро сложиться, если у вас много инструментов. Поэтому мы рекомендуем быть осторожными с тем, какие серверы MCP вы используете. -:::кончик +:::tip Серверы MCP добавляются к вашему контексту, поэтому будьте осторожны с тем, какие из них вы включаете. ::: @@ -266,12 +266,12 @@ opencode mcp logout my-oauth-server #### Параметры OAuth -| Вариант | Тип | Описание | -| -------------- | --------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `oauth` | Объект \ | ЛОЖЬ | Объект конфигурации OAuth или `false`, чтобы отключить автоматическое обнаружение OAuth. | -| `clientId` | Нить | Идентификатор клиента OAuth. Если этот параметр не указан, будет предпринята попытка динамической регистрации клиента. | -| `clientSecret` | Нить | Секрет клиента OAuth, если этого требует сервер авторизации. | -| `scope` | Нить | Области OAuth для запроса во время авторизации. | +| Вариант | Тип | Описание | +| -------------- | -------------- | --------------------------------------------------------------------------------------------- | +| `oauth` | Object \| false | Объект конфигурации OAuth или `false`, чтобы отключить автообнаружение OAuth. | +| `clientId` | String | OAuth client ID. Если не указан, будет выполнена динамическая регистрация клиента. | +| `clientSecret` | String | OAuth client secret, если этого требует сервер авторизации. | +| `scope` | String | OAuth scopes для запроса во время авторизации. | #### Отладка @@ -383,7 +383,7 @@ opencode mcp debug my-oauth-server - `?` соответствует ровно одному символу. - Все остальные символы совпадают буквально -:::примечание +:::note Инструменты сервера MCP регистрируются с именем сервера в качестве префикса, поэтому, чтобы отключить все инструменты для сервера, просто используйте: ``` diff --git a/packages/web/src/content/docs/ru/models.mdx b/packages/web/src/content/docs/ru/models.mdx index 3420c5fa6..62efb024f 100644 --- a/packages/web/src/content/docs/ru/models.mdx +++ b/packages/web/src/content/docs/ru/models.mdx @@ -29,7 +29,7 @@ OpenCode использует [AI SDK](https://ai-sdk.dev/) и [Models.dev](http Моделей очень много, новые выходят каждую неделю. -:::кончик +:::tip Рассмотрите возможность использования одной из моделей, которые мы рекомендуем. ::: @@ -164,7 +164,7 @@ OpenCode поставляется с вариантами по умолчани� - `low` – меньший бюджет усилий/токенов. - `high` — более высокий бюджет усилий/токенов -:::кончик +:::tip Этот список не является исчерпывающим. Многие другие провайдеры также имеют встроенные настройки по умолчанию. ::: diff --git a/packages/web/src/content/docs/ru/modes.mdx b/packages/web/src/content/docs/ru/modes.mdx index be070a8d6..961c1c18f 100644 --- a/packages/web/src/content/docs/ru/modes.mdx +++ b/packages/web/src/content/docs/ru/modes.mdx @@ -3,7 +3,7 @@ title: Режимы description: Различные режимы для разных случаев использования. --- -:::осторожность +:::caution Режимы теперь настраиваются с помощью опции `agent` в конфигурации открытого кода. Опция `mode` устарела. [Подробнее ](/docs/agents). ::: @@ -227,17 +227,17 @@ Provide constructive feedback without making direct changes. | Инструмент | Описание | | ---------- | --------------------------- | -| ХХ0ГГ | Выполнение команд оболочки | -| ХХ0ГГ | Изменить существующие файлы | -| ХХ0ГГ | Создание новых файлов | -| ХХ0ГГ | Чтение содержимого файла | -| ХХ0ГГ | Поиск содержимого файла | -| ХХ0ГГ | Найти файлы по шаблону | -| ХХ0ГГ | Вывести содержимое каталога | -| ХХ0ГГ | Применение патчей к файлам | -| ХХ0ГГ | Управляйте списками дел | -| ХХ0ГГ | Чтение списков дел | -| ХХ0ГГ | Получить веб-контент | +| `bash` | Execute shell commands | +| `edit` | Modify existing files | +| `write` | Create new files | +| `read` | Read file contents | +| `grep` | Search file contents | +| `glob` | Find files by pattern | +| `list` | List directory contents | +| `patch` | Apply patches to files | +| `todowrite` | Manage todo lists | +| `todoread` | Read todo lists | +| `webfetch` | Fetch web content | --- diff --git a/packages/web/src/content/docs/ru/network.mdx b/packages/web/src/content/docs/ru/network.mdx index 795031d36..e68e57dd1 100644 --- a/packages/web/src/content/docs/ru/network.mdx +++ b/packages/web/src/content/docs/ru/network.mdx @@ -22,7 +22,7 @@ export HTTP_PROXY=http://proxy.example.com:8080 export NO_PROXY=localhost,127.0.0.1 ``` -:::осторожность +:::caution TUI взаимодействует с локальным HTTP-сервером. Вы должны обойти прокси-сервер для этого соединения, чтобы избежать петель маршрутизации. ::: @@ -38,7 +38,7 @@ TUI взаимодействует с локальным HTTP-сервером. export HTTPS_PROXY=http://username:[email protected]:8080 ``` -:::осторожность +:::caution Избегайте жесткого кодирования паролей. Используйте переменные среды или безопасное хранилище учетных данных. ::: diff --git a/packages/web/src/content/docs/ru/permissions.mdx b/packages/web/src/content/docs/ru/permissions.mdx index 104aaf657..3e4d8110d 100644 --- a/packages/web/src/content/docs/ru/permissions.mdx +++ b/packages/web/src/content/docs/ru/permissions.mdx @@ -185,7 +185,7 @@ OpenCode использует конфигурацию `permission`, чтобы Вы можете переопределить разрешения для каждого агента. Разрешения агента объединяются с глобальной конфигурацией, и правила агента имеют приоритет. [Подробнее](/docs/agents#permissions) о разрешениях агента. -:::примечание +:::note Более подробные примеры сопоставления с образцом см. в разделе [Детальные правила (синтаксис объекта)](#granular-rules-object-syntax) выше. ::: @@ -232,6 +232,6 @@ permission: Only analyze code and suggest changes. ``` -:::кончик +:::tip Используйте сопоставление с образцом для команд с аргументами. `"grep *"` разрешает `grep pattern file.txt`, а сам `"grep"` блокирует его. Такие команды, как `git status`, работают по умолчанию, но требуют явного разрешения (например, `"git status *"`) при передаче аргументов. ::: diff --git a/packages/web/src/content/docs/ru/plugins.mdx b/packages/web/src/content/docs/ru/plugins.mdx index 7b47eee78..3df2925ff 100644 --- a/packages/web/src/content/docs/ru/plugins.mdx +++ b/packages/web/src/content/docs/ru/plugins.mdx @@ -145,67 +145,67 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree #### Командные события -- ХХ0ГГ +- `command.executed` #### События файла -- ХХ0ГГ -- ХХ0ГГ +- `file.edited` +- `file.watcher.updated` #### События установки -- ХХ0ГГ +- `installation.updated` #### События ЛСП -- ХХ0ГГ -- ХХ0ГГ +- `lsp.client.diagnostics` +- `lsp.updated` #### События сообщений -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ +- `message.part.removed` +- `message.part.updated` +- `message.removed` +- `message.updated` #### События разрешения -- ХХ0ГГ -- ХХ0ГГ +- `permission.asked` +- `permission.replied` #### События сервера -- ХХ0ГГ +- `server.connected` #### События сессии -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ +- `session.created` +- `session.compacted` +- `session.deleted` +- `session.diff` +- `session.error` +- `session.idle` +- `session.status` +- `session.updated` #### События -- ХХ0ГГ +- `todo.updated` #### События оболочки -- ХХ0ГГ +- `shell.env` #### События инструмента -- ХХ0ГГ -- ХХ0ГГ +- `tool.execute.after` +- `tool.execute.before` #### Мероприятия ТУИ -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ +- `tui.prompt.append` +- `tui.command.execute` +- `tui.toast.show` --- @@ -234,7 +234,7 @@ export const NotificationPlugin = async ({ project, client, $, directory, worktr Мы используем `osascript` для запуска AppleScript на macOS. Здесь мы используем его для отправки уведомлений. -:::примечание +:::note Если вы используете настольное приложение OpenCode, оно может автоматически отправлять системные уведомления, когда ответ готов или когда возникает ошибка сеанса. ::: diff --git a/packages/web/src/content/docs/ru/providers.mdx b/packages/web/src/content/docs/ru/providers.mdx index 2f8704035..e020e98fe 100644 --- a/packages/web/src/content/docs/ru/providers.mdx +++ b/packages/web/src/content/docs/ru/providers.mdx @@ -53,7 +53,7 @@ OpenCode использует [AI SDK](https://ai-sdk.dev/) и [Models.dev](http OpenCode Zen — это список моделей, предоставленный командой OpenCode, которые были протестировано и проверено на хорошую работу с OpenCode. [Подробнее](/docs/zen). -:::кончик +:::tip Если вы новичок, мы рекомендуем начать с OpenCode Zen. ::: @@ -89,7 +89,7 @@ OpenCode Zen — это список моделей, предоставленн� Рассмотрим некоторых провайдеров подробнее. Если вы хотите добавить провайдера в список, смело открывайте пиар. -:::примечание +:::note Не видите здесь провайдера? Разместите пиар. ::: @@ -229,7 +229,7 @@ OpenCode Zen — это список моделей, предоставленн� /models ``` -:::примечание +:::note Для пользовательских профилей вывода используйте имя модели и поставщика в ключе и задайте для свойства `id` значение arn. Это обеспечивает правильное кэширование: ```json title="opencode.json" @@ -278,7 +278,7 @@ OpenCode Zen — это список моделей, предоставленн� /models ``` -:::информация +:::info Использование вашей подписки Claude Pro/Max в OpenCode официально не поддерживается [Anthropic](https://anthropic.com). ::: @@ -292,7 +292,7 @@ OpenCode Zen — это список моделей, предоставленн� ### Azure OpenAI -:::примечание +:::note Если вы столкнулись с ошибками «Извините, но я не могу помочь с этим запросом», попробуйте изменить фильтр содержимого с **DefaultV2** на **Default** в своем ресурсе Azure. ::: @@ -677,14 +677,14 @@ GitLab Duo предоставляет агентский чат на базе и - **duo-chat-sonnet-4-5** — сбалансированная производительность для большинства рабочих процессов. - **duo-chat-opus-4-5** — Наиболее способен к комплексному анализу. -:::примечание +:::note Вы также можете указать переменную среды «GITLAB_TOKEN», если не хотите. для хранения токена в хранилище аутентификации открытого кода. ::: ##### Самостоятельная GitLab -:::примечание[примечание о соответствии] +:::note[примечание о соответствии] OpenCode использует небольшую модель для некоторых задач ИИ, таких как создание заголовка сеанса. По умолчанию он настроен на использование gpt-5-nano, размещенного на Zen. Чтобы заблокировать OpenCode чтобы использовать только свой собственный экземпляр, размещенный на GitLab, добавьте следующее в свой @@ -721,13 +721,13 @@ export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com export GITLAB_TOKEN=glpat-... ``` -:::примечание +:::note Ваш администратор GitLab должен включить следующее: 1. [Платформа Duo Agent](https://docs.gitlab.com/user/gitlab_duo/turn_on_off/) для пользователя, группы или экземпляра 2. Флаги функций (через консоль Rails): - - ХХ0ГГ - - ХХ0ГГ + - `agent_platform_claude_code` + - `third_party_agents_enabled` ::: ##### OAuth для локальных экземпляров @@ -788,7 +788,7 @@ export GITLAB_OAUTH_CLIENT_ID=your_application_id_here Чтобы использовать подписку GitHub Copilot с открытым кодом: -:::примечание +:::note Некоторым моделям может потребоваться [Pro+ подписка](https://github.com/features/copilot/plans) для использования. @@ -853,7 +853,7 @@ export GITLAB_OAUTH_CLIENT_ID=your_application_id_here export VERTEX_LOCATION=global ``` -:::кончик +:::tip Регион `global` повышает доступность и уменьшает количество ошибок без дополнительных затрат. Используйте региональные конечные точки (например, `us-central1`) для требований к местонахождению данных. [Подробнее](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints) ::: @@ -1023,12 +1023,12 @@ npm install -g opencode-helicone-session ##### Общие разъемы Helicone -| Заголовок | Описание | -| --------- | ------------------------------------------------------------------------------ | -| ХХ0ГГ | Включить кэширование ответов (`true`/`false`) | -| ХХ0ГГ | Отслеживание показателей по пользователю | -| ХХ0ГГ | Добавьте пользовательские свойства (например, `Helicone-Property-Environment`) | -| ХХ0ГГ | Связывание запросов с подсказками | +| Заголовок | Описание | +| --------------------------- | ---------------------------------------------------------------------- | +| `Helicone-Cache-Enabled` | Включить кэширование ответов (`true`/`false`) | +| `Helicone-User-Id` | Отслеживание показателей по пользователю | +| `Helicone-Property-[Name]` | Добавьте пользовательские свойства (например, `Helicone-Property-Environment`) | +| `Helicone-Prompt-Id` | Связывание запросов с версиями промптов | См. [Справочник заголовков Helicone](https://docs.helicone.ai/helicone-headers/header-directory) для всех доступных заголовков. @@ -1222,7 +1222,7 @@ IO.NET предлагает 17 моделей, оптимизированных Вы можете настроить открытый код для использования локальных моделей через Ollama. -:::кончик +:::tip Ollama может автоматически настроиться для OpenCode. Подробности см. в документации по интеграции Ollama](https://docs.ollama.com/integrations/opencode). ::: @@ -1254,7 +1254,7 @@ Ollama может автоматически настроиться для OpenC - `options.baseURL` — конечная точка локального сервера. - `models` — это карта идентификаторов моделей с их конфигурациями. Название модели будет отображаться в списке выбора модели. -:::кончик +:::tip Если вызовы инструментов не работают, попробуйте увеличить `num_ctx` в Олламе. Начните с 16–32 тысяч. ::: @@ -1638,11 +1638,11 @@ Vercel AI Gateway позволяет получать доступ к модел Некоторые полезные параметры маршрутизации: -| Вариант | Описание | -| ------- | ------------------------------------------------------------------- | -| ХХ0ГГ | Последовательность действий поставщика, которую стоит попробовать | -| ХХ0ГГ | Ограничить конкретными поставщиками | -| ХХ0ГГ | Используйте только поставщиков с нулевой политикой хранения данных. | +| Вариант | Описание | +| ------------------- | ------------------------------------------------------------- | +| `order` | Последовательность провайдеров для попытки | +| `only` | Ограничить конкретными провайдерами | +| `zeroDataRetention` | Использовать только провайдеров с политикой нулевого хранения данных | --- @@ -1748,7 +1748,7 @@ Vercel AI Gateway позволяет получать доступ к модел Чтобы добавить любого **совместимого с OpenAI** поставщика, не указанного в команде `/connect`: -:::кончик +:::tip Вы можете использовать любого OpenAI-совместимого провайдера с открытым кодом. Большинство современных поставщиков ИИ предлагают API-интерфейсы, совместимые с OpenAI. ::: diff --git a/packages/web/src/content/docs/ru/rules.mdx b/packages/web/src/content/docs/ru/rules.mdx index 0d42db2d3..947ff111c 100644 --- a/packages/web/src/content/docs/ru/rules.mdx +++ b/packages/web/src/content/docs/ru/rules.mdx @@ -11,7 +11,7 @@ description: Установите пользовательские инстру� Чтобы создать новый файл `AGENTS.md`, вы можете запустить команду `/init` в открытом коде. -:::кончик +:::tip Вам следует зафиксировать файл `AGENTS.md` вашего проекта в Git. ::: @@ -175,6 +175,6 @@ Read the following file immediately as it's relevant to all workflows: @rules/ge - Сохраняйте AGENTS.md кратким, ссылаясь на подробные инструкции. - Убедитесь, что открытый код загружает файлы только тогда, когда это необходимо для конкретной задачи. -:::кончик +:::tip Для монорепозиториев или проектов с общими стандартами использование `opencode.json` с шаблонами glob (например, `packages/*/AGENTS.md`) более удобно в обслуживании, чем инструкции вручную. ::: diff --git a/packages/web/src/content/docs/ru/sdk.mdx b/packages/web/src/content/docs/ru/sdk.mdx index 955dc6358..bb24b78cf 100644 --- a/packages/web/src/content/docs/ru/sdk.mdx +++ b/packages/web/src/content/docs/ru/sdk.mdx @@ -39,11 +39,11 @@ const { client } = await createOpencode() | Вариант | Тип | Описание | По умолчанию | | ------- | ----- | -------------------------------- | ------------ | -| ХХ0ГГ | ХХ0ГГ | Имя хоста сервера | `127.0.0.1` | -| ХХ0ГГ | ХХ0ГГ | Порт сервера | `4096` | -| ХХ0ГГ | ХХ0ГГ | Сигнал отмены для отмены | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Таймаут в мс для запуска сервера | `5000` | -| ХХ0ГГ | ХХ0ГГ | Объект конфигурации | `{}` | +| `hostname` | `string` | Server hostname | `127.0.0.1` | +| `port` | `number` | Server port | `4096` | +| `signal` | `AbortSignal` | Abort signal for cancellation | `undefined` | +| `timeout` | `number` | Timeout in ms for server start | `5000` | +| `config` | `Config` | Configuration object | `{}` | --- @@ -83,11 +83,11 @@ const client = createOpencodeClient({ | Вариант | Тип | Описание | По умолчанию | | ------- | ----- | ------------------------------------ | ------------ | -| ХХ0ГГ | ХХ0ГГ | URL-адрес сервера | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Пользовательская реализация выборки | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Метод анализа ответа | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Стиль возврата: `data` или `fields`. | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Выдавать ошибки вместо возврата | ХХ0ГГ | +| `baseUrl` | `string` | URL of the server | `http://localhost:4096` | +| `fetch` | `function` | Custom fetch implementation | `globalThis.fetch` | +| `parseAs` | `string` | Response parsing method | `auto` | +| `responseStyle` | `string` | Return style: `data` or `fields` | `fields` | +| `throwOnError` | `boolean` | Throw errors instead of return | `false` | --- @@ -127,7 +127,7 @@ SDK предоставляет все серверные API через типо | Метод | Описание | Ответ | | ----- | -------------------------------------------- | ----- | -| ХХ0ГГ | Проверьте работоспособность и версию сервера | ХХ0ГГ | +| `global.health()` | Check server health and version | `{ healthy: true, version: string }` | --- @@ -144,8 +144,8 @@ console.log(health.data.version) | Метод | Описание | Ответ | | ----- | ----------------------------- | ------------------------------------------- | -| ХХ0ГГ | Написать запись в журнале | ХХ0ГГ | -| ХХ0ГГ | Список всех доступных агентов | <a href={typesUrl}><code>Агент[]</code></a> | +| `app.log()` | Write a log entry | `boolean` | +| `app.agents()` | List all available agents | <a href={typesUrl}><code>Agent[]</code></a> | --- @@ -171,8 +171,8 @@ const agents = await client.app.agents() | Метод | Описание | Ответ | | ----- | ----------------------- | -------------------------------------------- | -| ХХ0ГГ | Список всех проектов | <a href={typesUrl}><code>Проект[]</code></a> | -| ХХ0ГГ | Получить текущий проект | <a href={typesUrl}><code>Проект</code></a> | +| `project.list()` | List all projects | <a href={typesUrl}><code>Project[]</code></a> | +| `project.current()` | Get current project | <a href={typesUrl}><code>Project</code></a> | --- @@ -192,7 +192,7 @@ const currentProject = await client.project.current() | Метод | Описание | Ответ | | ----- | --------------------- | ---------------------------------------- | -| ХХ0ГГ | Получить текущий путь | <a href={typesUrl}><code>Путь</code></a> | +| `path.get()` | Get current path | <a href={typesUrl}><code>Path</code></a> | --- @@ -209,8 +209,8 @@ const pathInfo = await client.path.get() | Метод | Описание | Ответ | | ----- | ----------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| ХХ0ГГ | Получить информацию о конфигурации | <a href={typesUrl}><code>Config</code></a> | -| ХХ0ГГ | Список поставщиков и моделей по умолчанию | `{ providers: `<a href={typesUrl}><code>Provider[]</code></a>`, default: { [key: string]: string } }` | +| `config.get()` | Get config info | <a href={typesUrl}><code>Config</code></a> | +| `config.providers()` | List providers and default models | `{ providers: `<a href={typesUrl}><code>Provider[]</code></a>`, default: { [key: string]: string } }` | --- @@ -228,25 +228,25 @@ const { providers, default: defaults } = await client.config.providers() | Метод | Описание | Примечания | | ----- | -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | -| ХХ0ГГ | Получение списка сеансов | Возвращает <a href={typesUrl}><code>Session[]</code></a> | -| ХХ0ГГ | Получить сеанс | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Список дочерних сеансов | Возвращает <a href={typesUrl}><code>Session[]</code></a> | -| ХХ0ГГ | Создать сеанс | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Удалить сеанс | Возвращает `boolean` | -| ХХ0ГГ | Обновить свойства сеанса | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Проанализируйте приложение и создайте `AGENTS.md`. | Возвращает `boolean` | -| ХХ0ГГ | Прервать текущий сеанс | Возвращает `boolean` | -| ХХ0ГГ | Поделиться сеансом | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Отменить общий доступ к сеансу | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Подведение итогов сессии | Возвращает `boolean` | -| ХХ0ГГ | Список сообщений в сеансе | Возвращает `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` | -| ХХ0ГГ | Получить подробную информацию о сообщении | Возвращает `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` | -| ХХ0ГГ | Отправить оперативное сообщение | `body.noReply: true` возвращает UserMessage (только контекст). По умолчанию возвращается <a href={typesUrl}><code>AssistantMessage</code></a> с ответом AI. | -| ХХ0ГГ | Отправить команду в сеанс | Возвращает `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` | -| ХХ0ГГ | Запустите команду оболочки | Возвращает <a href={typesUrl}><code>AssistantMessage</code></a> | -| ХХ0ГГ | Отменить сообщение | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Восстановить восстановленные сообщения | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | Ответ на запрос разрешения | Возвращает `boolean` | +| `session.list()` | List sessions | Returns <a href={typesUrl}><code>Session[]</code></a> | +| `session.get({ path })` | Get session | Returns <a href={typesUrl}><code>Session</code></a> | +| `session.children({ path })` | List child sessions | Returns <a href={typesUrl}><code>Session[]</code></a> | +| `session.create({ body })` | Create session | Returns <a href={typesUrl}><code>Session</code></a> | +| `session.delete({ path })` | Delete session | Returns `boolean` | +| `session.update({ path, body })` | Update session properties | Returns <a href={typesUrl}><code>Session</code></a> | +| `session.init({ path, body })` | Analyze app and create `AGENTS.md` | Returns `boolean` | +| `session.abort({ path })` | Abort a running session | Returns `boolean` | +| `session.share({ path })` | Share session | Returns <a href={typesUrl}><code>Session</code></a> | +| `session.unshare({ path })` | Unshare session | Returns <a href={typesUrl}><code>Session</code></a> | +| `session.summarize({ path, body })` | Summarize session | Returns `boolean` | +| `session.messages({ path })` | List messages in a session | Returns `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` | +| `session.message({ path })` | Get message details | Returns `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` | +| `session.prompt({ path, body })` | Send prompt message | `body.noReply: true` returns UserMessage (context only). Default returns <a href={typesUrl}><code>AssistantMessage</code></a> with AI response | +| `session.command({ path, body })` | Send command to session | Returns `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` | +| `session.shell({ path, body })` | Run a shell command | Returns <a href={typesUrl}><code>AssistantMessage</code></a> | +| `session.revert({ path, body })` | Revert a message | Returns <a href={typesUrl}><code>Session</code></a> | +| `session.unrevert({ path })` | Restore reverted messages | Returns <a href={typesUrl}><code>Session</code></a> | +| `postSessionByIdPermissionsByPermissionId({ path, body })` | Respond to a permission request | Returns `boolean` | --- @@ -285,11 +285,11 @@ await client.session.prompt({ | Метод | Описание | Ответ | | ----- | ------------------------------------ | --------------------------------------------------------------------------------------------- | -| ХХ0ГГ | Поиск текста в файлах | Массив объектов соответствия `path`, `lines`, `line_number`, `absolute_offset`, `submatches`. | -| ХХ0ГГ | Поиск файлов и каталогов по имени | `string[]` (пути) | -| ХХ0ГГ | Найдите символы рабочей области | <a href={typesUrl}><code>Символ[]</code></a> | -| ХХ0ГГ | Чтение файла | `{ type: "raw" \| "patch", content: string }` | -| ХХ0ГГ | Получить статус отслеживаемых файлов | <a href={typesUrl}><code>Файл[]</code></a> | +| `find.text({ query })` | Search for text in files | Array of match objects with `path`, `lines`, `line_number`, `absolute_offset`, `submatches` | +| `find.files({ query })` | Find files and directories by name | `string[]` (paths) | +| `find.symbols({ query })` | Find workspace symbols | <a href={typesUrl}><code>Symbol[]</code></a> | +| `file.read({ query })` | Read a file | `{ type: "raw" \| "patch", content: string }` | +| `file.status({ query? })` | Get status for tracked files | <a href={typesUrl}><code>File[]</code></a> | `find.files` поддерживает несколько дополнительных полей запроса: @@ -326,15 +326,15 @@ const content = await client.file.read({ | Метод | Описание | Ответ | | ----- | -------------------------------- | ----- | -| ХХ0ГГ | Добавить текст в приглашение | ХХ0ГГ | -| ХХ0ГГ | Открыть диалоговое окно справки | ХХ0ГГ | -| ХХ0ГГ | Откройте селектор сеансов | ХХ0ГГ | -| ХХ0ГГ | Откройте выбор темы | ХХ0ГГ | -| ХХ0ГГ | Откройте выбор модели | ХХ0ГГ | -| ХХ0ГГ | Отправить текущий запрос | ХХ0ГГ | -| ХХ0ГГ | Очистить подсказку | ХХ0ГГ | -| ХХ0ГГ | Выполнить команду | ХХ0ГГ | -| ХХ0ГГ | Показать всплывающее уведомление | ХХ0ГГ | +| `tui.appendPrompt({ body })` | Append text to the prompt | `boolean` | +| `tui.openHelp()` | Open the help dialog | `boolean` | +| `tui.openSessions()` | Open the session selector | `boolean` | +| `tui.openThemes()` | Open the theme selector | `boolean` | +| `tui.openModels()` | Open the model selector | `boolean` | +| `tui.submitPrompt()` | Submit the current prompt | `boolean` | +| `tui.clearPrompt()` | Clear the prompt | `boolean` | +| `tui.executeCommand({ body })` | Execute a command | `boolean` | +| `tui.showToast({ body })` | Show toast notification | `boolean` | --- @@ -357,7 +357,7 @@ await client.tui.showToast({ | Метод | Описание | Ответ | | ----- | -------------------------------------------- | ----- | -| ХХ0ГГ | Установите учетные данные для аутентификации | ХХ0ГГ | +| `auth.set({ ... })` | Set authentication credentials | `boolean` | --- @@ -376,7 +376,7 @@ await client.auth.set({ | Метод | Описание | Ответ | | ----- | ------------------------------------ | ------------------------------------ | -| ХХ0ГГ | Поток событий, отправленных сервером | Поток событий, отправленных сервером | +| `event.subscribe()` | Server-sent events stream | Server-sent events stream | --- diff --git a/packages/web/src/content/docs/ru/server.mdx b/packages/web/src/content/docs/ru/server.mdx index 38e4076ab..32ed4caee 100644 --- a/packages/web/src/content/docs/ru/server.mdx +++ b/packages/web/src/content/docs/ru/server.mdx @@ -20,11 +20,11 @@ opencode serve [--port <number>] [--hostname <string>] [--cors <origin>] | Флаг | Описание | По умолчанию | | ----- | ---------------------------------------------- | ------------ | -| ХХ0ГГ | Порт для прослушивания | `4096` | -| ХХ0ГГ | Имя хоста для прослушивания | `127.0.0.1` | -| ХХ0ГГ | Включить обнаружение mDNS | ХХ0ГГ | -| ХХ0ГГ | Пользовательское доменное имя для службы mDNS | ХХ0ГГ | -| ХХ0ГГ | Дополнительные источники браузера, позволяющие | `[]` | +| `--port` | Port to listen on | `4096` | +| `--hostname` | Hostname to listen on | `127.0.0.1` | +| `--mdns` | Enable mDNS discovery | `false` | +| `--mdns-domain` | Custom domain name for mDNS service | `opencode.local` | +| `--cors` | Additional browser origins to allow | `[]` | `--cors` можно передать несколько раз: @@ -50,7 +50,7 @@ OPENCODE_SERVER_PASSWORD=your-password opencode serve клиент, который общается с сервером. Сервер предоставляет спецификацию OpenAPI 3.1. конечная точка. Эта конечная точка также используется для создания файла [SDK](/docs/sdk). -:::кончик +:::tip Используйте сервер открытого кода для программного взаимодействия с открытым кодом. ::: @@ -77,7 +77,7 @@ TUI с открытым кодом запущен, `opencode serve` запуст http://<hostname>:<port>/doc ``` -Например, ХХ0ГГ. Используйте спецификацию для создания клиентов или проверки типов запросов и ответов. Или просмотрите его в обозревателе Swagger. +For example, `http://localhost:4096/doc`. Use the spec to generate clients or inspect request and response types. Or view it in a Swagger explorer. --- @@ -91,8 +91,8 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ------------------------------------------------ | ------------------ | -| ХХ0ГГ | ХХ0ГГ | Получить информацию о состоянии и версии сервера | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Получить глобальные события (поток SSE) | Трансляция событий | +| `GET` | `/global/health` | Get server health and version | `{ healthy: true, version: string }` | +| `GET` | `/global/event` | Get global events (SSE stream) | Event stream | --- @@ -100,8 +100,8 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ----------------------- | -------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Список всех проектов | <a href={typesUrl}><code>Проект[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить текущий проект | <a href={typesUrl}><code>Проект</code></a> | +| `GET` | `/project` | List all projects | <a href={typesUrl}><code>Project[]</code></a> | +| `GET` | `/project/current` | Get the current project | <a href={typesUrl}><code>Project</code></a> | --- @@ -109,8 +109,8 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | -------------------------------------------- | ------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Получить текущий путь | <a href={typesUrl}><code>Путь</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить информацию VCS для текущего проекта | <a href={typesUrl}><code>VcsInfo</code></a> | +| `GET` | `/path` | Get the current path | <a href={typesUrl}><code>Path</code></a> | +| `GET` | `/vcs` | Get VCS info for the current project | <a href={typesUrl}><code>VcsInfo</code></a> | --- @@ -118,7 +118,7 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ------------------------- | ----- | -| ХХ0ГГ | ХХ0ГГ | Удалить текущий экземпляр | ХХ0ГГ | +| `POST` | `/instance/dispose` | Dispose the current instance | `boolean` | --- @@ -126,9 +126,9 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ----------------------------------------- | ---------------------------------------------------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Получить информацию о конфигурации | <a href={typesUrl}><code>Config</code></a> | -| ХХ0ГГ | ХХ0ГГ | Обновить конфигурацию | <a href={typesUrl}><code>Config</code></a> | -| ХХ0ГГ | ХХ0ГГ | Список поставщиков и моделей по умолчанию | `{ providers: `<a href={typesUrl}>Provider[]</a>`, default: { [key: string]: string } }` | +| `GET` | `/config` | Get config info | <a href={typesUrl}><code>Config</code></a> | +| `PATCH` | `/config` | Update config | <a href={typesUrl}><code>Config</code></a> | +| `GET` | `/config/providers` | List providers and default models | `{ providers: `<a href={typesUrl}>Provider[]</a>`, default: { [key: string]: string } }` | --- @@ -136,10 +136,10 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ----------------------------------------------- | ----------------------------------------------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Список всех поставщиков | `{ all: `<a href={typesUrl}>Provider[]</a>`, default: {...}, connected: string[] }` | -| ХХ0ГГ | ХХ0ГГ | Получить методы аутентификации поставщика | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` | -| ХХ0ГГ | ХХ0ГГ | Авторизуйте провайдера с помощью OAuth | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> | -| ХХ0ГГ | ХХ0ГГ | Обработка обратного вызова OAuth для провайдера | ХХ0ГГ | +| `GET` | `/provider` | List all providers | `{ all: `<a href={typesUrl}>Provider[]</a>`, default: {...}, connected: string[] }` | +| `GET` | `/provider/auth` | Get provider authentication methods | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` | +| `POST` | `/provider/{id}/oauth/authorize` | Authorize a provider using OAuth | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> | +| `POST` | `/provider/{id}/oauth/callback` | Handle OAuth callback for a provider | `boolean` | --- @@ -147,24 +147,24 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Примечания | | ----- | ----- | -------------------------------------------------- | ------------------------------------------------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Список всех сессий | Возвращает <a href={typesUrl}><code>Session[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Создать новый сеанс | тело: `{ parentID?, title? }`, возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить статус сеанса для всех сеансов | Возвращает `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` | -| ХХ0ГГ | ХХ0ГГ | Получить подробную информацию о сеансе | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | ХХ0ГГ | Удалить сеанс и все его данные | Возвращает `boolean` | -| ХХ0ГГ | ХХ0ГГ | Обновить свойства сеанса | тело: `{ title? }`, возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить дочерние сеансы сеанса | Возвращает <a href={typesUrl}><code>Session[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить список дел для сеанса | Возвращает <a href={typesUrl}><code>Todo[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Проанализируйте приложение и создайте `AGENTS.md`. | тело: `{ messageID, providerID, modelID }`, возвращает `boolean` | -| ХХ0ГГ | ХХ0ГГ | Разветвить существующий сеанс по сообщению | тело: `{ messageID? }`, возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | ХХ0ГГ | Прервать текущий сеанс | Возвращает `boolean` | -| ХХ0ГГ | ХХ0ГГ | Поделиться сеансом | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | ХХ0ГГ | Отменить общий доступ к сеансу | Возвращает <a href={typesUrl}><code>Session</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить разницу для этой сессии | запрос: `messageID?`, возвращает <a href={typesUrl}><code>FileDiff[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Подведите итоги сессии | тело: `{ providerID, modelID }`, возвращает `boolean` | -| ХХ0ГГ | ХХ0ГГ | Отменить сообщение | тело: `{ messageID, partID? }`, возвращает `boolean` | -| ХХ0ГГ | ХХ0ГГ | Восстановить все восстановленные сообщения | Возвращает `boolean` | -| ХХ0ГГ | ХХ0ГГ | Ответ на запрос разрешения | тело: `{ response, remember? }`, возвращает `boolean` | +| `GET` | `/session` | List all sessions | Returns <a href={typesUrl}><code>Session[]</code></a> | +| `POST` | `/session` | Create a new session | body: `{ parentID?, title? }`, returns <a href={typesUrl}><code>Session</code></a> | +| `GET` | `/session/status` | Get session status for all sessions | Returns `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` | +| `GET` | `/session/:id` | Get session details | Returns <a href={typesUrl}><code>Session</code></a> | +| `DELETE` | `/session/:id` | Delete a session and all its data | Returns `boolean` | +| `PATCH` | `/session/:id` | Update session properties | body: `{ title? }`, returns <a href={typesUrl}><code>Session</code></a> | +| `GET` | `/session/:id/children` | Get a session's child sessions | Returns <a href={typesUrl}><code>Session[]</code></a> | +| `GET` | `/session/:id/todo` | Get the todo list for a session | Returns <a href={typesUrl}><code>Todo[]</code></a> | +| `POST` | `/session/:id/init` | Analyze app and create `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returns `boolean` | +| `POST` | `/session/:id/fork` | Fork an existing session at a message | body: `{ messageID? }`, returns <a href={typesUrl}><code>Session</code></a> | +| `POST` | `/session/:id/abort` | Abort a running session | Returns `boolean` | +| `POST` | `/session/:id/share` | Share a session | Returns <a href={typesUrl}><code>Session</code></a> | +| `DELETE` | `/session/:id/share` | Unshare a session | Returns <a href={typesUrl}><code>Session</code></a> | +| `GET` | `/session/:id/diff` | Get the diff for this session | query: `messageID?`, returns <a href={typesUrl}><code>FileDiff[]</code></a> | +| `POST` | `/session/:id/summarize` | Summarize the session | body: `{ providerID, modelID }`, returns `boolean` | +| `POST` | `/session/:id/revert` | Revert a message | body: `{ messageID, partID? }`, returns `boolean` | +| `POST` | `/session/:id/unrevert` | Restore all reverted messages | Returns `boolean` | +| `POST` | `/session/:id/permissions/:permissionID` | Respond to a permission request | body: `{ response, remember? }`, returns `boolean` | --- @@ -172,12 +172,12 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Примечания | | ----- | ----- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| ХХ0ГГ | ХХ0ГГ | Список сообщений в сеансе | запрос: `limit?`, возвращает `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}[]` | -| ХХ0ГГ | ХХ0ГГ | Отправьте сообщение и дождитесь ответа | тело: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`, возвращает `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | -| ХХ0ГГ | ХХ0ГГ | Получить подробную информацию о сообщении | Возвращает `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | -| ХХ0ГГ | ХХ0ГГ | Отправить сообщение асинхронно (без ожидания) | тело: то же, что и `/session/:id/message`, возвращает `204 No Content`. | -| ХХ0ГГ | ХХ0ГГ | Выполнить команду косой черты | тело: `{ messageID?, agent?, model?, command, arguments }`, возвращает `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | -| ХХ0ГГ | ХХ0ГГ | Запустите команду оболочки | тело: `{ agent, model?, command }`, возвращает `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | +| `GET` | `/session/:id/message` | List messages in a session | query: `limit?`, returns `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}[]` | +| `POST` | `/session/:id/message` | Send a message and wait for response | body: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`, returns `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | +| `GET` | `/session/:id/message/:messageID` | Get message details | Returns `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | +| `POST` | `/session/:id/prompt_async` | Send a message asynchronously (no wait) | body: same as `/session/:id/message`, returns `204 No Content` | +| `POST` | `/session/:id/command` | Execute a slash command | body: `{ messageID?, agent?, model?, command, arguments }`, returns `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | +| `POST` | `/session/:id/shell` | Run a shell command | body: `{ agent, model?, command }`, returns `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` | --- @@ -185,7 +185,7 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ------------------ | --------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Список всех команд | <a href={typesUrl}><code>Команда[]</code></a> | +| `GET` | `/command` | List all commands | <a href={typesUrl}><code>Command[]</code></a> | --- @@ -193,12 +193,12 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ------------------------------------ | --------------------------------------------------------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Поиск текста в файлах | Массив объектов соответствия `path`, `lines`, `line_number`, `absolute_offset`, `submatches`. | -| ХХ0ГГ | ХХ0ГГ | Поиск файлов и каталогов по имени | `string[]` (пути) | -| ХХ0ГГ | ХХ0ГГ | Найдите символы рабочей области | <a href={typesUrl}><code>Символ[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Список файлов и каталогов | <a href={typesUrl}><code>FileNode[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Чтение файла | <a href={typesUrl}><code>FileContent</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить статус отслеживаемых файлов | <a href={typesUrl}><code>Файл[]</code></a> | +| `GET` | `/find?pattern=<pat>` | Search for text in files | Array of match objects with `path`, `lines`, `line_number`, `absolute_offset`, `submatches` | +| `GET` | `/find/file?query=<q>` | Find files and directories by name | `string[]` (paths) | +| `GET` | `/find/symbol?query=<q>` | Find workspace symbols | <a href={typesUrl}><code>Symbol[]</code></a> | +| `GET` | `/file?path=<path>` | List files and directories | <a href={typesUrl}><code>FileNode[]</code></a> | +| `GET` | `/file/content?path=<p>` | Read a file | <a href={typesUrl}><code>FileContent</code></a> | +| `GET` | `/file/status` | Get status for tracked files | <a href={typesUrl}><code>File[]</code></a> | #### `/find/file` параметры запроса @@ -214,8 +214,8 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ---------------------------------------------- | -------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Список всех идентификаторов инструментов | <a href={typesUrl}><code>ToolIDs</code></a> | -| ХХ0ГГ | ХХ0ГГ | Список инструментов со схемами JSON для модели | <a href={typesUrl}><code>ToolList</code></a> | +| `GET` | `/experimental/tool/ids` | List all tool IDs | <a href={typesUrl}><code>ToolIDs</code></a> | +| `GET` | `/experimental/tool?provider=<p>&model=<m>` | List tools with JSON schemas for a model | <a href={typesUrl}><code>ToolList</code></a> | --- @@ -223,10 +223,10 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ----------------------------------- | --------------------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Получить статус LSP-сервера | <a href={typesUrl}><code>LSPStatus[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить статус форматтера | <a href={typesUrl}><code>FormatterStatus[]</code></a> | -| ХХ0ГГ | ХХ0ГГ | Получить статус сервера MCP | `{ [name: string]: `<a href={typesUrl}>MCPStatus</a>` }` | -| ХХ0ГГ | ХХ0ГГ | Динамическое добавление сервера MCP | тело: `{ name, config }`, возвращает объект состояния MCP | +| `GET` | `/lsp` | Get LSP server status | <a href={typesUrl}><code>LSPStatus[]</code></a> | +| `GET` | `/formatter` | Get formatter status | <a href={typesUrl}><code>FormatterStatus[]</code></a> | +| `GET` | `/mcp` | Get MCP server status | `{ [name: string]: `<a href={typesUrl}>MCPStatus</a>` }` | +| `POST` | `/mcp` | Add MCP server dynamically | body: `{ name, config }`, returns MCP status object | --- @@ -234,7 +234,7 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ----------------------------- | ------------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Список всех доступных агентов | <a href={typesUrl}><code>Агент[]</code></a> | +| `GET` | `/agent` | List all available agents | <a href={typesUrl}><code>Agent[]</code></a> | --- @@ -242,7 +242,7 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ---------------------------------------------------------------------- | ----- | -| ХХ0ГГ | ХХ0ГГ | Напишите запись в журнале. Тело: `{ service, level, message, extra? }` | ХХ0ГГ | +| `POST` | `/log` | Write log entry. Body: `{ service, level, message, extra? }` | `boolean` | --- @@ -250,17 +250,17 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ---------------------------------------------- | ------------------------- | -| ХХ0ГГ | ХХ0ГГ | Добавить текст в приглашение | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Открыть диалоговое окно справки | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Откройте селектор сеансов | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Откройте выбор темы | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Откройте выбор модели | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Отправить текущий запрос | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Очистить подсказку | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Выполнить команду (`{ command }`) | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Показать тост (`{ title?, message, variant }`) | ХХ0ГГ | -| ХХ0ГГ | ХХ0ГГ | Дождитесь следующего запроса на управление | Объект запроса управления | -| ХХ0ГГ | ХХ0ГГ | Ответ на запрос управления (`{ body }`) | ХХ0ГГ | +| `POST` | `/tui/append-prompt` | Append text to the prompt | `boolean` | +| `POST` | `/tui/open-help` | Open the help dialog | `boolean` | +| `POST` | `/tui/open-sessions` | Open the session selector | `boolean` | +| `POST` | `/tui/open-themes` | Open the theme selector | `boolean` | +| `POST` | `/tui/open-models` | Open the model selector | `boolean` | +| `POST` | `/tui/submit-prompt` | Submit the current prompt | `boolean` | +| `POST` | `/tui/clear-prompt` | Clear the prompt | `boolean` | +| `POST` | `/tui/execute-command` | Execute a command (`{ command }`) | `boolean` | +| `POST` | `/tui/show-toast` | Show toast (`{ title?, message, variant }`) | `boolean` | +| `GET` | `/tui/control/next` | Wait for the next control request | Control request object | +| `POST` | `/tui/control/response` | Respond to a control request (`{ body }`) | `boolean` | --- @@ -268,7 +268,7 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ------------------------------------------------------------------------------------------- | ----- | -| ХХ0ГГ | ХХ0ГГ | Установите учетные данные для аутентификации. Тело должно соответствовать схеме поставщика. | ХХ0ГГ | +| `PUT` | `/auth/:id` | Set authentication credentials. Body must match provider schema | `boolean` | --- @@ -276,7 +276,7 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ---------------------------------------------------------------------------------------------- | ------------------------------------ | -| ХХ0ГГ | ХХ0ГГ | Поток событий, отправленный сервером. Первое событие — `server.connected`, затем события шины. | Поток событий, отправленных сервером | +| `GET` | `/event` | Server-sent events stream. First event is `server.connected`, then bus events | Server-sent events stream | --- @@ -284,4 +284,4 @@ http://<hostname>:<port>/doc | Метод | Путь | Описание | Ответ | | ----- | ----- | ------------------------ | -------------------------------------- | -| ХХ0ГГ | ХХ0ГГ | Спецификация OpenAPI 3.1 | HTML-страница со спецификацией OpenAPI | +| `GET` | `/doc` | OpenAPI 3.1 specification | HTML page with OpenAPI spec | diff --git a/packages/web/src/content/docs/ru/share.mdx b/packages/web/src/content/docs/ru/share.mdx index 3e52db0e4..c1548bb98 100644 --- a/packages/web/src/content/docs/ru/share.mdx +++ b/packages/web/src/content/docs/ru/share.mdx @@ -5,7 +5,7 @@ description: Поделитесь своими разговорами об OpenC Функция общего доступа OpenCode позволяет вам создавать общедоступные ссылки на ваши беседы OpenCode, чтобы вы могли сотрудничать с товарищами по команде или получать помощь от других. -:::примечание +:::note Общие беседы общедоступны для всех, у кого есть ссылка. ::: diff --git a/packages/web/src/content/docs/ru/skills.mdx b/packages/web/src/content/docs/ru/skills.mdx index 02468bf09..e9578b955 100644 --- a/packages/web/src/content/docs/ru/skills.mdx +++ b/packages/web/src/content/docs/ru/skills.mdx @@ -36,8 +36,8 @@ OpenCode выполняет поиск в следующих местах: Каждый `SKILL.md` должен начинаться с заголовка YAML. Распознаются только эти поля: -- ХХ0ГГ (обязательно) -- ХХ0ГГ (обязательно) +- `name` (required) +- `description` (required) - `license` (необязательно) - `compatibility` (необязательно) - `metadata` (необязательно, преобразование строк в строки) @@ -141,9 +141,9 @@ skill({ name: "git-release" }) | Разрешение | Поведение | | ---------- | -------------------------------------------------------- | -| ХХ0ГГ | Навык загружается сразу | -| ХХ0ГГ | Навык скрыт от агента, доступ отклонен | -| ХХ0ГГ | Перед загрузкой пользователю запрашивается подтверждение | +| `allow` | Skill loads immediately | +| `deny` | Skill hidden from agent, access rejected | +| `ask` | User prompted for approval before loading | Шаблоны поддерживают подстановочные знаки: `internal-*` соответствует `internal-docs`, `internal-tools` и т. д. diff --git a/packages/web/src/content/docs/ru/themes.mdx b/packages/web/src/content/docs/ru/themes.mdx index 05e67726b..89e8d191b 100644 --- a/packages/web/src/content/docs/ru/themes.mdx +++ b/packages/web/src/content/docs/ru/themes.mdx @@ -27,17 +27,17 @@ OpenCode поставляется с несколькими встроенным | Имя | Описание | | ----- | -------------------------------------------------------------------------- | -| ХХ0ГГ | Адаптируется к цвету фона вашего терминала | -| ХХ0ГГ | На основе темы [Tokyonight](https://github.com/folke/tokyonight.nvim) | -| ХХ0ГГ | На основе темы [Everforest](https://github.com/sainnhe/everforest) | -| ХХ0ГГ | На основе темной темы Ayu](https://github.com/ayu-theme). | -| ХХ0ГГ | На основе темы [Catppuccin](https://github.com/catppuccin) | -| ХХ0ГГ | На основе темы [Catppuccin](https://github.com/catppuccin) | -| ХХ0ГГ | На основе темы [Gruvbox](https://github.com/morhetz/gruvbox) | -| ХХ0ГГ | На основе темы [Kanagawa](https://github.com/rebelot/kanagawa.nvim) | -| ХХ0ГГ | На основе [темы Nord](https://github.com/nordtheme/nord) | -| ХХ0ГГ | Зеленый цвет в хакерском стиле на черной теме | -| ХХ0ГГ | На основе темной темы Atom One](https://github.com/Th3Whit3Wolf/one-nvim). | +| `system` | Adapts to your terminal’s background color | +| `tokyonight` | Based on the [Tokyonight](https://github.com/folke/tokyonight.nvim) theme | +| `everforest` | Based on the [Everforest](https://github.com/sainnhe/everforest) theme | +| `ayu` | Based on the [Ayu](https://github.com/ayu-theme) dark theme | +| `catppuccin` | Based on the [Catppuccin](https://github.com/catppuccin) theme | +| `catppuccin-macchiato` | Based on the [Catppuccin](https://github.com/catppuccin) theme | +| `gruvbox` | Based on the [Gruvbox](https://github.com/morhetz/gruvbox) theme | +| `kanagawa` | Based on the [Kanagawa](https://github.com/rebelot/kanagawa.nvim) theme | +| `nord` | Based on the [Nord](https://github.com/nordtheme/nord) theme | +| `matrix` | Hacker-style green on black theme | +| `one-dark` | Based on the [Atom One](https://github.com/Th3Whit3Wolf/one-nvim) Dark theme | И более того, мы постоянно добавляем новые темы. diff --git a/packages/web/src/content/docs/ru/tools.mdx b/packages/web/src/content/docs/ru/tools.mdx index 239141251..9cf97ce1b 100644 --- a/packages/web/src/content/docs/ru/tools.mdx +++ b/packages/web/src/content/docs/ru/tools.mdx @@ -94,7 +94,7 @@ description: Управляйте инструментами, которые м� Используйте это, чтобы позволить LLM создавать новые файлы. Он перезапишет существующие файлы, если они уже существуют. -:::примечание +:::note Инструмент `write` контролируется разрешением `edit`, которое распространяется на все модификации файлов (`edit`, `write`, `patch`, `multiedit`). ::: @@ -172,7 +172,7 @@ description: Управляйте инструментами, которые м� Взаимодействуйте с настроенными серверами LSP, чтобы получить функции анализа кода, такие как определения, ссылки, информация о наведении и иерархия вызовов. -:::примечание +:::note Этот инструмент доступен только при `OPENCODE_EXPERIMENTAL_LSP_TOOL=true` (или `OPENCODE_EXPERIMENTAL=true`). ::: @@ -206,7 +206,7 @@ description: Управляйте инструментами, которые м� Этот инструмент применяет файлы исправлений к вашей кодовой базе. Полезно для применения различий и патчей из различных источников. -:::примечание +:::note Инструмент `patch` контролируется разрешением `edit`, которое распространяется на все модификации файлов (`edit`, `write`, `patch`, `multiedit`). ::: @@ -242,7 +242,7 @@ description: Управляйте инструментами, которые м� Создает и обновляет списки задач для отслеживания прогресса во время сложных операций. LLM использует это для организации многоэтапных задач. -:::примечание +:::note По умолчанию этот инструмент отключен для субагентов, но вы можете включить его вручную. [Подробнее](/docs/agents/#permissions) ::: @@ -263,7 +263,7 @@ description: Управляйте инструментами, которые м� Считывает текущее состояние списка дел. Используется LLM для отслеживания задач, ожидающих или завершенных. -:::примечание +:::note По умолчанию этот инструмент отключен для субагентов, но вы можете включить его вручную. [Подробнее](/docs/agents/#permissions) ::: @@ -290,7 +290,7 @@ description: Управляйте инструментами, которые м� Найдите информацию в Интернете. -:::примечание +:::note Этот инструмент доступен только при использовании поставщика OpenCode или когда для переменной среды `OPENCODE_ENABLE_EXA` установлено любое истинное значение (например, `true` или `1`). Чтобы включить при запуске OpenCode: @@ -314,7 +314,7 @@ OPENCODE_ENABLE_EXA=1 opencode Ключ API не требуется — инструмент подключается напрямую к сервису MCP, размещенному на Exa AI, без аутентификации. -:::кончик +:::tip Используйте `websearch`, когда вам нужно найти информацию (обнаружение), и `webfetch`, когда вам нужно получить контент с определенного URL-адреса (извлечение). ::: diff --git a/packages/web/src/content/docs/ru/troubleshooting.mdx b/packages/web/src/content/docs/ru/troubleshooting.mdx index df1cfab03..7246e1a5a 100644 --- a/packages/web/src/content/docs/ru/troubleshooting.mdx +++ b/packages/web/src/content/docs/ru/troubleshooting.mdx @@ -78,7 +78,7 @@ OpenCode также может загружать локальные плаги� - **macOS/Linux**: `~/.config/opencode/plugins/` - **Windows**: нажмите `WIN+R` и вставьте `%USERPROFILE%\.config\opencode\plugins`. - **Плагины проекта** (только если вы используете конфигурацию для каждого проекта) - - ХХ0ГГ + - `<your-project>/.opencode/plugins/` Если приложение снова начнет работать, повторно включите плагины по одному, чтобы определить, какой из них вызывает проблему. @@ -223,9 +223,9 @@ OpenCode Desktop отображает системные уведомления Примеры: -- ХХ0ГГ -- ХХ0ГГ -- ХХ0ГГ +- `openai/gpt-4.1` +- `openrouter/google/gemini-2.5-flash` +- `opencode/kimi-k2` Чтобы выяснить, к каким моделям у вас есть доступ, запустите `opencode models`. diff --git a/packages/web/src/content/docs/ru/tui.mdx b/packages/web/src/content/docs/ru/tui.mdx index ee64ebd3d..c3e9795a1 100644 --- a/packages/web/src/content/docs/ru/tui.mdx +++ b/packages/web/src/content/docs/ru/tui.mdx @@ -31,7 +31,7 @@ Give me a quick summary of the codebase. Вы можете ссылаться на файлы в своих сообщениях, используя `@`. Это выполняет нечеткий поиск файлов в текущем рабочем каталоге. -:::кончик +:::tip Вы также можете использовать `@` для ссылки на файлы в своих сообщениях. ::: @@ -191,7 +191,7 @@ How is auth handled in @packages/functions/src/api/index.ts? Повторить ранее отмененное сообщение. Доступно только после использования `/undo`. -:::кончик +:::tip Любые изменения файлов также будут восстановлены. ::: @@ -246,7 +246,7 @@ How is auth handled in @packages/functions/src/api/index.ts? Переключить видимость блоков мышления/рассуждения в разговоре. Если этот параметр включен, вы можете увидеть процесс рассуждения модели для моделей, поддерживающих расширенное мышление. -:::примечание +:::note Эта команда только контролирует, будут ли **отображаться** блоки мышления, но не включает и не отключает возможности модели по рассуждению. Чтобы переключить фактические возможности рассуждения, используйте `ctrl+t` для циклического переключения вариантов модели. ::: @@ -260,7 +260,7 @@ How is auth handled in @packages/functions/src/api/index.ts? Отменить последнее сообщение в разговоре. Удаляет самое последнее сообщение пользователя, все последующие ответы и любые изменения файлов. -:::кончик +:::tip Любые внесенные изменения в файле также будут отменены. ::: @@ -289,12 +289,12 @@ How is auth handled in @packages/functions/src/api/index.ts? Команды `/editor` и `/export` используют редактор, указанный в переменной среды `EDITOR`. -ХХ0ГГ -ХХ0ГГ - -````bash # Example for nano or vim -export EDITOR=nano -export EDITOR=vim +<Tabs> + <TabItem label="Linux/macOS"> + ```bash + # Example for nano or vim + export EDITOR=nano + export EDITOR=vim # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. # include --wait @@ -304,25 +304,25 @@ export EDITOR=vim Чтобы сделать его постоянным, добавьте это в свой профиль оболочки; `~/.bashrc`, `~/.zshrc` и т. д. -ХХ0ГГ + </TabItem> -ХХ0ГГ -```bash -set EDITOR=notepad + <TabItem label="Windows (CMD)"> + ```bash + set EDITOR=notepad # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. # include --wait set EDITOR=code --wait ``` - Чтобы сделать его постоянным, используйте **Свойства системы** > **Среда. + Чтобы сделать его постоянным, используйте **Свойства системы** > **Среда Переменные**. -ХХ0ГГ + </TabItem> -ХХ0ГГ -```powershell -$env:EDITOR = "notepad" + <TabItem label="Windows (PowerShell)"> + ```powershell + $env:EDITOR = "notepad" # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. # include --wait @@ -331,8 +331,8 @@ $env:EDITOR = "notepad" Чтобы сделать его постоянным, добавьте его в свой профиль PowerShell. -ХХ0ГГ -ХХ0ГГ + </TabItem> +</Tabs> Популярные варианты редактора включают в себя: @@ -345,7 +345,7 @@ $env:EDITOR = "notepad" - `notepad` — Блокнот Windows - `subl` – возвышенный текст -:::примечание +:::note Некоторые редакторы, такие как VS Code, необходимо запускать с флагом `--wait`. ::: diff --git a/packages/web/src/content/docs/ru/web.mdx b/packages/web/src/content/docs/ru/web.mdx index d99abf883..4d8c172d5 100644 --- a/packages/web/src/content/docs/ru/web.mdx +++ b/packages/web/src/content/docs/ru/web.mdx @@ -17,7 +17,7 @@ opencode web Это запустит локальный сервер `127.0.0.1` со случайным доступным портом и автоматически откроет OpenCode в браузере по умолчанию. -:::осторожность +:::caution Если `OPENCODE_SERVER_PASSWORD` не установлен, сервер будет незащищен. Это подходит для локального использования, но его следует настроить для доступа к сети. ::: diff --git a/packages/web/src/content/docs/ru/zen.mdx b/packages/web/src/content/docs/ru/zen.mdx index b1d0dba06..205d4de82 100644 --- a/packages/web/src/content/docs/ru/zen.mdx +++ b/packages/web/src/content/docs/ru/zen.mdx @@ -9,7 +9,7 @@ export const email = `mailto:${config.email}` OpenCode Zen — это список протестированных и проверенных моделей, предоставленный командой OpenCode. -:::примечание +:::note OpenCode Zen в настоящее время находится в стадии бета-тестирования. ::: @@ -25,7 +25,7 @@ Zen работает как любой другой провайдер в OpenCo эти модели хорошо работают в качестве агентов кодирования. Кроме того, большинство провайдеров настроен совсем по-другому; так что вы получите совсем другую производительность и качество. -:::кончик +:::tip Мы протестировали избранную группу моделей и поставщиков, которые хорошо работают с OpenCode. ::: @@ -64,35 +64,35 @@ OpenCode Zen работает так же, как и любой другой п� | Модель | Идентификатор модели | Конечная точка | Пакет AI SDK | | ----------------------- | ----------------------- | -------------- | ------------ | -| GPT 5.2 | gpt-5.2 | ХХ0ГГ | ХХ0ГГ | -| Кодекс GPT 5.2 | gpt-5.2-кодекс | ХХ0ГГ | ХХ0ГГ | -| GPT 5.1 | gpt-5.1 | ХХ0ГГ | ХХ0ГГ | -| Кодекс GPT 5.1 | gpt-5.1-кодекс | ХХ0ГГ | ХХ0ГГ | -| Кодекс GPT 5.1 Макс. | gpt-5.1-кодекс-макс | ХХ0ГГ | ХХ0ГГ | -| Кодекс GPT 5.1 Мини | gpt-5.1-кодекс-мини | ХХ0ГГ | ХХ0ГГ | -| GPT 5 | гпт-5 | ХХ0ГГ | ХХ0ГГ | -| Кодекс GPT 5 | gpt-5-кодекс | ХХ0ГГ | ХХ0ГГ | -| ГПТ 5 Нано | gpt-5-нано | ХХ0ГГ | ХХ0ГГ | -| Клод Сонет 4.5 | Клод-сонет-4-5 | ХХ0ГГ | ХХ0ГГ | -| Клод Сонет 4 | Клод-Сонет-4 | ХХ0ГГ | ХХ0ГГ | -| Клод Хайку 4.5 | Клод-Хайку-4-5 | ХХ0ГГ | ХХ0ГГ | -| Клод Хайку 3.5 | Клод-3-5-хайку | ХХ0ГГ | ХХ0ГГ | -| Закрыть работу 4.6 | плотная работа-4-6 | ХХ0ГГ | ХХ0ГГ | -| Закрыть работу 4.5 | плотная работа-4-5 | ХХ0ГГ | ХХ0ГГ | -| Закрыть работу 4.1 | плотная работа-4-1 | ХХ0ГГ | ХХ0ГГ | -| Близнецы 3 Про | Близнецы-3-про | ХХ0ГГ | ХХ0ГГ | -| Близнецы 3 Флэш | Близнецы-3-вспышка | ХХ0ГГ | ХХ0ГГ | -| МиниМакс М2.1 | минимакс-м2.1 | ХХ0ГГ | ХХ0ГГ | -| МиниМакс М2.1 Бесплатно | минимакс-м2.1-бесплатно | ХХ0ГГ | ХХ0ГГ | -| ГЛМ 4.7 | глм-4.7 | ХХ0ГГ | ХХ0ГГ | -| ГЛМ 4.7 Бесплатно | glm-4.7-бесплатно | ХХ0ГГ | ХХ0ГГ | -| ГЛМ 4.6 | глм-4.6 | ХХ0ГГ | ХХ0ГГ | -| Как К2.5 | ас-к2.5 | ХХ0ГГ | ХХ0ГГ | -| Кими K2.5 Бесплатно | кими-к2.5-бесплатно | ХХ0ГГ | ХХ0ГГ | -| Кими К2 думает | Кими-К2-думает | ХХ0ГГ | ХХ0ГГ | -| Как К2 | as-k2 | ХХ0ГГ | ХХ0ГГ | -| Qwen3 Кодер 480B | qwen3-кодер | ХХ0ГГ | ХХ0ГГ | -| Большой рассол | большой рассол | ХХ0ГГ | ХХ0ГГ | +| GPT 5.2 | gpt-5.2 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5.2 Codex | gpt-5.2-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5.1 | gpt-5.1 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5.1 Codex | gpt-5.1-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5.1 Codex Max | gpt-5.1-codex-max | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5.1 Codex Mini | gpt-5.1-codex-mini | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5 | gpt-5 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5 Codex | gpt-5-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| GPT 5 Nano | gpt-5-nano | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` | +| Claude Sonnet 4.5 | claude-sonnet-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Claude Sonnet 4 | claude-sonnet-4 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Claude Haiku 4.5 | claude-haiku-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Claude Haiku 3.5 | claude-3-5-haiku | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Claude Opus 4.6 | claude-opus-4-6 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Claude Opus 4.5 | claude-opus-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Claude Opus 4.1 | claude-opus-4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| Gemini 3 Pro | gemini-3-pro | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` | +| Gemini 3 Flash | gemini-3-flash | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` | +| MiniMax M2.1 | minimax-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| MiniMax M2.1 Free | minimax-m2.1-free | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` | +| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| GLM 4.7 Free | glm-4.7-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| Kimi K2.5 | kimi-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| Kimi K2.5 Free | kimi-k2.5-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| Kimi K2 Thinking | kimi-k2-thinking | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| Kimi K2 | kimi-k2 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| Qwen3 Coder 480B | qwen3-coder | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | +| Big Pickle | big-pickle | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` | [модель id](/docs/config/#models) в вашей конфигурации OpenCode использует формат `opencode/<model-id>`. Например, для Кодекса GPT 5.2 вы должны @@ -152,7 +152,7 @@ https://opencode.ai/zen/v1/models Вы можете заметить _Claude Haiku 3.5_ в своей истории использования. Это [недорогая модель](/docs/config/#models), которая используется для создания заголовков ваших сеансов. -:::примечание +:::note Комиссии по кредитной карте учитываются по себестоимости (4,4% + 0,30 доллара США за транзакцию); мы не взимаем ничего сверх этого. ::: @@ -204,7 +204,7 @@ https://opencode.ai/zen/v1/models Дзен также отлично подходит для команд. Вы можете приглашать товарищей по команде, назначать роли, курировать модели, которые использует ваша команда, и многое другое. -:::примечание +:::note Рабочие пространства в настоящее время бесплатны для команд в рамках бета-тестирования. ::: |
