DeepSeek Harness
Инструкция по подключению DeepSeek Harness к ZvenoAI API: модели DeepSeek и другие модели каталога в настольном AI-агенте, веб-поиск и известные ограничения.
DeepSeek Harness — настольное приложение для работы с AI-агентом. Оно ведёт диалог, даёт модели инструменты и выполняет их вызовы: читает страницы, ищет в интернете, работает с файлами. Подключите ZvenoAI как собственного провайдера модели — ключ официального DeepSeek API для этого не нужен.
Инструкция проверена 20 октября 2026 года в Harness 0.2.1-rc.2 на macOS. В следующих версиях интерфейс может отличаться.
Что делает Harness, а что — ZvenoAI
Harness работает на вашем компьютере: хранит сессии, вызывает инструменты и показывает ход работы агента. ZvenoAI принимает запросы к выбранной модели через API и списывает их стоимость с баланса.
Для подключения в Harness есть настройка Custom model API с выбором протокола. Рабочий протокол для ZvenoAI — OpenAI Chat Completions. Подробнее о сторонних провайдерах — в документации Harness. Приложение скачивается на официальной странице DeepSeek Harness.
Быстрый старт
1. Создайте отдельный API ключ
Откройте «API ключи» в личном кабинете и нажмите «Создать». Задайте ключу понятное название, например deepseek-harness, и лимит расхода. По отдельному ключу проще следить, сколько тратит агент: он отправляет несколько запросов на один ход.

Скопируйте ключ: он понадобится в настройках Harness.
2. Пропустите настройку официального DeepSeek API
На стартовом экране Harness кнопка Add API Key настраивает официальные модели DeepSeek. Для ключа ZvenoAI нажмите Set up later, затем откройте More → Settings → Models.

3. Добавьте ZvenoAI как провайдера
Нажмите Add model provider → Custom model API и заполните поля:
| Поле | Значение |
|---|---|
| Provider ID | zvenoai |
| Display name | ZvenoAI |
| Base URL | https://api.zveno.ai/v1 |
| API protocol | OpenAI Chat Completions |
| API key | ваш ключ ZvenoAI |

4. Выберите модели
Нажмите Fetch available models — Harness загрузит каталог ZvenoAI. Снимите общее выделение кнопкой Deselect all и отметьте нужные модели. Инструкция проверена с моделью:
deepseek/deepseek-v4.1-flash
Нажмите Add selected, затем Create provider. Отметка API key configured у провайдера означает только то, что ключ сохранён. Работу модели проверьте первым запросом.
Идентификаторы других моделей — в каталоге.
5. Отправьте первый запрос
Создайте New Session. Внизу поля сообщения откройте выбор модели и найдите её в группе ZvenoAI. Для начала подойдёт короткая задача:
Не читай локальные файлы. Ответь одним предложением по-русски: чему равно 17 × 23?

Затем проверьте инструменты: попросите модель прочитать https://example.com через web_fetch. Во вкладке Trajectory появится вызов инструмента, а модель назовёт заголовок страницы. Так проверяется вся цепочка: модель → инструмент → результат → ответ.
Для задач с файлами добавьте рабочую папку через Add workspace. Начните с отдельной папки и небольшой копии данных. Работу с файлами в этой проверке не тестировали.
Веб-поиск
Ключ ZvenoAI в настройках модели не включает встроенный веб-поиск Harness. У модели, поиска и чтения страниц разные настройки.
Встроенный web_search — отдельный провайдер
Поиск настраивается в Plugins → Web search. По умолчанию Harness ищет через DeepSeek Messages, и у поиска свои поля: API key, Messages API base URL и предел числа поисков. Когда модель вызывает web_search, Harness отправляет запрос этому провайдеру, а результаты возвращает модели. Поэтому выбор модели через ZvenoAI адрес поиска не меняет.
Без ключа у поискового провайдера вызов web_search завершается ошибкой WEB_PROVIDER_CREDENTIAL_MISSING, а модель продолжает отвечать через ZvenoAI.
Не вставляйте ключ ZvenoAI в поле поиска с адресом DeepSeek: ключ уйдёт в чужой сервис.
Переключатель Use the new Web Search API переводит поиск и чтение страниц на новый API DeepSeek. Новый API в этой проверке не вызывали. Устройство веб-инструментов описано в справке Harness.
web_fetch — чтение известной страницы
Если ссылка известна заранее, попросите Harness прочитать её через web_fetch. Этот инструмент делает HTTP-запрос с вашего компьютера. Пока переключатель Use the new Web Search API выключен, ключ поиска ему не нужен. Он подходит для публичных страниц.
Поиск через ZvenoAI — суффикс :online
ZvenoAI умеет искать сам: добавьте к идентификатору модели суффикс :online, и найденные материалы попадут в контекст модели вместе со ссылками на источники. Подробности и стоимость — в руководстве по веб-поиску.
deepseek/deepseek-v4.1-flash:onlineТакую модель можно добавить в провайдер ZvenoAI вручную кнопкой Add model. Это другой путь поиска: он не исправляет ошибку встроенного web_search. Работа :online подтверждена только прямым запросом к API. Как Harness передаёт суффикс и показывает ссылки на источники, мы не проверяли.
Anthropic Messages пока не подходит
Подключайте ZvenoAI к Harness только по протоколу OpenAI Chat Completions. С протоколом Anthropic
Messages поток ответа обрывается до события message_stop, и Harness повторяет запрос. Повторы
могут списывать средства с баланса.
Если провайдер ZvenoAI уже настроен с протоколом Anthropic Messages, Harness покажет ошибку Anthropic stream ended before message_stop. Переключите провайдера на OpenAI Chat Completions с адресом https://api.zveno.ai/v1.

Частые ошибки
Советы по использованию
- Следите за расходом ключа в первых сессиях: агент отправляет несколько запросов на один ход. Запросы и их стоимость видны в логах.
- Ответ HTTP 200 ещё не значит, что задача агента выполнена. Проверяйте результат во вкладке Trajectory.
- Если нужны сведения с конкретной страницы, дайте ссылку и попросите прочитать её через
web_fetch. Для поиска по интернету выберите один путь: провайдер поиска Harness или модель с:online.
OpenCode
Инструкция по настройке OpenCode для работы с ZvenoAI API. Используйте модели Anthropic, OpenAI, Google и других провайдеров в терминале без VPN.
n8n
Инструкция по подключению ZvenoAI к n8n. Используйте модели Anthropic, OpenAI, Google и других провайдеров в AI-воркфлоу без VPN с оплатой в рублях.