# DeepSeek Harness

ネイティブの dsh-xmemo npm パッケージを使用して、DeepSeek Harness (dsh) CLI エージェントの実行ループを XMemo に接続します。

- Canonical: https://docs.xmemo.dev/ja/docs/connect/deepseek-harness
- Locale: ja-JP
- Content-Locale: ja-JP
- Canonical-Content-Digest: c6de6cc4c0f626de469ac03a56dc357d0c9af7afcc4dfe19946e5ef345c10181
- Edition-Digest: 5730ae5b9dfb230ce13ab3d47a14e3d2ba7e77720bac6cd42c5019e60b2c7dec
- Source-Revision: sha256:dec9ab1fbe4dd6a2bdb916f3b710fbe7727d084a06a4c81753e6790881a0afee

## 対象読者と境界

このガイドでは、DeepSeek Harness (dsh) CLI エージェントの実行ループを XMemo 永続メモリに接続します。統合は npm 上のネイティブプラグインパッケージ dsh-xmemo（バージョン 0.1.0）を介して動作し、リポジトリ yonro/xmemo-deepseek-plugin @ e7101afb0a (https://github.com/yonro/xmemo-deepseek-plugin/blob/e7101afb0a/README.md) に固定されています。重要な境界：この統合は dsh エージェントハーネス CLI ツール専用です。カスタムプラグインや MCP 拡張機能をサポートしていない DeepSeek コンシューマー向け Web チャット (chat.deepseek.com) への統合ではありません。

## 前提条件

接続する前に、以下のランタイム依存関係とツールが存在することを確認してください：

- DeepSeek Harness (dsh) CLI がインストールされ、動作可能であること。
- Node.js ランタイムバージョン 18.0.0 以上。
- https://xmemo.dev の有効な XMemo アカウント。
- HTTPS 経由での https://xmemo.dev/mcp へのネットワークアクセス。

## インストール

README の 90〜94 行目に記載されているコマンドを使用して、ネイティブの dsh-xmemo プラグインを DeepSeek Harness プロファイルに追加します：

```bash
dsh plugin --profile <name> add dsh-xmemo
```

## 認証と認証情報の構成

環境変数またはハーネスプロファイル構成を使用して認証情報を設定します。公開プロジェクトリポジトリにプレーンな API キーを配置しないでください：

- 環境変数（推奨）：dsh を起動する前に環境に XMEMO_KEY を設定します (export XMEMO_KEY='<your-xmemo-token>')。
- プロファイル構成：対象のプロファイル構成ファイル (~/.dsh/config.json) で認証資格情報を指定します。

## 読み込みと再起動の動作

デーモンの再起動または実行ループの再読み込み手順は、dsh-xmemo プラグインの README (https://github.com/yonro/xmemo-deepseek-plugin/blob/e7101afb0a/README.md) に明示的には記載されていません。DeepSeek Harness CLI のドキュメントを参照するか、設定したプロファイルを使用してタスクを起動してください。

## 接続確認（読み取り専用）

エージェント実行ループを開始する前に、読み取り専用のリコールリクエストで接続を確認します：

- 確認：メモリ状態を変更せずに、dsh を介して読み取り専用の評価クエリを実行します。
- 成功の合図：dsh が、承認されたワークスペースからの有効な Reference および Location フィールドを含む構造化されたメモリ結果を返します。

## 最初の有用なタスク：合成メモリライフサイクル

メモリの永続化、ステートレスなセッション移行、出所が帰属されたリコール、および修正を確認します：

- 1. 合成事実の保存：ハーネスタスクの規則 ("Harness demo build target: ESM with strict typing.") を "projects/demo-dsh/conventions" に保存します。
- 2. ステートレス移行：現在の dsh タスクを終了し、設定済みのプロファイルを使用して新しい実行を開始します。
- 3. 出所帰属付きリコール："harness build target convention" をクエリします。返された Reference と Location を確認します。
- 4. メモリの修正：更新されたビルドターゲットを指定して、update_memory を使用して記憶された規則を更新します。
- 5. オプションのクリーンアップ：オンボーディング検証が完了したら、デモ規則を論理削除 (forget) します。

## 自動キャプチャのスコープと重複防止

DeepSeek Harness 実行ループのメモリ管理：

- ループチェックポイント：dsh-xmemo は、タスク完了の境界でタスクの結果、アーキテクチャ上の決定、およびエラー解決を自動的にキャプチャします。
- 重複防止：重複排除ハッシュにより、繰り返されるループ反復全体で同一の実行コンテキストが再キャプチャされるのを防ぎます。
- スコープ分離：キャプチャされたコンテキストは、認証されたワークスペースとアクティブなリポジトリのスコープに厳格に制限されます。

## 既存プロバイダーとの競合とストレージの所有権

ランタイムの境界とストレージの所有権：

- プロバイダーの競合：冗長または競合するコンテキスト注入を避けるため、dsh-xmemo を使用する場合は dsh.config.json のデフォルトのエフェメラルローカルメモリを無効にします。
- ストレージの所有権：耐久性のあるメモリはユーザーが所有する XMemo クラウドバックエンドに保存されます。dsh はエフェメラルな実行トランスクリプトとローカル実行ログのみを保存します。
- オフラインと再生の制限：一時的な接続切断はローカルにバッファリングされます。長時間のオフラインではバッファが使い果たされると書き込み操作が失敗し、ネットワークが再接続されるまでオフラインコンテキストはエージェント間で共有されません。

## 復旧、更新、および削除

DeepSeek Harness のトラブルシューティング、更新、および削除手順：

- 復旧 (401 invalid_token)：dsh を実行しているシェル環境で XMEMO_KEY がエクスポートされていることを確認します。
- 更新と削除：プラグインの更新および削除手順は dsh-xmemo プラグインの README (https://github.com/yonro/xmemo-deepseek-plugin/blob/e7101afb0a/README.md) に記載されていません。プロファイル管理については DeepSeek Harness CLI ドキュメントを参照するか、https://xmemo.dev/me で認証情報を取り消し、保存されたメモリを消去してください。
- リモート削除：保存されたメモリを消去したりアクセストークンを取り消したりするには、https://xmemo.dev/me でワークスペースを管理します。

