dsh_agentlink
Codex-DSH-Orchestrator
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 | ✅ Поддерживается |
|
Claude Code | ✅ Поддерживается |
|
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.Установка вручную
Проверьте окружение. Текущая проверенная цель — DSH CLI
0.1.0-rc.6.node --version dsh --versionЗапустите официальный DSH Web Host в его собственном терминале.
dsh webКлонируйте репозиторий и установите зависимости.
git clone https://github.com/Fly2Kiana/Codex-DSH-Orchestrator.git cd Codex-DSH-Orchestrator npm ciНастройте вызывающее приложение.
Для 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 самого моста, а не селектор песочницы DSHdsh_followup— продолжить тот же корневой сеанс с явнымmode="queue"|"steer"(по умолчаниюqueue); возможно также выбирать те же семантические профили моделей и проверенныйreasoningEffortдо промптаdsh_continue— алиас совместимости дляdsh_followupdsh_status— статус, исполнение, происхождение (lineage), очередь, ожидающие взаимодействия, финальное сообщение, курсоры и семантика подтверждения рабочего пространстваdsh_tail— ограниченные обзоры событий по курсору мостовой задачиdsh_wait— ожидание до 30 секунд долговременного события, изменения состояния, ожидающего взаимодействия или терминального статусаdsh_observe— алиас совместимости вокругdsh_wait; мостовые курсоры заменяют raw-курсоры последовательности сессииdsh_cancel— отмена в интервалеscope="turn"|"queue"dsh_list— сопоставления задач с добавлением текущего производного статусаdsh_answer_question— типизированный ответ для ожидающего вопроса по rpcIddsh_release_approval— типизированный ответallow_once|rejectдля ожидающего подтверждения по rpcIddsh_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 после конца раунда.
Дорожная карта
Это планируемые направления, а не реализованные функции и не публичные обещания по выпуску.
Больше точек входа для вызывающих — при возобновлении расширения набора вызовов первым делом оценить ZCode, затем рассмотреть OpenCode, Workbuddy, Claude Desktop MCP и другие вызовы через общую архитектуру Integration Pack.
Обработка вызова на действие и транспортировка информации — улучшение организации промптов, компоновка контекста, итоговых обзоров и сжатия при сохранении надёжности вопросов, подтверждений, ошибок и финальных ответов.
Сессии DSH с поддержкой плагинов — сохранение текущего маршрута
agentPresetдля preset-плагинов, добавление проверки только на чтение иresolved-presет-отчётов, а также введение декларативного профиля запуска только если плагин докажет потребность в типизированной пост-creation инициализации.Дополнительная интеграция — расширение после стабилизации общего контракта совместимости 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 — актуальные предупреждения об обновлениях и параллельных работах
License
Примечание к альфа-версии: DSH по-прежнему находится разработке+ предварительной разработке , и этот открытый проект независим от DeepSeek и OpenAI. В версии 0.1.0-alpha.1 присутствует ошибка параллелизма в общем журнале ledger; она исправлена в 0.1.0-alpha.2. Перед обновлением и запуском нескольких параллельных bridge-процессов прочитайте Known issues.
Maintenance
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
- AlicenseNot gradedqualityBmaintenanceEnables Codex to delegate tasks to Claude Code, allowing Claude to investigate, edit, and verify changes in the repository with background job management.2MIT
- AlicenseNot gradedqualityCmaintenanceEnables Codex to start the local DeepSeek Harness Web UI, delegate coding tasks into visible sessions, and review workspace changes.3366MIT
- AlicenseNot gradedqualityBmaintenanceEnables dispatching work to DeepSeek Harness agents from Claude Code/Codex, with native progress UI, tier policy, and vision/image generation through MCP tools.0101MIT
- AlicenseAqualityBmaintenanceEnables AI coding agents like Claude Code or Codex to delegate tasks to a DeepSeek Harness subagent with its own context window, providing tools for task delegation, result waiting, continuation, and supervision with sandboxed execution.6MIT
Related MCP Connectors
Adaptive plan/build/review cycles for AI coding assistants, persisted across sessions.
One searchable memory across Claude Code, Gemini, Codex, OpenCode, Antigravity and Cursor sessions.
Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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