Skip to main content
Glama

Codex-DSH-Orchestrator

License: MIT Node.js 22+ DSH bridge

English | 简体中文

Codex-DSH-Orchestrator は、DeepSeek Harness(DSH)との限定的な連携を可能にする、Codex を中心としたオーケストレーションレイヤーおよび呼び出し元側 MCP ブリッジです。実装、調査、デバッグ、長大なログの処理などを 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 という名称は、互換性と法的明確性のため、ランタイム識別子と上流のパス

リビューションに残っています。公開プロジェクトタイトルではありません。

呼び出し元のサポート状況

呼び出し元

ステータス

セットアップ / 利用可否

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 環境は現行のテスト対象外です。

移植性とインストールの制約

  • 別のマシンでは、新しいクローンを使用してください。単一の worktree ディレクトリをコピーしないでください。その内部の .git ファイルはコピー元クローンの worktree メタデータを指しています。同じマシンで作業する場合は、コピー元クローンから git worktree add を使用して worktree を作成します。

  • クリーンで再現性のあるチェックアウトには npm ci を推奨します。ロックファイルを意図的に更新したい場合にのみ npm install を使用してください。

  • npm run setup は、絶対パスで Node.js の実行ファイルとビルド済みブリッジのエントリポイントを呼び出し元設定に書き込みます。チェックアウトは安定したツールディレクトリに配置してください。移動した場合、Node.js のインストール先を変更、あるいは別の worktree に切り替えた場合は、再ビルドして setup を再実行し、既存のエントリを確認した上で、明示的な承認が得られた場合にのみ --replace を使用してください。

  • Codex の設定と Codex スキルのインストール

は別です。npm run setup は MCP エントリを登録しますが、skill/codex-dsh-orchestrator/ はインストールしません。そのスキルは通常の Codex スキルのワークフローでインストールして有効化し、$codex-dsh-orchestrator コマンドに依存する前に 取得可能であることを確認してください。Claude Code のセットアップでは、プロジェクトのスキルの管理は下記の通りに分けられています。

  • DSH_BRIDGE_HOME は信頼できるローカルファイルシステム上に置いてください。古いブリッジホームを別のマシンにコピーしないでください。新しいマシンでは新しいホームを使用します。DSH の会話履歴は DSH Web Host に属するものであり、ブリッジのタスクマッピング、カーソル、クレームは自動的に手続きされません。

  • Windows の desktop-auto はオプトインです。実行中の DSH Desktop Host と、サポート対象の Windows プロセス/ループバック発見の前提条件が必要です。CI はこれらの動きをモックしているだけであり、実際の Desktop のインストールやログインを検証しているわけではありません。セットアップウィザードは DSH Desktop の開始・停止・ログインを一切行いません。

AI エージェントでインストールする

以下のリポジトリ 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 とその変更されるループバックポートを使用する場合は、自動検出を明示的に選択します。

    npm run setup -- --desktop-auto

    Codex ウィザードは設定をバックアップし approval_mode = "prompt" の MCP エントリをインストールします。skill/codex-dsh-orchestrator/ はインストールしません。そのスキルは通常の Codex スキルのワークフローでインストールして有効化し、検出できることを確認してください。静的セットアップでは常に dsh --version が必要です。--desktop-auto は、CLI が PATH にない場合でも実行中の対象を検証し、不足しているパッケージのバージョンについては互換性警告として報告します。どちらのモードに切り替える場合も、既存のブリッジエントリを確認して --replace を追加する必要があります。Codex を再起動し、/mcp または Codex Settings で dsh_agentlink が接続されていることを確認してください。手動で TOML を設定する場合は、Manual Codex MCP configuration を参照してください。

    Claude Code 2.1.199 以降では、setup コマンドを .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 登録

    • project 信頼

    • Claude スキルの状態

    • Claude 承認サポート

    • DSH のパーミッション/サンドボックスの所有状態

    • DSH Host への到達性

    プロジェクトで Claude Code を開き、保留中のサーバーを /mcp から承認してください。ブリッジは dsh_resolve_approval を人間の操作が必要としてマークします。

    無人でデフォルト処理を行う場合は --yes を追加します。既存の MCP エントリを更新する場合は、事前に確認してから --replace を追加してください。既存の Claude プロジェクトスキルを更新する場合は、事前に確認してから --replace-skill を追加してください。スキルを自分で管理する場合は --no-skill を追加します。どちらのインストーラも、従来の dsh_collab エントリを検s対象とし、明示的な置き換えの承認があった場合にのみ dsh_agentlink に移行します。どちらのインストーラも DSH の起動、DSH のパーミッション/サンドボックス設定の変更、継続中の呼び出し元の再起動は行いません。

doctor は、ブリッジのフェイルクローズ方式のロックの場所を、DSH_BRIDGE_HOME の下に読み取り専用として報告し、それらのロックを削除しません。そのため、ロックが存在していても実行は安全です。

今回のソースパッチは、新しい projection/chunk のフラッドによって coordination ledger が拡張され続けることを防止しますが、既存の 5 MB 超の ledger を圧縮するものではありません。古い bridge home は検査のために残しておき、新しい委任には、別の DSH_BRIDGE_HOME を使ってください。会話のソース・オブ・トゥルースはブリッジ ledger ではなく DSH サーバーの session.history です。保守的な復旧の境界については、Known issues を参照してください。

このブリッジ(ランタイム名 dsh_agentlink)は呼び出し元側のプラグインであり、DSH Cordis バンドルではありません。dsh plugin --profile ... add ... コマンドでインストールしないでください。

Codex-DSH-Orchestrator が選ばれる理由

DSH のフルネームである Harness 機能を活用する

DSH は永続セッション、ツール実行、サブエージェン、人間の監督を組み合わせて複雑な作業に対応します。Codex-DSH-Orchestrator は、主たる呼び出し元(現状では Codex または Claude Code)が、同じワークフローで作業を継続しながら、その第 2 のハーネスと連携し、協調することを可能にします。

もう一つのネイティブサブエージェントではない価値

ネイティブサブエージェントは、呼び出し元自身のもとに留まります。一方で、共有ブリッジは独立した、ユーザー設定のハーネスコントラクを持ち込みます。そのセッションは DSH Web で表示され、DSH 自身のワーカーやモデル配線を使用でき、呼び出し元から監視、継続、キャンセルを行うことができます。

時間とコストの節約

  • 時間が節約できます。 実装、調査、ログ参照などの作業を、DSH に設定した高速なモデル(例: DeepSeek V4 のルート)に委任し、主なエージェントは計画と検証に集中できます。

  • コストが節約できます。 実行量が多い作業を低コストな DeepSeek ルートへ移行することで、より高価なメーンモデルの消費を抑えられます。

実際の速度とコストは、選択したモデル、プロバイダー、配置、ネットワーク環境、ダスクの内容により異なります。インストールが完了すると、通常どおり Codex や Claude Code で作業し、DSH がよい実行経路と判断したときに委任を任せるという一歩を刻むだけです。

利用する

dsh web が動作し、呼び出し元が MCP 設定を読み込み、信頼したら、Codex または Claude Code に自然言語で次のように指示します。例:

Use Codex-DSH-Orchestrator to delegate this implementation to DSH in the current repository. Keep it visible in DSH Web, report progress, and ask me before any approval.

呼び出し元は、タスクの委任、イベントストリームの監視、同じセッションの継続、あなたとのやり取り、作業のキャンセルなどを行えます。設定された DSH Web のオリジンを開き、同じセッションの検査・対話も可能です。Windows では、オプトインの DSH_HOST_MODE=desktop-auto ランタイムが、変動する一時ポートに頼る代わりに、DSH Desktop が所有する検証済みのループバックリスナーを検出できます。明示的な DSH_HOST_URL があれば、それが常に優先されます。

新しい委任の前に、呼び出し元はプロンプ内で、既知の進捗と読み取り専用のワークスペース情報を基に簡潔な handoff を組み立てます。: 目的、完了済み作業、利用可能な場合は Git HEAD/ステータスと変更されたパス、注目すべきコード/Markdown パス、関連テスト、制約、未解決の問題です。対象のパスを優先して読ませ、ブロックされない限りリポジトリ全体のスキャンを避けるよう DSH に伝えます。handoff には secrets、生の大規模 diff、ファイル本文、exー等 pres、呼び出し元のチャット内容、内部推論は含みません。これは呼び出し元へのガイダンスであり、ファイルシステム権限の追加ではありません。dsh-Agentlink が、過去の呼び出し元の会話状態を自動的に受け取ることはありません。既知の BridgeTask に対して呼び出し元は dsh_followup を使用します。一致するタスク id が存在しない場合は、古いタスク ID を推測せずに新しい委譲を開始します。

ユーザーが既存の DSH Desktop session を明示的に特定した場合、呼び出し元はまず dsh_find_sessions を使用して限定的なルートセッションのメタデータを読み取り、その後に dsh_attach_session を使用して、返された正確なセッション id と新しいメタデータを前提に処理します。タイトルは検索の補助であり、アタッチ時に識別子として使用されることはありません。アタッチでは、アイドル状態のルートセッションのみを受け入れ、ブリッジローカルなマッピングとワークスペースの状況を新規に見つけるか従来のものを再利用し、セッションのボディを返却・永続化することなく、監視用途の履歴を調整します。セッションを作成・変名したり、プロンプト送信、モデルルートの変更を行うことはありません。作業を継続する場合、後続の dsh_followup が簡潔な handoff を引き継ぎます。

Codex タスクをまたいだセッション再利用は、same-known-taskattached-existing-tasknew-session のいずれかを選ぶ保守的な判断です。同じ作業へのストリームには、同じ既知の BridgeTask だけを再利用します。明示的な継続証拠がある新しいタスクでは、メタデータのみの dsh_find_sessions で canonical-cwd・マップ済み・アイドル状態のルート候補をちょうど1件見つけ、新しい前提条件を付けてアタッチしてから、dsh_followup で継続します。タイトルや類似性だけで再利用したり、履歴を読んで発見したりすることはやめてください。曖昧な候補、実行中、stale(古い)、missing-cwd、マッピング競合の候補ではフェイルクローズします。再利用は、ハンドオフやリポジトリ読み取りの手間を省くことができますが、入力トークンが増えることがあるため、継続性に意味がある間だけのコスト節約になります。再利用と再スキャン回避は、プロバイダの prompt-cache ヒットやトークン割引の証明ではありません。プロバイダのキャッシュ証拠は、DSH が文書化された集計利用テレメトリを公開しない限り exposing されません。

MCP ツール

  • dsh_host_status — 接続専用の Host 状態と能力

  • dsh_find_sessions — 既存ルートセッションの、メタデータのみに限定した発見。履歴や raw プロジェクションは扱わない

  • dsh_attach_session — 新しい id/title/cwd/update 前提条件を指定し、正確に1つのアイドルなルートセッションへ安全にアタッチする。プロンプトやモデルは変更しない

  • dsh_delegate — ルートセッションを作成し、初期プロンプトをキューに投入する。オプションで inherit|flash|pro|modlens-flash|modlens-pro に加え、対応している reasoningEffort を選択できる。デフォルトではデタッチ(waitSeconds=0)。workspaceMode はブリッジローカルの主張であり、DSH サンドボックスのセレクタではない

  • dsh_followup — 明示的な mode="queue"|"steer"(デフォルトは queue)で同じルートセッションを続行する。プロンプトの前に、同じ semantic モデルプロファイルと検証済みの reasoningEffort を選択できる

  • dsh_continuedsh_followup の互換エイリアス

  • dsh_status — 可用性、実行状態、lineage は、キュー、保留中のインタラクション、最終メッセ、カーソル、ワークスペースクレームのセマンティクス

  • dsh_tail — ブリッジタスクカーソルを使った範囲指定つきイベントダイジェスト

  • dsh_wait — 永続イベント、状態変化、保留中のインタラクション、または終端状態を最大30秒待つ

  • dsh_observedsh_wait の互換エイリアス。ブリッジカーソ群は生のセッション seq カーソルに置き換わる

  • dsh_cancelscope="turn"|"queue"

  • dsh_list — 現在の導出済みステータスを追加したタスクマッピング

  • dsh_answer_question — 保留中の質問 rpcId に対する型付き回答

  • dsh_resolve_approval — 保留中の承認 rpcId に対する型付きの allow_once|reject 応答

  • dsh_release_workspace — DSH セッションを閉じずに、永続的なブリッジのワークスペースクレームを明示的に解放

モデルルーティーングは、委任とフォローアップの両方でオプトインです。後方互換です。modelProfilereasoningEffort を省略すると、その操作は session.models.current を読み取り、routable を検証して、session.selectModel は呼び出しません。意味マッピングは、flash/pro -> deepseek-official/deepseek-v4-{flash,pro} modlens-flash/modlens-pro -> deepseek-modlens/deepseek-v4-{flash,pro} です。要求されたプロバイダ、モデル、値動きは、ライブな作業中の session.models カタログに存在する必要があります。選択は、初期プロンプトまたはフォローアッププロンプトの前に実行・再確認され、不一致があれば、そのプロンプトを送信せず、フェイルクローズとなります。

明示的なユーザー選択は常に勝ちます。その選択がなければ、主呼び出し元は inherit を維持し、通常の検索・実装・テスト修正には Flash を、アーキテクチャまたは難しい多段階デバッグでは Pro を、ビジュアル証拠が必要不可欠な場合は対応する ModLensバリエーションを利用できます。dsh-Agentlink はテキストプロンプトのみを transmit します。DSH Host と ModLens ツールがアクセスできる、絶対パスのローカル画像パスを含めてください。画像のバイト列はアップロードしません。selectionReason は任意の監査説明で使用され、DSH には送信されません。

ローカルで検証済みの DSH rc.6 の collapsed Code Mode パスでは、ビジュアル引き継ぎは外側の run_code トランスポートを使い、そのプログラム内に注入された tools SDK 経由で登録済みの modlens_read_image を呼び出します。呼び出し側は、その外側イベントを想定内として扱い、シェル・ブラウザ・OCR・画像ライブラリへのフォールバックを禁止し、ネストされた結果または明示的なネスト/終端エラーを待つ必要があります。プラグインの文書化された内部タイムアウトは、委任全体の締め切りではありません。これはバージョン固有の互換性ガイドです。今後の Host は、この検証済みのさい現 cache 能力と異なるときは、そちらの能力に従うべきです。

重要な DSH rc.6 の副作用: session.selectModel は、選択内容を後続のセッション向けにも DSH のグローバルデフォルトとして保存します。委任やフォローアップの結果は、選択が起きると modelRouting.persistsAsDshDefault=true と warn を報告します。この永続化が許容できない場合は、ルーティングフィールドを飛ばしてください。書き込み試行後に選択の検証が失敗した場合、プロンプトは送信されませんが、要求した選択は既にグローバルデフォルトになっていることはあります。

dsh_wait は永続的なブリッジ状態を観測します。アシスタントの delta/chunk フレームとトップレベルの session/projection スナップショットはスキップされるため、タスクリビジョンが進まず、待機中プロセスを起動しません。完全な final message は、ターン終了後も status/tail で確認できます。

ロードマップ

これらは計画中の direction であり、実装済み能力やリリース計画のことではありません。

  1. コール元エントリポイントの拡充 — コーラー拡張が再開したら ZCode を最初に評価し、そのあと OpenCode、Workbuddy、Claude Desktop MCP、その他のコーラーを共有 Integration Pack アーキテクチャで検討します。

  2. エージェント起動と情報トランスポート — 質問、承認、エラー、最終応答の信頼性を保持しながら、プロンプト構成、コンテキスト詰め、出力ダイジェスト、圧縮を改善します。

  3. DSH プラグイン対応のセッション — プリセット型プラグインのために現行の agentPreset パスを残し、読み取り専用のプリセット/能力検証と resolved-preset レポートを追加します。プラグイン型の後処理初期化が必要だと証明された場合にのみ、宣言型セッション起動プロファイルを導入します。

  4. 統合拡張 — 共有 Runtime とコーラー互換性契約が安定した後に拡大します。

関連ドキュメント

ライセンス

MIT

アルファ注記:DSH は現在でも開発者向けプレビューであり、このコミュニティプロジェクトは DeepSeek や OpenAI からは独立しています。0.1.0-alpha.1 には共有台帳まわりの並行処理バグがあり、0.1.0-alpha.2 で修正されています。アップグレードまたは複数のブリッジプロセスを並行実行する前に、既知の問題をお読みください。

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