DeepSeek Harness (dsh) — архитектура, возможности и полное руководство

DeepSeek Harness

Индустрия разработки программного обеспечения переживает тектонический сдвиг: эпоха простых автодополнений кода в стиле GitHub Copilot уступает место автономным агентным средам. Если первое поколение таких инструментов представляло собой жестко спаянные консольные утилиты, привязанные к проприетарным облачным сервисам одного вендора, то проект DeepSeek Harness (dsh) предлагает принципиально иной инженерный взгляд на проблему. Это модульный рантайм с открытым исходным кодом, превращающий языковую модель из простого генератора текста в полноценную операционную систему для решения инженерных задач.

Эволюция агентных систем и концепция DeepSeek Harness

В развитии ИИ-ассистентов для программирования можно выделить три последовательных этапа. Первым этапом были инлайн-подсказки (на уровне строк и функций). Вторым — диалоговые чат-боты в боковой панели IDE, требующие ручного переноса кода разработчиком. Третьим этапом стало появление автономных терминальных агентов, способных самостоятельно читать файлы, запускать команды в bash, анализировать вывод компилятора и последовательно вносить правки.

Однако большинство современных терминальных агентов (таких как Claude Code или ранние CLI-эксперименты) созданы как монолитные приложения. В них жестко зашиты логика оркестрации, набор доступных инструментов, способ работы с контекстом и конкретный провайдер нейросетей. Попытка изменить способ изоляции песочницы или подключить локально развернутую модель в таких системах обычно требует полного переписывания кодовой базы.

DeepSeek подошла к задаче системно, разделив интеллект и среду его исполнения через формулу: Agent = Model + Harness. Модель отвечает исключительно за рассуждения и планирование, тогда как Harness берет на себя все низкоуровневые функции: предоставление инструментов, управление памятью и кэшем контекста, файловые операции, сетевой доступ, перехват ошибок и визуализацию процесса принятия решений.

Архитектура микроядра в парадигме «Всё есть плагин»

В основе DeepSeek Harness лежит расширяемый мета-фреймворк Cordis, реализующий парадигму пространственно-временной композируемости компонентов (Spatiotemporal Composability). В архитектуре dsh не существует «привилегированных» внутренних модулей — абсолютно каждая подсистема оформлена как подключаемый плагин:

  • Провайдеры моделей (Model Providers): Поддержка любых LLM — от DeepSeek V4 Pro/Flash до моделей OpenAI, Anthropic, Google Vertex AI, AWS Bedrock, а также локальных серверов инференса через vLLM и Ollama.
  • Инструменты и экосистема навыков (Skills): Встроенная поддержка стандарта SKILL.md, что гарантирует полную совместимость с экосистемой навыков, изначально созданных для Claude Code.
  • Песочницы и среда исполнения: Возможность выбора между изолированными Docker-контейнерами, виртуальными машинами или прямым доступом к локальной ОС с гибкими политиками разграничения прав.
  • Интерфейсы взаимодействия: Локальный графический веб-интерфейс (Web UI), классический консольный режим (CLI) или режим без графического интерфейса (Headless) для интеграции в CI/CD пайплайны.
  • Хранилище и трейсинг: Журналирование сессий в append-only лог, что позволяет воспроизводить ход выполнения по шагам, ветвить (fork) сессии и анализировать граф действий.

Сравнительный анализ DeepSeek Harness и Claude Code

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

КритерийClaude Code (Anthropic)DeepSeek Harness (dsh)
Архитектурная модельМонолитный специализированный CLI-клиентМикроядерный расширяемый рантайм на базе Cordis
Поддерживаемые LLMСемейство Claude (Sonnet, Opus)Агностицизм: DeepSeek, OpenAI, Claude, локальные LLM
Пользовательский интерфейсИсключительно терминал (TUI / CLI)Полноценный локальный Web UI, CLI и Headless-режим
Оркестрация суб-агентовКонечный агент без вложенностиМета-оркестратор (может запускать даже Claude Code)
Телеметрия и прозрачностьБазовый консольный вывод этаповВкладка Trajectory: скорость токенов, % Cache Hit, граф
Лицензирование и контрольПроприетарный клиент, привязка к облакуOpen Source (лицензия MIT), концепция Local-First

Преимущества архитектуры DeepSeek Harness:

  • Экстремальная оптимизация Prompt Caching: Архитектура управления состоянием сессии разработана так, чтобы минимизировать инвалидацию префиксного кэша. На длинных траекториях показатель Cache Hit достигает 99-100%, что снижает финансовые затраты на API в разы.
  • Полная конфиденциальность данных (Local-First): Все учетные данные, настройки, локальная база знаний и история сессий хранятся исключительно на машине разработчика в каталоге пользователя.
  • Детерминированное воспроизведение (Trajectory Replay): Возможность вернуться к любому промежуточному шагу рассуждения агента, изменить системный промпт или контекст и запустить альтернативную ветку решения задачи.

Четыре режима исполнения (Runtime Modes)

В зависимости от характера задачи и ограничений по ресурсам, dsh предлагает четыре специализированных профиля работы:

  1. Standard Mode (Стандартный агент): Полнофункциональный интерактивный режим. Включает многошаговое планирование, поиск по файловой системе, чтение документации, веб-поиск, вызов подоболочек и делегирование подзадач дочерним агентам.
  2. Code Mode (Пакетный запуск через TypeScript SDK): Революционный подход к устранению задержек вызова инструментов. Вместо последовательной цепочки «запрос инструмента → ожидание ответа → новый запрос», модель пишет единый скрипт на TypeScript с использованием встроенного SDK. Скрипт за один раунд выполняет поиск, чтение десятков файлов, модификацию кода и запуск юнит-тестов. Если в скрипте возникает ошибка, агент выполняет самодиагностику и корректирует код в рамках того же цикла.
  3. Minimal Mode (Минималистичный бенчмарк): Аскетичное окружение, состоящее только из персистентной bash-сессии и редактора фрагментов текста. Идеально подходит для воспроизведения стандартных тестов SWE-bench и оценки чистого интеллекта моделей.
  4. Creator Mode (Режим мета-разработки): Среда для инспектирования плагинов Cordis прямо в оперативной памяти, отладки инструментов и сборки собственных пресетов агентов под специфические проекты.

Практические сценарии использования

1. Комплексный рефакторинг репозитория

При обновлении мажорной версии фреймворка или миграции с JavaScript на TypeScript в Code Mode агент не модифицирует файлы по одному. Он генерирует алгоритм на базе AST-парсера, который сканирует проект, вносит структурные правки во все затронутые модули, запускает сборщик проектов и устраняет ошибки типизации пакетом.

2. Гетерогенная мульти-модельная оркестрация

Для оптимизации бюджета можно настроить каскад моделей: легковесная и быстрая модель (например, DeepSeek V4 Flash) выполняет черновые операции поиска файлов, парсинга логов и первичного триажа, а тяжелая флагманская модель подключается только для синтеза сложной бизнес-логики и архитектурного ревью.

3. Автономный CI/CD триажер в Headless-режиме

В пайплайне continuous integration при падении ночных тестов запускается dsh headless. Агент принимает лог сбоя, находит проблемный коммит, воспроизводит ошибку в локальной песочнице, пишет регрессионный тест, вносит исправление и формирует готовый Pull Request с подробным техническим отчетом.

4. Локальный аудит безопасности и бенчмаркинг открытых LLM

Для компаний с жесткими требованиями к NDA, где запрещена отправка кода во внешние облака, DeepSeek Harness позволяет поднять локальный контур на базе собственных серверов vLLM. Режим Minimal Mode дает возможность объективно замерить процент решения задач локальными открытыми моделями на реальном корпоративном коде.

Пошаговая инструкция по установке и настройке

Системные требования

  • Среда выполнения Node.js (версия 18 LTS или 20+);
  • Менеджер пакетов npm или pnpm;
  • API-ключ поддерживаемого провайдера (DeepSeek, OpenAI, Anthropic или локальный эндпоинт).

Способ 1. Быстрый запуск без предварительной установки (Рекомендуется)

Откройте терминал, перейдите в корневую папку вашего проекта и выполните команду:

npx @deepseek-ai/dsh web

Примечание: Запуск команды непосредственно из каталога с вашим проектом автоматически сделает эту директорию доступной для агента в качестве рабочего пространства (Workspace).

Способ 2. Глобальная установка CLI в систему

# Установка глобального пакета
npm install -g @deepseek-ai/dsh

# Запуск локального Web UI
dsh web

Способ 3. Сборка из исходного кода для разработчиков

# Клонирование репозитория
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness

# Установка зависимостей и компиляция
pnpm install
pnpm run build

# Старт веб-сервера
pnpm dsh web

Первоначальная конфигурация через Web UI

  1. После запуска откройте браузер по адресу http://127.0.0.1:3080.
  2. Перейдите в меню Settings → Models.
  3. В секции выбранного провайдера укажите ваш API-ключ. Ключ сохранится локально в зашифрованном файле конфигурации пользователя.
  4. В основном окне нажмите Choose Workspace и подтвердите рабочую директорию проекта.
  5. Выберите режим выполнения (для глубоких задач программирования рекомендуется Code Mode).
  6. Сформулируйте задачу в чате и наблюдайте за процессом исследования и модификации файлов во вкладке Trajectory.

Использование DeepSeek Harness со сторонними моделями (OpenAI, Claude, Ollama, vLLM)

Благодаря компонуемой микроядерной архитектуре Cordis платформа DeepSeek Harness (dsh) является полностью модель-агностичной. Вы не ограничены исключительно экосистемой DeepSeek: рантайм позволяет подключать любые проприетарные облачные API (OpenAI, Anthropic Claude, Google Gemini), популярные сервисы-агрегаторы (OpenRouter, Groq), а также полностью изолированные локальные нейросети через OpenAI-совместимый интерфейс.

Вариант 1. Настройка через графический Web UI

  1. Запустите интерфейс DeepSeek Harness в рабочей папке вашего проекта: npx @deepseek-ai/dsh web
  2. Откройте браузер по адресу http://127.0.0.1:3080.
  3. Перейдите в раздел Settings → Models / Providers.

Для встроенных облачных провайдеров (OpenAI, Anthropic):

  • Выберите карточку нужного сервиса (OpenAI или Anthropic).
  • Вставьте ваш API-ключ (sk-...).
  • Укажите целевую модель (например, claude-3-7-sonnet-20250219, gpt-4o или o3-mini).
  • Нажмите кнопку Save.

Для агрегаторов (OpenRouter, Groq, Together AI):

  • Нажмите кнопку «Add Custom Provider» (или выберите профиль OpenAI-Compatible).
  • Заполните параметры подключения:
    • Provider Name: OpenRouter (или произвольное имя);
    • Base URL: https://openrouter.ai/api/v1;
    • API Key: ваш сервисный ключ доступа;
    • Model ID: идентификатор модели (например, anthropic/claude-3.7-sonnet).
  • Нажмите Test ConnectionSave.

Вариант 2. Подключение локальных моделей без интернета (Ollama, vLLM)

Любой локальный сервер инференса, предоставляющий эндпоинт формата /v1/chat/completions, может использоваться в роли основного вычислительного ядра.

Пример интеграции с Ollama:

# 1. Запуск модели в терминале
ollama run qwen2.5-coder:32b

В настройках Web UI (Settings → Models → Add Custom Provider) укажите:

  • Base URL: http://127.0.0.1:11434/v1
  • API Key: ollama (заглушка, локальный сервер не проверяет ключ)
  • Model ID: qwen2.5-coder:32b

Пример интеграции с vLLM:

# Запуск OpenAI-совместимого сервера vLLM
python3 -m vllm.entrypoints.openai.api_server \
    --model Qwen/Qwen2.5-Coder-32B-Instruct \
    --port 8000

Параметры для Web UI:

  • Base URL: http://127.0.0.1:8000/v1
  • Model ID: Qwen/Qwen2.5-Coder-32B-Instruct

Вариант 3. Настройка через переменные окружения (CLI и автоматизация)

При запуске в терминале или внутри скриптов CI/CD параметры провайдера можно передать напрямую через системные переменные:

# Использование Anthropic Claude
export ANTHROPIC_API_KEY="sk-ant-..."
export DSH_DEFAULT_MODEL="anthropic/claude-3-7-sonnet"
npx @deepseek-ai/dsh web

# Использование OpenAI
export OPENAI_API_KEY="sk-proj-..."
export DSH_DEFAULT_MODEL="openai/gpt-4o"
npx @deepseek-ai/dsh web

# Использование OpenRouter
export OPENAI_API_BASE="https://openrouter.ai/api/v1"
export OPENAI_API_KEY="sk-or-v1-..."
export DSH_DEFAULT_MODEL="openrouter/anthropic/claude-3.5-sonnet"
npx @deepseek-ai/dsh web

Вариант 4. Прямая правка конфигурационного файла (.credentials.yaml)

Все учетные записи и кастомные эндпоинты сохраняются локально на компьютере разработчика по пути:

  • Linux / macOS: ~/.dsh/.credentials.yaml
  • Windows: %USERPROFILE%\.dsh\.credentials.yaml
providers:
  deepseek:
    apiKey: "sk-..."
  openai:
    apiKey: "sk-proj-..."
  anthropic:
    apiKey: "sk-ant-..."
  custom_local:
    baseUrl: "http://127.0.0.1:11434/v1"
    apiKey: "ollama"
    defaultModel: "qwen2.5-coder:32b"

defaultProvider: "anthropic"
defaultModel: "claude-3-7-sonnet"

Инженерные рекомендации по выбору моделей:

  • Для режима Code Mode: Генерация TypeScript-скриптов с множественными вызовами инструментов требует сильных моделей уровня Claude 3.7 / 3.5 Sonnet, GPT-4o, DeepSeek V3 / V4 или Qwen 2.5 Coder 32B.
  • Для небольших локальных моделей (7B–14B): Рекомендуется включать Minimal Mode, чтобы модель не тратила контекст на сложные схемы вызова внешних функций, а работала через базовый bash и точечную замену текста.
  • Маршрутизация (Routing): В пресетах Cordis можно настроить разделение ролей: быструю и экономичную модель назначить на первичный поиск файлов и парсинг логов, а тяжелую модель подключать только на этапе генерации финального патча.

DeepSeek Harness представляет собой зрелый шаг в сторону открытости и стандартизации инструментов ИИ-разработки. Отказ от монолитной архитектуры в пользу компонуемого микроядра Cordis, поддержка стандарта навыков SKILL.md, интеграция пакетного Code Mode и отсутствие вендор-лока делают dsh одним из наиболее мощных и прозрачных решений для создания автономных систем программирования.

Метки:

Anthropic, AWS Bedrock, Claude Code, Cordis, DeepSeek, DeepSeek Harness, GitHub Copilot, Google Vertex AI, LLM, Ollama, OpenAI, Prompt Caching, SKILL.md, vLLM
Бесплатно!

Курс по искусственному интеллекту и машинному обучению

Авторский курс от Леонида Лукина с последовательным погружением в область Data Science и искусственного интеллекта, объединяет теоретическую базу и решение прикладных задач.

Подробнее о курсе

DeepSeek Harness (dsh) — архитектура, возможности и полное руководство

Исчерпывающий технический разбор DeepSeek Harness (dsh) — модульного open-source рантайма для ИИ-агентов. Рассматриваем концепцию «Everything is a Plugin», режимы выполнения задач, механизм экономии токенов через пакетное исполнение кода и пошаговый запуск в локальном окружении.

Запускаем Claude Code с любыми моделями через связку OmniRoute + claude-provider (cpr)

Пошаговая инструкция по перенаправлению трафика Claude Code на альтернативные LLM. В этом руководстве настраиваем связку локального шлюза OmniRoute и менеджера профилей claude-provider (cpr), чтобы использовать Claude Code с DeepSeek, Gemini, GPT-4o или любыми другими моделями с удобным переключением в один клик.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *