まず読み込み

DeepSeek Harness:1017を動かすエージェントハーネス

ハーネスはモデルを変える道具ではなく、モデルにツールとセッションを結びつける実行環境です。

DeepSeek Harness(dsh)はDeepSeek AIがMITライセンスで公開したエージェントハーネスです。モデルそのものではなく、ファイルアクセス、シェル実行、検索、プラグインをまとめてモデルが作業を続けられるようにするプログラムです。npx @deepseek-ai/dsh webでローカルのWeb UIを起動し、設定でDeepSeekキーやカスタムAPI1を接続します。開発者プレビューなので、使う版は固定するのが安全です。

実行条件と要点
  • dshはモデルではなく、ツール・セッション・プラグインをまとめるハーネスで、MITライセンスで公開されています。
  • npx @deepseek-ai/dsh webで127.0.0.1:3080に起動し、モデルはSettings → Modelsで接続します。
  • 1017対応とSearch・Fetchツールは0.2.1-rc以降に入り、プレビューのため互換性変更が予告されています。

ハーネスとモデルの役割は違います

DeepSeek Harness(dsh)はDeepSeek AIがMITライセンスで公開したエージェントハーネスです。モデルそのものではなく、会話セッション、ファイルアクセス、シェル実行、検索、プラグインをまとめ、モデルが実際の作業を続けられるようにするプログラムです。すべてがプラグインという構造なので、必要な機能だけを有効にできます。

開発者プレビュー段階で、互換性を壊す変更が予告されています。業務で使うなら版を固定し、更新前にリリースノートを確認するのが安全です。

ノートPCの前に座る人の周りに書類、フォルダー、表、設定画面が浮かび、右側に小さなロボットが立つ図
ハーネスはモデルの周りのツールとセッションをまとめ、実際の作業を進めます。

インストールと初回起動はコマンド一行です

Node.js 22.19以上または24以上が必要です。npx @deepseek-ai/dsh webを実行すると既定のアドレスhttp://127.0.0.1:3080でWeb UIが起動し、ローカル起動ならブラウザーも開きます。サーバーだけを起動するには--no-openを付けます。

ソースから実行するにはリポジトリを取得し、pnpm install、pnpm run build、pnpm dsh webの順に進めます。初回起動後は設定と認証情報が$DSH_HOMEの下に保存されるため、バックアップ2と削除の範囲はそのフォルダーを基準に決めます。

Web UIの起動
npx @deepseek-ai/dsh web
既定のアドレスはhttp://127.0.0.1:3080です。外部に公開せずローカルで使ってください。

モデルは設定画面で接続します

Web UIのSettings → ModelsでDeepSeekカードにAPIキーを入れるとdeepseek-flashを使えます。キーは再表示できず、$DSH_HOME/.credentials.yamlに保存され、設定には参照だけが残ります。

他の提供元や社内ゲートウェイ3はAdd model providerのCustom model APIで追加します。プロバイダーID、Base URL、APIプロトコル(OpenAI Chat Completions、OpenAI Responses、Anthropic Messagesのいずれか)、モデルIDを入れ、必要ならFetch available modelsで一覧を取得します。プロバイダーIDは後から変更できないため、最初に正確に決めてください。

ローカルサーバーを繋ぐときは三つの値を合わせます

vLLMやllama.cppのサーバーのようにOpenAI互換APIを提供するローカルサーバーもCustom model APIで接続できます。その際はBase URL、モデルID、コンテキスト長、最大出力トークン4をサーバー設定と同じにします。ハーネスが長い会話を圧縮したりツール結果を入れたりするときに実際の上限を超えると、リクエストは失敗します。

ローカルモデルのツール呼び出し5の信頼性はモデルとランタイム6によって変わります。小さいモデルはツールスキーマを破ったり同じ呼び出しを繰り返したりするため、ファイル読み取りとシェル実行の権限を絞り、短い作業から試してください。1017をローカルで繋ぐにはvLLMのようなサーバー経路が必要で、llama.cpp本体はまだこの構造を読めません。

小さなロボットがサーバーの箱の上に立ち、ケーブルがブラウザー画面、チャット画面、カレンダー、フォルダーの箱へ伸びる図
モデルとツールは設定で接続し、ローカルサーバーも同じ方法で繋げます。

1017と検索ツールは0.2.1-rcから付きます

DeepSeekは1017をdsh 0.2.1-rc.1以上に合わせて最適化したと案内しています。0.2.1-rc.2にはSearch・Fetch APIをウェブ検索設定で有効にする機能も入りました。この検索ツールは2026年11月1日まで無料で、その後は成功したリクエストごとに課金されます。

モデルを変えるときは、セッションに記録されたモデルがそのまま維持される点にも注意してください。すでにリクエストを送ったセッションは新しい既定モデルへ自動で切り替わらないため、新しいセッションを開いて比較します。

更新前に確認すること

プレビュー版では設定ファイルの構造やプラグインAPIが変わる可能性があります。$DSH_HOME/profiles/web/cordis.patch.ymlをバックアップし、使っているプラグインとモデル設定を記録してから更新してください。自動更新よりタグを固定するほうが再現に有利です。

シェルとファイルの権限は既定値のままにせず、作業フォルダーと許可コマンドを絞ってください。ハーネスは利便性のために権限を広く取ることがあるため、重要なリポジトリではサンドボックス7と承認手順を先に確認します。

夕暮れの窓辺の机で人がモニターを見ており、画面にチェックリストと文書変換の画面が表示されている図
長い作業はチェックリストに残し、権限と結果は人が確認します。

用語の注釈

  1. API — 別のコードからプログラムの機能を呼び出すための決められたインターフェースです。

    本文に戻る
  2. バックアップ — 設定とデータをファイルとして保存しておくことです。機器が故障しても同じ設定に戻せます。

    本文に戻る
  3. ゲートウェイ — 複数のクライアント、チャネル、モデル、ツールの間でリクエストを受け、適切な経路へつなぐ関門役のプログラムです。

    本文に戻る
  4. トークン — モデルが入力や出力を分けて処理する単位です。

    本文に戻る
  5. ツール呼び出し — ファイル読み取り、検索、コマンド実行などの外部機能を、名前と引数でモデルが要求する形式です。実行の有無はエージェントランタイムと権限設定が決めます。

    本文に戻る
  6. ランタイム — プログラムの実行時に必要な機能を提供するソフトウェア環境です。ローカルAIではモデル実行エンジンを指すこともあります。

    本文に戻る
  7. サンドボックス — プログラムがファイル、ネットワーク、ホスト機能にアクセスできる範囲を制限する隔離環境です。保護範囲はマウント、ネットワーク、実行権限の設定で変わります。

    本文に戻る

よくある質問

この記事で最初に確認すべきことは何ですか?
DeepSeek Harness(`dsh`)はDeepSeek AIがMITライセンスで公開したエージェントハーネスです。モデルそのものではなく、ファイルアクセス、シェル実行、検索、プラグインをまとめてモデルが作業を続けられるようにするプログラムです。`npx @deepseek-ai/dsh web`でローカルのWeb UIを起動し、設定でDeepSeekキーやカスタムAPIを接続します。開発者プレビューなので、使う版は固定するのが安全です。