このプロジェクトについて

DSH for Vaultsは、DeepSeek Harness (DSH) のネイティブWeb UIをObsidian内部に埋め込むObsidianデスクトッププラグインです。READMEによると、各保管庫(vault)に完全に独立したDSHインスタンスが割り当てられます。保管庫を開くと、その保管庫をワークスペースとしてDSHが起動し、セッション履歴は保管庫ごとに保持され、混在することはありません。このプラグインはDSHの実装を同梱するのではなく、ランチャーおよび埋め込みクライアントとして機能します。 READMEに記載されている主な機能は以下の通りです: - 埋め込みWebview UI:本物のDSHインターフェースが専用のElectron webviewで動作し、保管庫ごとの永続的なセッションストレージとクッキーセーフなトークン認証を提供します。 - 双方向ブリッジ:選択したテキストを右クリックして、ファイル名と行/列範囲を含むロケーター行をDSHコンポーザーに送信できます。また、DSHチャット内の保管庫ファイルパスをクリックすると、Obsidianで対応するノートが開きます。ファイルが見つからない場合は通知が表示され、保管庫外のパスやバイナリパスについてはDSHの標準的な動作が維持されます。 - ホットキーパススルー:設定の切り替えにより、DSHパネルにフォーカスがある間も設定済みのObsidianショートカットを機能させることができます。 - ターミナル不要のブートストラップ:Node.jsまたはDSHが不足している場合、パネルからプライベートなポータブルランタイム(約30MB、管理者権限不要、システムへの影響なし)をインストールし、その後DSHカーネルを自動的にダウンロードして起動できます。進捗状況はリアルタイムで表示され、npmミラーへのフォールバックも備えています。 - DSHインスタンス間のモデル設定同期:増分モードでは不足しているエントリをコピーし、競合が発生した場合はプロンプトを表示します。上書きモードでは、選択したソースに合わせてプロバイダーと認証情報の参照を整合させ、ファイルを自動的にバックアップします。同期対象にはLLMプロバイダーとAPI認証情報の参照が含まれますが、インスタンスごとのログイン記録、デフォルトモデルルート、検索モデル、プラグインプロファイルは同期されません。 - アップデートポリシー:公式の安定チャネルを追跡し、明示的な確認後にのみインストールします。起動時にオンラインでバージョンを変更することはありません。 - データ移行:古いカーネルからアップグレードする場合、セッションデータを自動的に移行し、事前にバックアップを作成します。バックアップディレクトリは設定可能です。 - 保管庫ごとの分離:データは保管庫外の保管庫専用ローカルディレクトリに保存され、READMEによればOneDrive経由では同期されません。 - 診断機能:設定画面で、プローブ、Node検出、ポート、カーネルおよびUIロードの各段階の起動タイミングを表示し、エラーログの末尾やコピー可能なログを提供します。タイムアウト時には古いプロセスツリーがクリーンアップされます。 要件:Windows上のObsidianデスクトップ v1.4以降。プラグインがポータブルランタイムをインストールするか、絶対パスで既存のインストールを検出できるため、事前のNode.jsインストールは必須ではありません。 インストール:Obsidianコミュニティプラグインで「DSH for Vaults」を検索するか、BRATを使用してリポジトリ「moozhu/dsh-obsidian」からインストールできます。または、main.js、manifest.json、styles.cssを保管庫の .obsidian/plugins/dsh-ob/ フォルダに手動で配置してプラグインを有効にします。 使用方法:クジラアイコンまたはコマンドパレットからパネルを開き、起動を待ってから、保管庫をアクティブなワークスペースとしてチャットを利用します。ステータスバーにインスタンスの状態が表示されます。複数保管庫の動作として、保管庫ごとに決定論的なポートが割り当てられ、異なる保管庫では独立したインスタンスが動作し、同じ保管庫を2つのウィンドウで開いた場合は共有インスタンスとなります。設定により、ウィンドウを閉じた際にインスタンスを停止させることができます。下部のパディングは0から40ピクセルの範囲で調整可能です。 プライバシー:READMEによると、本プラグインはランチャーおよび埋め込みクライアントであり、localhost (127.0.0.1) 経由でのみDSHと通信し、テレメトリやリレーは存在しません。DSH自体は、タスクに応じてモデルAPIなどの外部リクエストを行う場合があります。セッション履歴、モデル設定、API認証情報は、保管庫専用のローカルデータディレクトリに保存されます。 設定項目には、実行ファイルのパス、バージョンアップデート、データバックアップディレクトリ、ベースポート、Obsidian起動時の自動開始、終了時の停止、ホットキーパススルー、リバースブリッジ、モデル設定同期、パネル位置、パネル下部パディング、起動タイミング診断が含まれます。 開発コマンドは、npm install、TypeScriptウォッチ用の npm run dev、npm run typecheck、およびesbuildによる型チェックとバンドルを行う npm run build です。