1. プロジェクト概要
DeepSeek Harness(dsh)は、DeepSeek AIが提供するオープンソースのプラグインベースのエージェントフレームワークです。開発者はこれを用いてAIエージェントの構築、実行、および完全な追跡を行うことができます。モデル呼び出しやツール実行からサンドボックス化されたコード実行に至るまで、システムのあらゆる部分をプラグインとして交換・再構成可能です。
2. 背景とポジショニング
DeepSeek Harnessは、各チームがモデルルーティング、ツール実行、サンドボックス、セッションストレージ、スケジューリングといった同じエージェント基盤をゼロから再構築するのではなく、コミュニティに対して、現実環境でAIエージェントの可能性(および限界)を探求するためのオープンで再利用可能かつ組み合わせ可能なインフラを提供するために作成されました。
その核心的なミッションは、プロジェクト自身の言葉で「すべてがプラグインである」と明言されています。このフレームワークはCordis上に構築されています。Cordisは、作者らが「時空間的組合せ可能性」と呼ぶ概念のために設計されたプラグインランタイムであり、周囲のシステムを再設計することなく、機能(モデル、ツール、スキル、サンドボックス、ストレージ)を追加、削除、またはホットスワップできる能力を備えています。
他の多くのエージェントフレームワークと一線を画すのは、この統一されたプラグインモデルがエンドツーエンドで適用されている点です。モデル、ツール、スキル、セッション、サンドボックス、ストレージ、スケジューリングループ、さらにはWeb UIに至るまで、すべてが同じ基盤上に構築された第一級のプラグインであり、いくつかの拡張ポイントが後付けされた固定コアとは異なります。完全な追跡可能性を実現するアペンドオンリーのセッションログと組み合わせることで、単に回答を生成するだけでなく、その動作を検査、リプレイ、監査できるエージェントを必要とするチームを対象としています。
3. 機能カテゴリ
- 🧩 プラグインシステム — 基盤となるレイヤー。すべての機能(モデル、ツール、スキル、セッション、サンドボックス、ストレージ、ループ、スケジューリング、UI)は独立して交換可能なCordisプラグインとして実装されており、チームはコアをフォークすることなくコンポーネントを自由に組み合わせて使用できます。
- 🤖 モデル&ツールオーケストレーション — プラグイン可能なモデルバックエンドと、ファイル編集、シェルアクセス、Web検索を含むコーディングエージェント向けの完全なツールセットを備え、エージェントが実際のコードベースや環境で動作できるようにします。
- 📝 セッション記録&リプレイ — アペンドオンリーのセッションログがすべてのモデルインタラクションを記録し、デバッグや監査のために過去のエージェント実行の検査、再開、フォーク、リプレイを可能にします。
- 🖥️ 複数のランタイムモード — Standard(完全なコーディングエージェントツールセット)、Code(TypeScriptベースのツールオーケストレーション)、Minimal(軽量ベンチマーク環境)、Creator(ライブランタイム検査によるカスタムプリセット開発)の4つのモードがあり、本番用エージェントから制御されたベンチマークまでのユースケースをカバーします。
- 🌐 Web UI — 追加のツールなしで実行中のエージェントとの対話や観察を行うための、ビルトインのブラウザインターフェース(ローカルで提供され、例:
http://127.0.0.1:3080)です。 - 🔌 コミュニティプラグインエコシステム — GitHubで
dsh-pluginタグが付与された数百のサードパーティ製プラグインがあり、ビジョン/マルチモーダル拡張、サンドボックス、MCP統合、ターミナルUI、ワークフローツールなどに及びます。
4. 主なハイライト
- すべてがプラグイン — モデル、ツール、スキル、セッション、サンドボックス、ストレージ、ループ、スケジューリング、UIはすべて同じ方法で実装・交換されるため、システム拡張のためのメンタルモデルは複数存在せず、一つに統一されています。
- 設計による完全な追跡可能性 — セッション状態はアペンドオンリーであるため、任意のエージェント実行を検査、再開、フォーク、またはリプレイでき、非決定的なエージェント動作のデバッグに不可欠です。
- Cordis上に構築 — 場当たり的な拡張メカニズムではなく、専用のプラグインランタイム(論文『A Programming Paradigm for Spatiotemporal Composability』で文書化)上に構築されており、プラグインシステムに形式的な裏付けを与えています。
- ホスト/クライアント集約アーキテクチャ — コードベースはホストパッケージ(
tsconfig.host.json)とクライアントパッケージ(tsconfig.client.json)を明確に分離しており、両側が同じCordisContextインターフェースを異なるサービスで安全に拡張でき、型の衝突を防ぎます。 - すぐに使える複数のランタイムプリセット — Standard、Code、Minimal、Creatorモードにより、追加設定なしでコーディングエージェント、TypeScriptによるツール使用のオーケストレーション、軽量ベンチマーク、カスタムプリセット作成をカバーします。
- インストール不要のクイックスタート —
npx @deepseek-ai/dsh webを実行するだけで即座にWeb UIが起動し、初回利用のハードルを下げます。
5. 役割別ユースケース
- 一般開発者: Standardランタイムモードを使用して、ファイル編集、シェル、Web検索ツールを備えたコーディングエージェントを立ち上げ、Web UIを通じて日常的な開発タスクを実行します。
- DevOps/SRE: サンドボックス化された実行とアペンドオンリーのセッションログを活用して自動化運用エージェントを実行・監査し、インシデント診断時に過去の実行をリプレイします。
- データ/リサーチサイエンティスト: Minimalモードを制御されたベンチマーク環境として使用し、制限された再現性のあるツールセット下でエージェントやモデルの動作を評価し、分析にセッションリプレイを活用します。
- プロジェクトマネージャー/プラットフォームチーム: Creatorモードを採用してチームのワークフローに合わせたカスタムエージェントプリセットを組み立て・検査し、再利用可能なプラグインとして配布します。
6. はじめに
必要なものを探す — 公式ドキュメント、開発ガイド、およびGitHubでdsh-pluginタグが付与されたコミュニティプラグインを参照してください。
インストール/統合 — 最も迅速な方法はnpmを使用することで、クローンは不要です:
npx @deepseek-ai/dsh web
これにより、http://127.0.0.1:3080でWeb UIが起動します。ソースからビルドする場合は以下を実行します:
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
貢献する — リポジトリ内のCONTRIBUTING.mdとAGENTS.mdを読み、変更を提出する前に関連するチェックを実行してください:
pnpm run typecheck
pnpm run lint
pnpm run check:all
7. プロジェクト構造
deepseek-harness/
├── tsconfig.json # ソリューションルート / tsserver検出エントリー
├── tsconfig.base.json # 共有コンパイラオプションとパス解決
├── tsconfig.host.json # ホスト集約: ホストパッケージ、サンプル、テスト、スクリプト、ウェブサイト
├── tsconfig.client.json # クライアント集約: packages/client/* およびブラウザアプリ
├── api/remotes/ # ホストとクライアントの設定にまたがる唯一のパッケージ
├── docs/ # 開発、アーキテクチャ、およびユーザーガイド
└── AGENTS.md # エージェント向け貢献の規約
パッケージはホストまたはクライアントのいずれか一方の集約にのみ登録され、両方に登録されることはありません。これにより、両方が一緒にコンパイルされる際に、宣言マージされたCordis Contextインターフェースの衝突を防ぎます。
8. 関連エコシステム
- Cordis — DeepSeek Harnessの基盤となるプラグインランタイムフレームワークで、プラグインに対する「時空間的組合せ可能性」モデルを提供します。
- Model Context Protocol (MCP) — 統合レイヤーとしてサポートされており、外部ツール(統計解析やデータ分析ツールなど)をMCPサーバー経由でエージェントに公開できます。
- コミュニティプラグイン — GitHubの
dsh-pluginトピックの下に800以上のリポジトリを持つ成長中のエコシステムで、ビジョン/マルチモーダルプラグイン、サンドボックスプロバイダー、ターミナルUI、Web UIスキンなどが含まれます。
9. ライセンス
- ✅ 寛容なMITライセンスの下、商用目的を含め、コードの使用、修正、配布が可能です。
- ✅ ライセンスおよび著作権表示を保持すれば、DeepSeek Harnessを独自製品に統合できます。
- ❌ 保証は一切提供されません。ソフトウェアは「現状有姿」で提供されます。
- ℹ️ サードパーティの依存関係にはそれぞれのライセンスが適用され、
THIRD_PARTY_NOTICES.mdに別途記載されています。
10. FAQ
Q: DeepSeek Harnessは本番環境での使用に耐えられますか?
A: 現在は開発者プレビュー段階であり、急速に迭代しています。メンテナーは互換性を破壊する変更の可能性を明示的に警告しているため、本番環境で依存する前に慎重に評価してください。
Q: Cordisとは何ですか?なぜプロジェクトはそれに依存しているのですか?
A: Cordisは、DeepSeek Harnessの「すべてがプラグイン」アーキテクチャの基盤となるプラグインランタイムフレームワークです。設計の根拠については、リポジトリで参照されている論文『A Programming Paradigm for Spatiotemporal Composability』をご覧ください。
Q: ソースからビルドせずに試すにはどうすればよいですか?
A: npx @deepseek-ai/dsh webを実行すると、ローカルのhttp://127.0.0.1:3080でWeb UIが起動します。
Q: 独自のプラグインを作成できますか?
A: はい。プラグインは@Remoteまたは@RemoteScopeデコレータを使用してホストサービス上で宣言され、クライアント側ではctx.remote経由で消費されます。詳細は開発ガイドを参照してください。
Q: コミュニティ製のプラグインはどこで見つけられますか?
A: GitHubのdsh-pluginトピックを参照してください。ビジョン、サンドボックス、ターミナルUIなどのサードパーティ製プラグインがリストされています。
11. クイックリンク
- リポジトリ: https://github.com/deepseek-ai/deepseek-harness
- 開発ガイド: https://github.com/deepseek-ai/deepseek-harness/blob/master/docs/development.md
- 貢献ガイド: https://github.com/deepseek-ai/deepseek-harness/blob/master/CONTRIBUTING.md
- コミュニティディスカッション: リポジトリのGitHub Discussions、および専用Discordコミュニティ
12. まとめ
DeepSeek Harnessは、AIエージェント構築のための統一的かつ完全に追跡可能なプラグインアーキテクチャを提供し、チームがスタックを再設計することなくモデル、ツール、サンドボックス、ストレージを交換できるようにします。監査可能でリプレイ可能なエージェント実行を必要とし、安定した長期サポートリリースではなく、活発に開発中の開発者プレビュー版での作業に抵抗のない開発者やチームに最適です。