Розробник

Встановлення OpenCode та налаштування OmniProxy

Хочете, щоб помічник із програмування розумів ваш проєкт, але не бажаєте витрачати час на складне встановлення й налаштування? OpenCode можна запускати з термінала, IDE або настільного застосунку, а потім покроково підключити до потрібного сервісу моделей.

Документацію перевірено
9 жовт. 2026 р.
Протестована версія
OpenCode 1.18.34

OpenCode — це помічник із програмування з відкритим кодом, який дає змогу писати код у терміналі, IDE або настільному застосунку. Він не зберігає ваш код і контекст, тому підходить для проєктів із підвищеними вимогами до конфіденційності. Режим build призначений для внесення змін до проєкту, а plan за замовчуванням працює лише для читання та підходить для попереднього вивчення незнайомого коду й планування змін. Сервіс моделей можна вибрати відповідно до ваших потреб.

Підготовка до встановлення

Найпростіший спосіб — скористатися сценарієм встановлення. Вам знадобиться сучасний термінал, тобто програма, у якій можна виконувати команди та працювати з файлами проєкту, наприклад WezTerm, Alacritty, Ghostty або Kitty. У Windows бажано використовувати WSL — це засіб для запуску середовища Linux у Windows із повнішими можливостями та кращою продуктивністю.

Найпростіше

Скрипт установлення

  • curl opencode.ai/install
  • Безпосередньо використовуйте в macOS Linux
  • Для Windows рекомендовано WSL

macOS Linux

Homebrew tap

  • anomalyco/tap/opencode
  • Оновлюється частіше за формулу
  • Для Arch також є пакет

Безпосередньо у Windows

Менеджер пакетів

  • choco або scoop
  • Або глобальне встановлення через npm
  • Також можна завантажити з Releases
Спочатку скористайтеся сценарієм встановлення. Якщо ви вже звикли до менеджерів пакетів, виберіть одну з інших наведених команд.

Також підготуйте ID моделі з поточного списку моделей. ID моделі — це назва, за якою сервіс точно визначає конкретну модель.

Встановлення та перший запуск

Найпростіша команда встановлення:

curl -fsSL https://opencode.ai/install | bash

Також можна скористатися такими способами:

  • Node.js: npm install -g opencode-ai. Для Bun, pnpm і Yarn також існують відповідні команди глобального встановлення — дивіться сторінку з описом наприкінці цього посібника.
  • Homebrew у macOS і Linux: brew install anomalyco/tap/opencode. Використовуйте саме цей tap, оскільки він оновлюється частіше, ніж підтримуваний командою Homebrew пакет, що встановлюється командою brew install opencode.
  • Arch Linux: стабільна версія — sudo pacman -S opencode, а новішу версію можна встановити з AUR як opencode-bin.
  • Windows: choco install opencode або scoop install opencode; також можна виконати npm install -g opencode-ai. Бінарний файл можна завантажити з Releases. Підтримка встановлення через Bun у Windows усе ще допрацьовується.

Перейдіть до каталогу свого проєкту та запустіть OpenCode:

cd /path/to/project
opencode

Під час першого використання можна виконати /init. Команда проаналізує проєкт і створить файл AGENTS.md у його кореневому каталозі. Цей файл можна додати до Git, щоб зберегти інструкції разом із проєктом.

Отримання параметрів підключення з OmniProxy

baseURL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: скопіюйте з поточного списку моделей OmniProxy

baseURL — це адреса сервісу, API Key — облікові дані для доступу, а Model ID — повна назва моделі.

Для шляху /v1/chat/completions використовуйте npm-пакет @ai-sdk/openai-compatible. Chat Completions — це інтерфейс для надсилання запитів у форматі чату. Переходьте на @ai-sdk/openai, лише якщо модель використовує /v1/responses. Якщо OmniProxy працює через шлях Chat Completions, залиште пакет сумісності.

Скопіюйте ID моделі повністю з поточного списку OmniProxy, зберігши всі скісні риски. Станом на 2026-10-09 два контрольні ID — claude-sonnet-5-5 і gpt-6-luna. gpt-6-luna підтримує Chat Completions; виклики функцій у Chat Completions підтримуються лише тоді, коли reasoning_effort має значення none. Не використовуйте ID, яких немає у списку.

Заповнення конфігурації інструмента

Provider можна розуміти як набір параметрів, які OpenCode використовує для підключення до сервісу моделей. У документації Providers OpenAI-сумісні сервіси, яких немає у списку /connect, описані як власні Provider. OpenAI-сумісний сервіс використовує такий самий формат запитів, тому з ним можуть працювати клієнти того самого типу.

  1. Виконайте /connect в OpenCode і прокрутіть список до Other.
  2. Введіть Provider ID. Нижче використовується omniproxy. Виберіть ID, який легко запам’ятати, адже в конфігураційному файлі потрібно буде вказати те саме значення.
  3. Введіть API Key для OmniProxy. На цьому кроці зберігаються лише облікові дані; адресу й моделі потрібно окремо додати до opencode.json. Облікові дані зберігаються у ~/.local/share/opencode/auth.json.
  4. Створіть або змініть opencode.json у каталозі проєкту:
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "omniproxy": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "OmniProxy",
      "options": {
        "baseURL": "https://your-omniproxy-origin.example/v1"
      },
      "models": {
        "claude-sonnet-5-5": { "name": "Claude Sonnet 5.5" },
        "gpt-6-luna": { "name": "GPT-6 Luna" }
      }
    }
  }
}
  1. Виконайте /models. Власний Provider і його моделі з’являться у списку.

ID у /connect має точно збігатися з ключем у opencode.json. Не записуйте справжній секретний ключ у цей файл. Якщо ви не використовуєте /connect, у options.apiKey можна вказати змінну середовища, наприклад {env:VARIABLE_NAME}. Під час тестування 2026-10-09 з OpenCode 1.18.34 підключення також працювало, коли ключ було записано безпосередньо в options.apiKey проєкту без використання /connect. Якщо шлюз не перевіряє ключ, тут можна вказати рядок-заповнювач, який використовується лише локально. Ключі в models мають містити повні ID зі списку.

Ключ

/connect

  • Виберіть Other у самому низу
  • Provider ID задайте самостійно
  • Зберігається в auth.json

Проєкт

opencode.json

  • Ключ provider повинен мати таку саму назву
  • Для npm використовуйте сумісний пакет
  • baseURL має завершуватися на /v1

Вибір

/models

  • Модель з’явиться у списку
  • Виберіть її перед запитанням
  • ID має відповідати списку шлюзу
Ключ і адреса зберігаються в різних місцях. Provider ID в обох місцях має бути однаковим.

Перевірка на реальному завданні

Спочатку виконайте одне реальне завдання в каталозі проєкту. Формат посилання на модель — Provider ID/ID моделі; якщо ID моделі містить скісні риски, їх потрібно зберегти:

opencode run --model omniproxy/claude-sonnet-5-5 --auto "Поясни, що робить указаний мною файл, і не змінюй файли."

Параметр --auto дає цьому запуску змогу використовувати інструменти, зокрема читання файлів. Під час тестування 2026-10-09 з OpenCode 1.18.34 вміст указаного файла було прочитано. Перший запуск тривав приблизно дві хвилини.

Для інтерактивної роботи запустіть opencode, а потім виберіть модель через /models. Для пошуку файлів можна використовувати @. Команда opencode auth list дає змогу перевірити облікові дані, збережені через /connect; після цього в журналі викликів OmniProxy можна перевірити джерело та ID моделі.

Запуск

opencode запускається

  • Спочатку виконайте cd до проєкту
  • auth list показує ID
  • Файл налаштувань міститься в проєкті

Завдання

Він прочитав код

  • Запитайте про конкретний файл
  • Перегляньте його пояснення
  • Якщо щось не так, скористайтеся /undo

Журнал

Шлюз бачить запит

  • Джерело — OpenCode
  • ID моделі збігається
  • Не додавайте ключ до комітів
Після збереження конфігураційного файла потрібно виконати один реальний запит у проєкті.

Поширені помилки

  • OmniProxy немає в /models: перевірте, чи збігається ID з /connect із ключем у opencode.json, чи вказано @ai-sdk/openai-compatible у полі npm і чи закінчується baseURL на /v1.
  • Облікові дані зникли: виконайте opencode auth list. Provider на кшталт Bedrock, які використовують змінні середовища, тут не відображаються; власний Provider, підключений через /connect, має бути у списку.
  • У Windows доступні не всі функції: скористайтеся сценарієм встановлення у WSL.
  • Недійсний ID моделі: повторно скопіюйте його з поточного списку OmniProxy та змініть ключ у models.
  • Запит надсилається через неправильний інтерфейс: для Chat Completions залиште @ai-sdk/openai-compatible. Не змінюйте пакет заради Responses API, якщо ця модель в OmniProxy насправді не використовує /v1/responses.

Офіційні довідкові матеріали

Інструкції зі встановлення наведено в описі OpenCode. Налаштування власного Provider описано в Providers. ID моделей із прикладів можна перевірити в огляді моделей Claude і на сторінці GPT-6 Luna.

Замістіть усі заповнювачі значеннями з вашої власної конфігурації OmniProxy. Ніколи не публікуйте справжній ключ.

Збережений результат або HTTP 200 самі по собі не доводять повну сумісність Агента. Перевірте джерело та модель у журналі викликів OmniProxy.

Офіційні джерела · OpenCode ↗