OpenCode

OpenCode — открытый агентный CLI для программирования с TUI: правки файлов, shell-команды, контекст проекта и переключение моделей прямо в сессии. OpenCode подключает AI Chaos как custom provider через OpenAI-совместимый endpoint.

Шаг 1. Установка

# Скрипт установки (macOS, Linux, WSL)
curl -fsSL https://opencode.ai/install | bash

# npm
npm install -g opencode-ai

# Homebrew
brew install sst/tap/opencode

# Windows (Scoop)
scoop install opencode

Проверка: opencode --version (нужен Node.js 18+ для npm-варианта).

Шаг 2. API ключ

Есть два способа.

Способ A: команда /connect (рекомендуется)

cd /path/to/your/project
opencode
# затем в TUI:
/connect
  1. В списке провайдеров выберите Other (произвольный OpenAI-совместимый).
  2. Введите ID провайдера — например aichaos.
  3. Введите ваш API ключ (префикс chaos-u-); он сохранится в ~/.local/share/opencode/auth.json.

Способ B: прямо в конфиге

Пропустите /connect и укажите ключ через options.apiKey в opencode.jsonc (см. ниже).

Шаг 3. opencode.jsonc

Создайте ~/.config/opencode/opencode.jsonc (глобально) или opencode.jsonc в корне проекта:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "aichaos": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "AI Chaos",
      "options": {
        "baseURL": "https://aichaos.ru/v1",
        "apiKey": "{env:AICHAOS_API_KEY}"
      },
      "models": {
        "chat-model": { "name": "Chat Model", "limit": { "context": 200000, "output": 32000 } }
      }
    }
  },
  "model": "aichaos/chat-model",
  "small_model": "aichaos/chat-model"
}

Ключ в models должен совпадать с ID провайдера из /connect. Замените chat-model на код модели изкаталога моделей и укажите реальные лимиты окна контекста — OpenCode показывает остаток контекста по ним.

Шаг 4. Запуск

cd /path/to/your/project
opencode
# в TUI: /models — выбрать модель AI Chaos

Экономия: small_model

OpenCode вызывает small_model на лёгкие задачи (заголовки сессий, суммаризация). Поставьте туда быструю и дешёвую модель из каталога — основная модель расходуется только на полезную работу.

Файл правил AGENTS.md

OpenCode читает AGENTS.md в корне проекта как системные инструкции — аналог CLAUDE.md. Глобальный вариант: ~/.config/opencode/AGENTS.md.

Headless-режим для CI

export AICHAOS_API_KEY="chaos-u-..."
opencode run "Напиши unit-тесты для src/utils.ts"

Читает глобальный конфиг, выполняет задачу и выводит результат в stdout — подходит для GitHub Actions, GitLab CI и любых пайплайнов.

Устранение неполадок

  • Провайдер не появляется в /models. ID в provider.<ID> должен совпадать с введённым в /connect; проверьте opencode auth list и перезапустите OpenCode после правки конфига.
  • 401 / 403. Проверьте ключ внастройках и положительный баланс; baseURL — https://aichaos.ru/v1, с /v1, без слеша в конце.
  • Model not found / 404. Код модели в models должен совпадать с тем, что уходит в API. Отображаемое name — произвольное.
  • Ошибка лимита контекста. Увеличьте limit.context в конфиге модели или возьмите модель с большим окном.

См. также