Перейти к основному содержанию
← База кейсов использования ИИ

Void APIБаза кейсов ИИКак настроить личный VPN для семьи с помощью ИИ-агента

Как настроить личный VPN для семьи с помощью ИИ-агента

Агент может помочь с технической настройкой собственного сервера, пока вы описываете нужный результат. Разбираем сценарий из поста 58: три семейных профиля на VPS, подключение устройств и воспроизводимая настройка. Установку и конфигурацию OpenCode берём из инструкции Void API; конкретную серверную схему агент выбирает после проверки вашего VPS.

Иллюстрация личного VPN для семьи: VPS, три отдельных профиля, ссылки и QR-коды
Иллюстрация сценария из поста @voidapitech/58, а не скриншот готового развёртывания. На схеме — свой VPS и отдельный профиль для каждого участника.

Что хотим получить и что показано в посте

Цель — собственный личный VPN для себя и семьи без ручного выполнения всех операций администрирования. В посте предложено арендовать VPS, дать агенту SSH-доступ и получить отдельные ссылки и QR-коды для трёх участников.

Изображение — иллюстрация задачи: VPS, три профиля, настройка сервиса и подключение устройств. Это не доказательство уже выполненной установки и не готовая конфигурация, которую можно импортировать из картинки. В статье используется OpenCode на вашем компьютере: он обращается к модели через Void API и выполняет разрешённые SSH-команды на вашем VPS.

Посмотреть первоисточник

1. Подготовьте VPS и сведения об устройствах

Нужен VPS под вашим управлением: публичный адрес, поддерживаемая Linux-система, SSH-порт, пользователь и доступ по ключу или паролю. Провайдер выбирается отдельно; в посте приведён пример VDSka. Оплата VPS не входит в баланс Void API. До изменений убедитесь, что у вас есть доступ к консоли восстановления в панели хостинга.

Запишите для каждого участника устройство, операционную систему и установленный VPN-клиент, если он уже есть. Уточните, какие приложения должны идти напрямую, а какие — через туннель. Не выбирайте протокол только по названию: для Hysteria 2 важна доступность UDP, а возможности VLESS зависят от выбранного транспорта и клиента.

Провайдер VPS из примера поста

2. Установите OpenCode и подключите Void API по инструкции сайта

Откройте инструкцию OpenCode в разделе подключения Void API. На ней есть ссылка на сайт OpenCode для установки, а ниже — настройки провайдера, ключа и запуска. Если OpenCode ещё не установлен, перейдите по ссылке с этой страницы, выберите установку для своей ОС и вернитесь к настройке Void API. Сам инструмент запускайте на компьютере, с которого будете управлять VPS.

Создайте API-ключ в кабинете Void API и проверьте баланс. Подготовьте отдельную папку проекта для этой настройки. Ниже показаны те же три шага, которые генерирует инструкция Void API: переменная VOID_API_KEY, opencode.json и запуск. MODEL_ID — обозначение для замены: возьмите точный ID доступной модели с поддержкой инструментов из каталога и замените его в ключе объекта models и в поле name. В файл не нужно вставлять настоящий ключ: apiKey читает переменную окружения.

После запуска OpenCode выполните /models и выберите модель провайдера Void API. Сначала попросите короткий текстовый ответ, затем — показать список файлов в папке проекта. Так вы отдельно проверите доступ к модели и работу инструментов до подключения к серверу. Если видите 401, проверьте ключ и терминал с переменной; при ошибке баланса откройте кабинет, при ошибке модели проверьте её ID и совместимость.

Ключ API

Сохраните ключ в переменной окружения.

export VOID_API_KEY='void_your_key'

Выполните команды в Bash или Zsh. Значения действуют только в текущем терминале. Чтобы сохранить их для будущих сеансов, добавьте команды в ~/.bashrc или ~/.zshrc.

Конфигурация

Создайте opencode.json в корне вашего проекта.

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "void-api": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Void API",
      "options": {
        "baseURL": "https://void-api.tech/v1",
        "apiKey": "{env:VOID_API_KEY}"
      },
      "models": {
        "MODEL_ID": {
          "name": "MODEL_ID",
          "attachment": true,
          "modalities": {
            "input": [
              "text",
              "image"
            ],
            "output": [
              "text"
            ]
          }
        }
      }
    }
  }
}

Запуск

Запустите OpenCode и выберите модель Void API.

shell
opencode
/models

Полная инструкция OpenCode на Void APIСоздать API-ключБалансКаталог моделей

3. Подготовьте SSH-доступ с компьютера агента

Сначала проверьте обычное SSH-подключение вручную с того же компьютера. Используйте адрес, порт и пользователя из панели VPS. Если вход по паролю требует первичной смены пароля, выполните её в обычном терминале. Для автоматических команд агента настройте вход по SSH-ключу: публичный ключ установите на VPS, а приватный оставьте на своём компьютере. Тогда команда не будет ждать интерактивного ввода пароля.

Удобно создать локальный SSH-псевдоним family-vps. Пример ниже относится к SSH-конфигурации, а не к opencode.json. Замените 203.0.113.10, пользователя, порт и путь к ключу своими значениями; адрес в примере — документальный, подключаться к нему не нужно. Затем проверьте команду ssh family-vps. Агенту достаточно сообщить этот псевдоним: приватный ключ и пароль не надо вставлять в текст запроса.

После успешного входа попросите агента только обследовать сервер: определить ОС, занятые порты, доступные ресурсы, действующие сервисы и правила firewall. Если на VPS уже размещены сайт или другие приложения, укажите это прямо — схема должна учитывать существующие порты и не переустанавливать ОС.

На Windows SSH-конфигурация обычно находится в %USERPROFILE%\.ssh\config; в Linux, macOS и WSL — в ~/.ssh/config. Если OpenCode работает в WSL, проверяйте SSH-доступ и переменную VOID_API_KEY внутри WSL, а не в отдельном PowerShell. Ключ и конфигурация должны быть доступны тому окружению, где запущен агент.

Пример ~/.ssh/config
Host family-vps
  HostName 203.0.113.10
  User YOUR_SSH_USER
  Port 22
  IdentityFile ~/.ssh/family-vps
Проверка SSH
ssh family-vps

4. Передайте агенту задание из поста

Сообщите, что сервер ваш и доступен через family-vps, укажите число участников и список устройств. Попросите сначала уточнить недостающие сведения и предложить план. Когда окружение проверено и план подходит, переходите к выполнению в режиме, позволяющем агенту запускать команды.

Ниже приведено задание из публикации. Имена участников можно заменить своими обозначениями. Агент должен подготовить не только запущенный сервис, но и отдельные профили, инструкции для клиентов и способ повторить установку на новом VPS.

Готовое задание агенту из поста
Настрой на моём VPS личный VPN для трёх человек.
Проверь сервер и выбери подходящий вариант: VLESS или Hysteria 2.
Настрой сервис, firewall, обновления безопасности и автозапуск.
Создай отдельные конфигурации для меня, девушки и мамы.
Помоги настроить раздельную маршрутизацию на устройствах: российские приложения и сайты — напрямую, зарубежные — через VPN. Уточни наши устройства и приложения перед настройкой.
Выдай ссылки, QR-коды и короткую инструкцию подключения.
Подготовь сценарий повторного развёртывания, чтобы при необходимости быстро перенести всё на новый сервер.

5. Выберите протокол после проверки сервера и клиентов

Попросите агента объяснить выбор VLESS или Hysteria 2 на основе вашей ОС, сетевых ограничений провайдера и поддержки протокола на всех устройствах. Уточните требования выбранного режима к домену и сертификату: они не одинаковы для всех транспортов и вариантов настройки.

В плане должны быть понятные имена сервисов, порты, расположение конфигураций, порядок обновлений и автозапуск. Перед применением firewall агент должен сохранить доступ по используемому SSH-порту. После запуска попросите проверить состояние сервиса и журнал ошибок, а не ограничиваться сообщением об успешном выполнении установщика.

Документация XrayДокументация Hysteria 2

6. Получите три отдельных профиля и QR-кода

Для каждого участника попросите отдельные учётные данные или конфигурацию выбранного протокола. Это позволяет заменить или отозвать один профиль, не меняя настройки всей семьи. У каждого профиля должны быть понятное имя, индивидуальная ссылка и QR-код, если формат поддерживается клиентом.

Попросите сохранить результаты в папке проекта: краткую инструкцию, таблицу соответствия профилей участникам и файлы подключения. Ссылки и QR-коды фактически дают доступ к вашему серверу — передавайте их только соответствующим участникам, а не публикуйте в общем кейсе или репозитории.

7. Подключите устройства по одному

Подберите клиент, который поддерживает выбранный протокол и конкретную ОС. Попросите агента дать инструкции именно для ваших устройств: где находится импорт по ссылке, сканирование QR-кода и включение профиля. Одинаковая программа не обязательна на всех платформах, но протокол и формат конфигурации должны совпадать.

Начните с одного устройства: импортируйте его личный профиль, включите соединение и проверьте выбранный сетевой сценарий. Затем повторите для двух остальных. Если импорт не проходит, сначала проверьте тип ссылки, поддержку протокола клиентом и полноту конфигурации, а не создавайте новые профили наугад.

8. Настройте раздельную маршрутизацию на устройствах

В сценарии поста российские приложения и сайты предлагается направлять напрямую, а выбранный зарубежный трафик — через туннель. Конкретные правила зависят от клиента: где-то доступны доменные списки, где-то — выбор приложений, режим TUN или правила маршрутизации. Поэтому агент сначала должен уточнить устройства и программы.

Подготовьте небольшой список сервисов для проверки и попросите объяснить, какое правило срабатывает для каждого. DNS-настройки также нужно согласовать с режимом клиента. Сам факт установки серверной части не включает правильное разделение трафика на всех телефонах и компьютерах автоматически.

Проверьте отдельно прямой маршрут и маршрут через VPS. Раздельная маршрутизация — это управление путём трафика, а не гарантия доступности любого сайта или защиты IP-адреса сервера от блокировки. Назначение описанного сценария — личный защищённый канал связи.

9. Проверьте результат и сохраните отчёт

Попросите агента выдать итоговый отчёт: выбранный протокол и причина выбора, сервис и порт, пути конфигураций, состояние автозапуска, перечень профилей и способы проверки. На устройствах проверьте подключение каждого участника, маршруты и поведение после отключения и повторного включения профиля.

Отдельно проверьте сохранение SSH-доступа и согласуйте проверку после перезагрузки VPS. Если возникают ошибки, передавайте агенту конкретный текст и время проблемы: он сможет сопоставить их с журналом сервиса. Не считайте иллюстрацию из поста или факт создания QR-кода проверкой работающего соединения.

10. Подготовьте повторное развёртывание и перенос

Попросите сохранить воспроизводимый сценарий установки и README: поддерживаемая ОС, зависимости, настройки сервисов и портов, правила firewall, список шагов проверки. Секретные данные профилей должны храниться отдельно от общедоступной инструкции.

Для переноса арендуйте новый VPS, проверьте его доступность по SSH и дайте агенту новый псевдоним. Пусть он применит сохранённую процедуру, обновит адреса и параметры подключения и проверит каждое устройство. Старый сервер отключайте после проверки нового: повторное развёртывание ускоряет работу, но не гарантирует мгновенный перенос.

Частые проблемы: что сообщить агенту

OpenCode не отвечает: проверьте VOID_API_KEY в том же терминале, адрес /v1, выбранный ID и наличие средств. Работает текст, но не инструменты: выберите модель с поддержкой tool calling и сверьтесь с инструкцией Void API. Ошибка SSH: проверьте адрес, порт, пользователя и локальный способ аутентификации до запуска агента.

Профиль импортирован, но соединения нет: нужны ОС устройства, название и версия клиента, протокол, время попытки и обезличенный текст ошибки. Агенту следует проверить соответствующий TCP или UDP-порт, firewall, журнал сервиса и параметры профиля. Если сбоит только часть приложений, отдельно проверяются клиентские правила маршрутизации и DNS.

Не переустанавливайте всё после первой ошибки. Сначала попросите определить, какой слой не работает: доступ к модели, SSH, серверный сервис, клиентский профиль или маршрутизация. Это позволяет исправить конкретную причину и сохранить уже работающие настройки.

Вернуться к инструкции OpenCode на Void APIСправочник APIОригинальный кейс

Вопросы и ответы

Где взять инструкцию установки и подключения OpenCode к Void API?

В разделе «Подключение → OpenCode» на Void API: там размещены ссылка на сайт инструмента, переменная VOID_API_KEY, конфигурация opencode.json и шаг запуска с /models. В этом кейсе код этих шагов берётся из того же генератора инструкции.

Что выбрать: VLESS или Hysteria 2?

Выбор зависит от VPS, доступности нужного транспорта и клиентов на устройствах. Попросите агента сначала проверить окружение и объяснить решение. Универсального протокола, одинаково подходящего всем устройствам и сетям, нет.

Можно ли использовать ссылки и QR-коды с иллюстрации?

Нет: изображение показывает сценарий, а не рабочие профили. Агент должен создать индивидуальные конфигурации на вашем VPS и выдать их отдельно каждому участнику.