Статьи — RU
OpenCode + DeepSeek: собираем личного ИИ-агента на Windows и macOS
OpenCode обычно воспринимают как альтернативу Claude Code или Codex.

То есть:

Но технически код здесь вообще не главное.

OpenCode — это оболочка, которая даёт LLM возможность пользоваться инструментами.

А значит, можно построить совсем другую схему:
разработчик → агент → исходный код

человек
   ↓
OpenCode
   ↓
DeepSeek
   ↓
tools / MCP
   ↓
почта
календарь
файлы
браузер
внутренние системы
И получить своего личного агента.

Начнём с установки.

Шаг 1. Устанавливаем OpenCode на macOS

Если установлен Homebrew:

Именно свой tap OpenCode рекомендует использовать для получения наиболее свежих версий.

Проверяем:

Альтернативный вариант — официальный install script.

После установки запускаем:
brew install anomalyco/tap/opencode

opencode --version

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

opencode

Шаг 2. Устанавливаем OpenCode на Windows

На Windows сами разработчики OpenCode рекомендуют использовать WSL.

Причина простая: агент активно работает с shell, файлами и внешними инструментами, поэтому Linux-окружение даёт наиболее предсказуемое поведение.

Если WSL уже настроен, внутри него:

Проверяем:

Но OpenCode можно поставить и нативно.

Через Chocolatey:

Через Scoop:

Или через npm:

После этого:
curl -fsSL https://opencode.ai/install | bash
opencode --version

choco install opencode
scoop install opencode
npm install -g opencode-ai

opencode

Шаг 3. Получаем API-ключ DeepSeek

Нужен аккаунт в DeepSeek Platform.

В консоли создаём новый API key.

Выглядеть он будет примерно так:

Ключ не надо складывать в исходники, README или отправлять в Git.

OpenCode умеет хранить credential отдельно.
sk-xxxxxxxxxxxxxxxxxxxxxxxx

Шаг 4. Подключаем DeepSeek к OpenCode

Запускаем:

Внутри OpenCode вводим:

В списке провайдеров выбираем:

Вставляем API key.

После этого:

И выбираем нужную модель DeepSeek.

OpenCode прямо поддерживает DeepSeek как отдельного provider, поэтому вручную настраивать OpenAI-compatible endpoint для обычного сценария не требуется.

Получилась первая версия:
opencode

/connect
DeepSeek

/models
Уже можно разговаривать с моделью.

Но личного агента пока нет.
Вы
 ↓
OpenCode
 ↓
DeepSeek

Шаг 5. От чата к агенту

LLM сама по себе не умеет открыть вашу почту.

И это хорошо.

Доступ к внешнему миру нужно давать отдельно.

OpenCode позволяет добавлять инструменты, в том числе через MCP — Model Context Protocol.

Например:
DeepSeek
   ↓
OpenCode
   ↓
Gmail MCP
   ↓
search_email
read_email
create_draft
send_email
Модель принимает решение, какой инструмент вызвать.

OpenCode выполняет вызов.

Результат возвращается модели.

Модель анализирует его и решает, что делать дальше.

Получаем уже не один запрос к LLM, а цепочку:
получить письма
      ↓
прочитать
      ↓
классифицировать
      ↓
найти дедлайн
      ↓
понять, что требуется
      ↓
подготовить ответ
Это и есть агентский сценарий.

Шаг 6. Не даём агенту делать всё подряд

Вот здесь начинается действительно важная часть.

Если агент умеет читать почту, это ещё не значит, что ему нужно разрешать безусловно:

• отправлять письма;
• удалять письма;
• менять календарь;
• удалять файлы;
• выполнять произвольные shell-команды.

В OpenCode есть три базовых режима permission:

allow
ask
deny

Например:
чтение почты      → allow
поиск             → allow
анализ             → allow
создание draft    → allow

отправка          → ask
удаление          → ask
То есть агент может выполнить 20 безопасных действий самостоятельно и остановиться ровно там, где требуется решение человека.

Это сильно отличается от двух крайностей: «ИИ ничего не может делать» и «ИИ разрешено всё».

Нормальный агент находится между ними.

Шаг 7. Первый сценарий — разбираем почту

После подключения почтового инструмента задача может выглядеть так:
Разбери мою почту за последние 24 часа.

Раздели письма на:
1. Срочно.
2. Требует моего ответа.
3. Просто информация.
4. Можно проигнорировать.

Для первых двух категорий:
• коротко объясни содержание;
• скажи, чего от меня хотят;
• найди deadline;
• предложи следующее действие;
• подготовь draft ответа.

Ничего не отправляй без моего подтверждения.
Я хочу получить не Inbox из 60 сообщений.

Я хочу получить:
СРОЧНО — 2

1. Клиент ждёт согласования договора
   Deadline: сегодня 16:00
   Нужно: подтвердить пункт 4
   Draft: готов

2. Университет ждёт программу
   Deadline: завтра
   Нужно: проверить приложение
   Draft: готов

ОТВЕТИТЬ — 4
ИНФОРМАЦИЯ — 18
МОЖНО ПРОПУСТИТЬ — 36
Человек остаётся в контуре.

Но вместо чтения 60 писем он принимает четыре решения.

Зачем здесь OpenCode

Можно спросить: почему просто не открыть ChatGPT?

Потому что чат и агент — разные модели взаимодействия.

Чат:

Агент:
Чат:
вопрос → ответ

Агент:
цель
 ↓
план
 ↓
инструмент
 ↓
результат
 ↓
следующее действие
 ↓
готовая работа
И OpenCode интересен именно как оболочка для второго варианта.

Почему DeepSeek

В этой конструкции модель вообще заменяемая.

Сегодня это может быть DeepSeek:

Завтра:

или другая совместимая модель.
OpenCode → DeepSeek
OpenCode → Qwen
То есть мы отделяем две вещи:

мозг агента — LLM.

тело агента — инструменты, permissions и интеграции.

И это, на мой взгляд, намного интереснее очередного сравнения benchmark'ов LLM.

Что дальше

Следующий шаг — практический.

Подключим почту и соберём первый реальный сценарий:

«Разбери мой Inbox и скажи,
где от меня реально что-то хотят».

После этого добавим календарь.

А затем попробуем связать несколько инструментов в одну цепочку:
письмо
 ↓
понять задачу
 ↓
найти документ
 ↓
подготовить ответ
 ↓
проверить календарь
 ↓
предложить встречу
Вот здесь личный ИИ начинает становиться не чат-ботом, а агентом.
30.08.2026
Made on
Tilda