Skip to main content
Glama

Codex-DSH-Orchestrator

License: MIT Node.js 22+ DSH bridge

English | 简体中文

Codex-DSH-Orchestrator — это оркестрационный слой с приоритетом Codex и MCP-мост на стороне вызывающего приложения для ограниченного взаимодействия с DeepSeek Harness (DSH). Он позволяет Codex делегировать в DSH задачи по реализации, исследованиям, отладке и работе с длинными логами, а затем наблюдать, продолжать или отменять эти сессии, не выходя из обычного рабочего процесса. Claude Code остаётся поддерживаемым через общий слой интеграции вызывающих приложений; прочие вызывающие приложения намеренно отложены до тех пор, пока их поведение в роли хоста не будет проверено.

Разделяемый исполняемый модуль моста в этом репозитории — независимо сопровождаемый производный вариант вышестоящего проекта dsh-Agentlink. Проект сохраняет вышестоящую лицензию MIT и указание авторства, не аффилирован с DeepSeek, OpenAI или сопровождающими вышестоящего проекта и не одобрен ими.

Границы проекта

Codex-DSH-Orchestrator — это проект оркестрации и MCP-моста на стороне вызывающего приложения. Он подключает поддерживаемые вызывающие приложения к независимо запущенному хосту DSH Web Host; он не запускает этот Host, не владеет им и не выполняет его аутентификацию, а также никогда не одобряет запросы DSH автоматически. Это не бандл DSH Cordis.

Related MCP server: deepseek-harness-mcp

Компоненты проекта

  • skill/codex-dsh-orchestrator/ — специфичный для проекта навык оркестрации Codex и его метаданные агента.

  • skill/codex-dsh/ — общий навык совместимости вызывающего Codex.

  • skill/claude-code-dsh/ — сохранённый навык совместимости вызывающего Claude Code.

  • src/ — общий нейтральный к вызывающему исполняемый модуль MCP-моста и инструменты настройки.

  • test/ — локальные тесты с имитацией хоста, тесты безопасности, совместимости и интеграции.

  • docs/project-overview.md — подробная карта принадлежности и архитектуры.

Имя dsh-Agentlink остаётся в идентификаторах исполняемого модуля и в указании на вышестоящий проект ради совместимости и юридической ясности; оно не является публичным названием проекта.

Поддержка вызывающих

Caller

Status

Установка или доступность

Codex

✅ Поддерживается

npm run setup

Claude Code

✅ Поддерживается

npm run setup:claude -- --project /absolute/path/to/project

ZCode

⏸ Отложено

Первый кандидат, когда возобновится проверенное расширение вызывающих

OpenCode

⏳ Планируется

Пока недоступно

Workbuddy

⏳ Планируется

Пока недоступно

Сегодня путь установки в этом репозитории есть только у вызывающих, отмеченных как Поддерживается. Пункты «Планируется» — это направления, а не обязательства по выпуску.

Установка

Сначала подготовьте окружение: вам понадобятся Node.js 22+, поддерживаемый вызывающий (Codex или Claude Code) и рабочий DSH CLI. Проверенный межплатформенный базовый уровень — x64 Node.js 22 и 24; другие мажорные версии Node.js и окружения ARM64 не покрываются текущей матрицей. Один раз настройте желаемую модель в DSH; общий мост наследует этот рабочий маршрут, если делегат явно не запросит поддерживаемый семантический профиль.

Ограничения переносимости и установки

  • На другой машине используйте свежий клон. Не копируйте одиночный каталог рабочего дерева: его .git файл указывает на метаданные рабочего дерева исходного клона. На той же машине создавайте рабочие деревья из исходного клона командой git worktree add.

  • Для чистого воспроизводимого получения кода предпочитайте npm ci. Используйте npm install только когда намеренно хотите обновить lockfile.

  • npm run setup записывает абсолютный путь к исполняемому файлу Node.js и собранной точке входа моста в конфигурацию вызывающего. Держите копию в стабильном каталоге инструментов; после её перемещения, изменения установки Node.js или переключения на другое рабочее дерево пересоберите проект и запустите setup заново, просмотрите существующую запись и используйте --replace только с явным разрешением.

  • Установка MCP для Codex и установка навыка Codex — раздельные процедуры. npm run setup регистрирует запись MCP, но не устанавливает skill/codex-dsh-orchestrator/. Установите и включите этот навык через обычный рабочий процесс навыков Codex и затем убедитесь, что он обнаруживается, прежде чем полагаться на команду $codex-dsh-orchestrator. Установка Claude Code управляет своим проектным навыком отдельно, как описано ниже.

  • Храните DSH_BRIDGE_HOME на надёжной локальной файловой системе. Не копируйте старый домашний каталог моста на другую машину; используйте там свежий. История сессий DSH принадлежит хосту DSH Web Host, а привязки задач, курсоры и claims на стороне моста автоматически не мигрируют.

  • На Windows desktop-auto подключается по вашему выбору. Он требует уже запущенный DSH Desktop Host и поддерживаемые предпосылки обнаружения процессов/loopback в Windows. CI имитирует такое поведение и не подтверждает реальную установку Desktop или вход в него. Мастер установки никогда не запускает, не останавливает DSH Desktop и не входит в него.

Установка с помощью вашего ИИ-агента

Отправьте следующий URL репозитория и подсказку в Codex или другой агент-кодировщик:

Install Codex-DSH-Orchestrator from https://github.com/Fly2Kiana/Codex-DSH-Orchestrator.
Check Node.js 22+, the DSH CLI, and my DSH Web Host first. Clone it into a location I approve,
run npm ci and npm run check. For Codex, run npm run setup -- --yes, then install and verify
the shipped Codex skill separately through my normal Codex skill workflow. For Claude Code, run
npm run setup:claude -- --yes --project /absolute/path/to/my/project.
For Claude Code, let setup install the project MCP entry and shipped project skill; use --replace and --replace-skill only after reviewing existing files.
If dsh_agentlink or the legacy dsh_collab entry already exists, show me the conflict before using --replace.
Do not start or stop dsh web for me. Tell me when I need to reload the selected caller and approve project MCP trust.

Установка вручную

  1. Проверьте окружение. Текущая проверенная цель — DSH CLI 0.1.0-rc.6.

    node --version
    dsh --version
  2. Запустите официальный DSH Web Host в его собственном терминале.

    dsh web
  3. Клонируйте репозиторий и установите зависимости.

    git clone https://github.com/Fly2Kiana/Codex-DSH-Orchestrator.git
    cd Codex-DSH-Orchestrator
    npm ci
  4. Настройте вызывающее приложение.

    Для Codex:

    npm run setup
    npm run doctor

    На Windows с DSH Desktop и его меняющимся портом loopback явно выберите автоматическое обнаружение:

    npm run setup -- --desktop-auto

    Мастер Codex создаёт резервную копию конфигурации Codex (TOML) и устанавливает запись MCP с approval_mode = "prompt"; он не устанавливает skill/codex-dsh-orchestrator/. Установите и включите этот навык через обычный рабочий процесс навыков Codex, затем убедитесь, что он обнаруживается. Статическая настройка по-прежнему требует dsh --version; режим --desktop-auto может вместо этого проверить уже запущенный Host Desktop, даже когда CLI нет в PATH, и сообщает о недостающей версии пакета как о предупреждении совместимости. Он никогда не запускает и не останавливает DSH D Desktop. Перевод существующей записи моста в любой из режимов требует предварительного просмотра и добавления --replace. Перезапустите Codex, затем через настройки /mcp или Codex Settings убедитесь, что dsh_agentlink подключён. Полностью ручную настройку TOML см. в разделе Manual Codex MCP configuration.

    Для Claude Code 2.1.199 или новее укажите команде настройки проект, который должен совместно использовать .mcp.json:

    npm run setup:claude -- --project /absolute/path/to/your/project
    cd /absolute/path/to/your/project
    claude mcp get dsh_agentlink

    Настройка Claude изменяет только .mcp.json этого проекта и .claude/skills/claude-code-dsh/SKILL.md и сохраняет несвязанные серверы. Она сообщает о каждом из этих пунктов отдельно:

    • регистрация MCP

    • доверие к проекту

    • статус навыка Claude

    • поддержку одобрений в Claude

    • владение разрешениями/песочницей DSH

    • достижимость DSH Host

    Откройте Claude Code в проекте и одобрите ожидающий сервер через /mcp; мост помечает dsh_resolve_approval как требующее участия человека.

    Добавьте --yes для неинтерактивных значений по умолчанию. Чтобы обновить существующую запись MCP, сначала просмотрите её, а затем добавьте --replace; чтобы обновить существующий навык проекта Claude, сначала просмотрите его и добавьте --replace-skill; чтобы управлять навыком самостоятельно, добавьте --no-skill. Оба установщика распознают устаревшую запись dsh_collab и переносят её в dsh_agentlink только после явного одобрения замены. Ни один из установщиков не запускает DSH, не изменяет настройки разрешений/песочницы DSH и не перезапускает вызывающий.

Врач (doctor) сообщает о путях хранения блокировок моста с режимом закрытия при отказе внутри DSH_BRIDGE_HOME в режиме только чтения и никогда не удаляет их, так что его можно безопасно запускать даже при наличии блокировки.

Этот патч не даёт новым потокам проекций/чанков расширять координационный журнал, но не сжимает существующий журнал на 5+ МБ. Сохраните старый домашний каталог моста для инспекции; новые делегирования могут использовать отдельную DSH_BRIDGE_HOME. Источником истины для разговора остаётся session.history DSH, а не журнал моста. Консервативные границы восстановления описаны в разделе Известные проблемы.

Этот мост (исполняемое имя dsh_agentlink) — плагин вызывающего, а не бандл DSH Cordis. Не устанавливайте его с помощью dsh plugin --profile ... add ....

Зачем Codex-DSH-Orchestrator?

Используйте возможности Harness

DSH сочетает постоянные сессии, выполнение инструментов, субагентов и контроль человека для сложной работы. Codex-DSH-Orchestrator позволяет вашему основному вызывающему (сейчас это Codex или Claude Code) обсуждать и координировать работу со второй средой Harness, не покидая прежнего рабочего процесса.

Больше, чем очередной нативный субагент

Нативный субагент остаётся внутри дерева агентов основного вызывающего. Общий мост добавляет отдельную, настраиваемую пользователем среду Harness: её сессии остаются видимы в DSH Web, могут использовать собственные воркеры DSH и маршрут моделей, а основной вызывающий может наблюдать за ними, продолжать или отменять их.

Экономьте время и деньги

  • Экономия времени. Направляйте задачи по реализации, исследованию, извлечению и работе с длинными логами на быструю модель, сконфигурированную в DSH, например на маршрут DeepSeek V4, а ваш основной агент продолжает планировать и проверять.

  • Экономия денег. Перенос задач с высоким потреблением вычислительных ресурсов на более дешёвый маршрут DeepSeek может снизить потребление более дорогих основных моделей.

Реальные скорость и цена зависят от выбранной модели, провайдера, способа развёртывания, сети и задачи. После установки вы можете продолжать работать в Codex или Claude Code как обычно и просто попросить делегировать DSH, когда её среду это будет лучший путь.

Использование

Запустите dsh web и дайте вашему вызывающему загрузить и доверять MCP-конфигурации. Затем попросите Codex или Claude Code обычным языком, например:

Используй Codex-DSH-Orchestrator, чтобы делегировать эту задачу реализации в DSH в текущем репозитории. Держи её видимой в DSH Web, сообщай о прогрессе и спрашивай меня перед любым утверждением.

После этого основной выздам может делегировать задачу, наблюдать за потоком событий, продолжать ту же сессию, задавать вам вопросы или отменять работу. Откройте настроенный origin веб-интерфейса DSH Web, чтобы видеть ту же сессию и работать с ней. На Windows опциональный режим исполнения DSH_HOST_MODE=desktop#desktop может искать проверенный loopback-слушатель DSH Desktop and set авто instead of relying on its changing travel ephemeral port; при явном указании DSH_HOST_URL он всегда приоритет.

Перед новой делегированием вызывающий строит компактную передачу контекста в подсказке, основанную на уже известном прогрессе и read-only свидетельствах рабочего пространства: цель, выполненная работа, ветку Git (HEAD/status) и изменённые пути, когда они доступны, ключевые пути кода/Markdown, соответствующие тесты, ограничения и нерешённые проблемы. Он просит DSH сначала прочитать эти ключевые пути и избегать общедоступных издержек при отсутствии необходимости fully fetch repository. Передача исключает секреты, большие необработанные диффы, содержимое файлов, чат вызывающего и внутренние рассуждения. Это указание вызывающему, а не новое разрешение в файловой системе; dsh-Agentlink не получает предыдущее состояние разговора вызывающего автоматически. Для того же BridgeTask вызывающий использует dsh_followup; если совпадающий токен задачи неизвестен, он начинает свежую делегирование, а не угадывает старое id.

Когда пользователь явно определяет существующую сессию DSH Desktop, вызывающий может сначала использовать dsh_find_sessions для чтения ограниченной метаданные корневых сессий, затем dsh_attach_session с точным полученным session id и свежими предуслоьями метаданных. Заголовки — лишь помощь в поиске, никогда не идентичность присоединения. Присоединение принимает только свободную корневую сессию, создаёт или повторно использует локальную Mapping и состояние самостоятельного резервирования, и может быть history согласовано для supervision, но не возвращает и не сохраняет тела разговора. Оно не создаёт и не переименовывает сессию DSH, не отправляет промпт и не меняет маршрут модели. Последующий dsh_followup передаёт компактный handoff, когда работу следует продолжить.

Повторное использование сеанса в разных задачах Codex — это консервативный выбор из трёх вариантов: same-known-task, attached-existing-task или new-session. Для одного и того же потока работы повторно используйте только тот же известный BridgeTask; для новой задачи с явным подтверждением продолжения найдите через metadata-only dsh_find_sessions ровно один корневой сеанс — с канонической рабочей директорией (canonical-cwd), сопоставленным маппингом и в статусе idle — и подключайтесь к нему, установив свежие предусловия, прежде чем продолжить через dsh_followup. Никогда не выбирайте сеанс по названию или похожести и никогда не читайте историю для discovery; при неоднозначных, работающих, устаревших кандидатах, кандидатах без рабочей директории или с конфликтом маппинга применяется отказ в закрытом режиме (fail closed). Повторное использование может экономить усилия на передаче контекста (handoff) и чтении репозитория, но может увеличить количество входных токенов, поэтому оно является только оптимизацией стоимости, пока сохраняется релевантность непрерывности. Повторное использование и отсутствие повторных сканирований не являются подтверждением попаданий в кэш промптов провайдера или скидок на токены; сведения о кэше провайдера не раскрываются, пока DSH не публикует документированную агрегированную телеметрию использования.

Инструменты MCP

  • dsh_host_status — состояние Host и его capabilities; только в режиме подключения

  • dsh_find_sessions — ограниченное метаdified discovery существующих корневых сеансов; без истории и «сырых» выгрузок

  • dsh_attach_session — безопасное подключение ровно одного простаивающего корневого сеанса со свежими предусловиями по id, названию, cwd и обновлению; без изменения промпта и профиля модели

  • dsh_declare — создать корневой сеанс и поставить стартовый промпт в очередь; опционально выбрать inherit|flash|pro|modlens-flash|modlens-pro и поддерживаемый каталогом reasoningEffort; по умолчанию отсоединённый режим (waitSeconds=0); workspaceMode — только claim самого моста, а не селектор песочницы DSH

  • dsh_followup — продолжить тот же корневой сеанс с явным mode="queue"|"steer" (по умолчанию queue); возможно также выбирать те же семантические профили моделей и проверенный reasoningEffort до промпта

  • dsh_continue — алиас совместимости для dsh_followup

  • dsh_status — статус, исполнение, происхождение (lineage), очередь, ожидающие взаимодействия, финальное сообщение, курсоры и семантика подтверждения рабочего пространства

  • dsh_tail — ограниченные обзоры событий по курсору мостовой задачи

  • dsh_wait — ожидание до 30 секунд долговременного события, изменения состояния, ожидающего взаимодействия или терминального статуса

  • dsh_observe — алиас совместимости вокруг dsh_wait; мостовые курсоры заменяют raw-курсоры последовательности сессии

  • dsh_cancel — отмена в интервале scope="turn"|"queue"

  • dsh_list — сопоставления задач с добавлением текущего производного статуса

  • dsh_answer_question — типизированный ответ для ожидающего вопроса по rpcId

  • dsh_release_approval — типизированный ответ allow_once|reject для ожидающего подтверждения по rpcId

  • dsh_release_workspace — явно освобождает persistent-claim рабочего пространства моста без закрытия сеанса DSH

Маршрутизация моделей — это opt-in и обратно совместимый процесс для делегирования и продолжения. Если modelProfile и reasoningEffort опущены, операция читает session.models.current, проверяет routable и не вызывает session.selectModel. Семантические соответствия такие: flash/pro -> deepseek-official/deepseek-v4-{flash,pro} и modlens-flash/modlens-pro -> deepseek-modlens/deepseek-v4-{flash,pro}. Запрашиваемые провайдер, модель и reasoningEffort должны существовать в актуальном каталоге session.models. Перед начальным или повторным промптом выбор выполняется и перечитывается; любое несовпадение завершается ошибкой режима fail-closed без отправки промпта.

Явный выбор пользователя всегда имеет приоритет. При отсутствии такого, основной caller может спокойно работать с inherit, использовать Flash для типовых задач поиска, реализации и починки тестов, Pro — для архитектурных или сложных многоэтапных отладок, а нужный Prof-Profile ModLens — когда важны визуальные подтверждения. dsh-Agentlink передаёт только текстовые промпты: включайте абсолютные пути к изображениям, к которым DSH Host и инструменты ModLens имеют доступ; он не выполняет загрузку байтов изображений. selectionReason даёт опциональное пояснение для аудита и не передаётся в DSH.

На подтверждённом локально пути DSH session.selectModel с горизонтальной совместимостью — в лог. Важный побочный эффект DSH rc.6: session.selectModel также сохраняет выбранное значение как глобальный дефолт DSH для последующих сеансов. Результаты delegate и follow-up указывают modelRouting.persistsAsDshDefault=true и предупреждение при явном выборе. Если такое сохранение недопустимо, просто опустите поля маршрутизации. Если после попытки записи проверка выбора не прошла, промпт не отправляется, но запрошенное значение уже может стать глобальным дефолтом.

dsh_wait наблюдает за устойчивым состоянием моста. Ассистентные delta-кадры/чанки и тоp-level session/projection снимки при этом пропускаются, поэтому не увеличивают ревизию задачи и не будят ожидающих; результаты итоговых сообщений остаются видимыми через status/tail после конца раунда.

Дорожная карта

Это планируемые направления, а не реализованные функции и не публичные обещания по выпуску.

  1. Больше точек входа для вызывающих — при возобновлении расширения набора вызовов первым делом оценить ZCode, затем рассмотреть OpenCode, Workbuddy, Claude Desktop MCP и другие вызовы через общую архитектуру Integration Pack.

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

  3. Сессии DSH с поддержкой плагинов — сохранение текущего маршрута agentPreset для preset-плагинов, добавление проверки только на чтение и resolved-presет-отчётов, а также введение декларативного профиля запуска только если плагин докажет потребность в типизированной пост-creation инициализации.

  4. Дополнительная интеграция — расширение после стабилизации общего контракта совместимости Runtime и caller.

Подробная документация

  • Project overview — публичная идентичность проекта, часть состава компонентов и архитектуры с приоритетом Codex

  • Architecture and safety model — идентичность, состояние, восстановление, подтверждения, отмена и координация рабочего пространства

  • Multi-caller extension architecture — общие границы для Runtime и Integration Pack для Codex, Claude Code и будущих клиентов

  • Deferred roadmap — сознательно отложенная работа, триггеры активации и сохранённые связанные зоны безопасности

  • Validation guide — проверки совместимости и приёмки оператором

  • Known issues — актуальные предупреждения об обновлениях и параллельных работах

  • Contributing и security

License

MIT

Примечание к альфа-версии: DSH по-прежнему находится разработке+ предварительной разработке , и этот открытый проект независим от DeepSeek и OpenAI. В версии 0.1.0-alpha.1 присутствует ошибка параллелизма в общем журнале ledger; она исправлена в 0.1.0-alpha.2. Перед обновлением и запуском нескольких параллельных bridge-процессов прочитайте Known issues.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Fly2Kiana/Codex-DSH-Orchestrator'

If you have feedback or need assistance with the MCP directory API, please join our Discord server