DeepSeek Harness Creator で小型プラグインを構築する
DeepSeek-V4 Team · 2026年10月8日 · 18 min read

有益な最初の Harness プラグインは、役割が狭く結果が目に見えるものです。ファイルを編集し、外部サービスを呼び出し、同時に資格情報を管理する拡張機能よりも、固定されたプロジェクトチェックリストを表示するパネルの方が、練習 として優れています。最小構成が動作すれば、さらに変更を加えるための基準ができあがります。
Harness dsh-v0.2.1-alpha.1(2026 年 10 月 3 日リリース)は、準備された下書きで Creator モードを開くプラグインマネージャーエントリーを追加します。このチュートリアルでは、そのワークフローを使用してローカルプラグインを設計および検査します。手順はバージョン固定ドキュメントに従います。この例は動作確認の練習であり、生成されたパッケージがすでに実稼働 Harness テストを通過したという主張ではありません。
検査可能なワークスペースを準備する
バージョンを確認済みの Harness、設定済みのモデルプロバイダー、およびこの練習 用の空のディレクトリを使用します。Harness が初めての場合は、まず ローカルクイックスタート を完了してください。この練習 は、重要なプロジェクトの唯一のコピーとは別に保管してください。
出力は、プラグインソースディレクトリと、そのバージョンの Harness がそれをどのように読み込むかの簡単な説明であるべきです。単独の TypeScript ファイルがプラグインマネージャーを通じてインストール可能であると仮定するのではなく、エージェントにパッケージエントリー、依存関係、およびバンドル設定を特定させてください。
具体的な確認目標を選択します:3 つの固定行を持つ「Project checklist」というタイトルのパネルです。最初のバージョンは、ファイルを自動的に発見したり、状態を保存したりすべきではありません。これらは後ほど合理的な機能ですが、それぞれがレビューおよびテストが必要な動作を追加します。
Creator を開いて下書きを検査する
サイドバーで Plugins を開きます。Add plugin の横にある矢印を使用し、Let the agent create a plugin を選択します。対応するプリセットの UI がこの項目を提供している場合の動作は、プラグインマネージャーリファレンス に記載されています。
この動作は Creator モードを開きます。リクエストを送信するまで生成は開始されません。選択されたワークスペースと、引き継がれたファイル、フォルダー、またはセッション参照を確認してください。古い参照は、エージェントがどのプロジェクトを変更すべきだと考えているかを静かに変更する可能性があります。
計数および検査可能な結果をもたらすリクエストを使用します:
この空のワークスペースにローカルの Harness プラグインを作成してください。インストール済みの Harness バージョンを対象とし、API を選ぶ前に利用可能なドキュメントを確認してください。Project checklist というパネルに、Review inputs、Inspect output、Record result の 3 行だけを固定表示してください。ネットワーク通信、認証情報、自動的なファイル書き込み、バックグラウンドタイマーは使わないでください。編集前に作成予定のファイルを示し、完了後にローカルバンドルの読み込み方法と無効化方法を説明してください。実行できなかった検証も報告してください。
制約条件は 練習 を小さく保ちます。また、予期しない依存関係を発見しやすくもします。静的パネル用のパッケージに、HTTP クライアントやスケジューリングサービスを導入する理由はほとんどありません。
インストール前に生成された構造を読む
公式の 最初のプラグインチュートリアル は、基本的な Cordis モデルを説明しています。プラグインは apply 関数をエクスポートし、それに渡されるコンテキスト内で機能を登録します。したがって、コンテキストは生成されたコードの動作を追跡する際の有用な出発点です。
その導入例は、配布可能な UI バンドルの完全なレシピではありません。生成されたパネルについては、エージェントに実際のエントリーポイントからその登録およびレンダリングコードまでの跡を追うよう依頼してください。無関係なアプリケーションフレームワークチュートリアルを読むことなく、すべてのソースファイルが存在する理由を説明できるはずです。
パッケージマニフェストとインストールスクリプトも検査してください。依存関係が意図した実装に属すること、参照されたファイルが存在すること、およびコマンドが実際のプロジェクトディレクトリを使用することを確認してください。エージェントがビルドに合格したと言う場合、コマンドとその終了結果を保持してください。ビルドのもっともらしい説明は、ビルド出力そのものではありません。
| 検査項目 | 確認すべき証拠 |
|---|---|
| エントリーポイント | マニフェストまたはバンドル設定が実ファイルに解決される |
| パネル登録 | 特定の呼び出しがプラグインを可視 UI に接続する |
| 依存関係 | 追加された各パッケージに説明された目的がある |
| ライフサイクル | プラグインを無効化すると、追加された UI が残らず削除される |
| 検証 | コマンド、結果、および未テストの残存動作が明記される |
ローカルバンドルをインストールし、読み込まれたバージョンを確認する
Plugins → Add plugin に戻ります。マネージャーは、レジストリパッケージや Git ソースだけでなく、絶対ローカルディレクトリも受け入れます。ソースファイルを含むたまたま存在するネストされたフォルダーではなく、生成されたインストール指示がバンドルルートとして識別するディレクトリを使用してください。
インストールプレビューと信頼通知を読み、関連するバンドルまたはプラグイン行をインストールして有効にします。マネージャーは、インストールされたバンドルを Settings に表示される組み込みインベントリと区別します。パネルがない場合は、ソースコードを変更する前に、意図した行が有効になっていることを確認してください。
パッケージ ID と表示されたバージョンをテストノートと共に保持してください。10 月のリリースは、バージョン報告とコードソースの可視性を改善しています。そうしないと、古いインストール済みパッケージが、正しい編集を無効に見せる可能性があります。開発ディレクトリ監視と、インストールされたパッケージバージョンの置き換えは異なるパスです。後者にはまだ再起動が必要です。
有効化と無効化の完全サイクルをテストする
まずプラグインを有効にし、パネルを検査します。行を数え、順序を確認し、テキストがリクエストと一致しているかチェックします。次にプラグインを無効にし、パネルが消えることを確認します。再度有効にし、重複エントリーや残存要素なく、一度だけ表示されることを確認します。
次に、生成されたバンドルの文書化された開発ワークフローを使用して、ソース内の 1 つの行のテキストを変更します。可視パネルが編集を反映しているか確認してください。反映されない場合は、エージェントにコンポーネントの書き換えを依頼する前に、読み込まれたソースパスと再起動要件を確立してください。
最後にアプリケーションを再開し、可視チェックを繰り返します。どのステップが合格し、どのステップに再起動が必要だったかを記録してください。これらの観察結果は、単一の成功したスクリーンショットよりも、プラグインの実際のライフサイクルについて多くを語ります。
適切なレイヤーで障害を診断する
パネルがないということは、いくつかのことを意味する可能性があります。パッケージが解決されなかった、バンドルが有効になっていなかった、登録に失敗した、またはレンダリングに失敗したなどです。それらの段階をその順序で確認してください。導入的な Cordis ドキュメントは、解決の失敗が初期ブート中に 目立たないである可能性があることに特に注意しているため、新しいエントリーが何もしていないように見える場合はパスのスペルを確認してください。
古い例については、削除された不変エクスポートと、メッセージ入力欄の stats 行から activity および usage への変更について注意してください。これらは 0.2.1 リリースノート で説明されているバージョン固有の移行問題です。これらは、互換性チェックを 一律に無効にする理由ではありません。
静的パネルが合格したら、一度に 1 つずつ機能を追加します。選択したローカルファイルを読み取ることは、パスと失敗動作が明確であれば、管理可能な次のステップです。永続化と外部リクエストは、別のイテレーションのために残してください。後々の失敗を実際に動作を確認できた状態と比較できるように、動作する最小バージョンを保持してください。
より広いアップグレードコンテキストについては、Harness 0.2.1 レビュー を参照してください。意図したプラグインがリマインダーをトリガーするためだけに存在する場合は、まず 組み込み自動化ワークフロー を確認してください。ホストがすでに必要なスケジューリング動作を提供している可能性があります。