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

## これは何か DSH Web プラグイン「プロンプトオプティマイザー」(dsh-prompt-optimizer)0.6 本線、現在のバージョンは 0.6.8-beta.2。ユーザーが Enter を押して送信する前にメッセージを傍受し、「このラウンドで何を求めているのか」を整理し、その理解を下流の作業 AI に渡す。設計上の位置づけは「根拠の運び手+不足の補完者」:ユーザーの原文は書き換えず、〔原文〕〔会話コンテキスト〕〔プロジェクトファイル〕のうち今回のリクエストに関連する根拠だけを、下流が一度で正しく実行できるコマンドに補完する。 ## 主な機能 - **各ラウンド独立で目標を生成**:各ラウンド開始時に前ラウンドの項目を全体退場させ(記録は残し削除しない)、今ラウンドの内容は今ラウンドの原文と今ラウンドで読み込んだコンテキストのみから再導出し、ラウンドをまたいだ継承は行わない。 - **逐語的根拠**:事実は今回実際に読んだコンテキストまたはファイルからのみ得られる。目次を列挙しただけでは内容を知っているとはみなさない。出典のない事実的主張は欠陥とみなす。 - **制御インターフェース**:レベル(オフ/軽度/標準/重度)、権限、最適化モデル、コンテキスト(ラウンド 0〜10/全文スイッチ)、読み取り専用ツールスイッチ、さらに `?` ユーザーマニュアル。 - **傍受オーバーレイ**:思考層と出力層に分かれる。思考層は表示範囲を固定し、スクロールバーなし、本文は切り詰めない。下部に常駐操作バー(確認して送信/再生成/巻き戻し/通過/再試行)。 - **実トークン使用量**:プロバイダーが報告する入力/出力/キャッシュの3成分を使用し、1000超は k/M 表記、欠損時は `—` を表示し、推定は行わない。 - **UI言語は DSH に追従**:DSH が中国語設定なら全中国語、英語設定なら全英語、切り替えは即時反映。 ## レベルと権限 レベルは根拠予算に相当する:オフ=完全に傍受しない。軽度=原文+コンテキストのみ使用。標準=必要に応じてプロジェクトファイルを読み取り検証。重度=深く読み込み相互照合し、各変更に出典を付ける。権限は「要レビュー」(出力は編集可能、確認後に送信)と「自動出力」(最適化完了と同時に送信、失敗時も原文のまま送信)に分かれる。コンテキスト読み取り範囲は「ラウンド/全文」のみで決定され、予算超過時は表示を圧縮するだけで範囲は変更せず、何を圧縮したかを明記する。 ## インストールと実行 `dsh plugin --profile <profile> add <tarball またはリポジトリアドレス>` でインストールし、profile の `dsh.profile.bundles` にパッケージ名を登録する。profile patch で entry を挿入することもできるが、両方の方法はどちらか一方のみ。両方使うと `duplicate loader entry id` エラーになる。プラグインはランタイム依存ゼロ、ビルド不要。0.6 系は dsh-0.1.6-alpha.1 向け(0.1.5-rc.1 でも動作可)、0.5 系とは設定を共有せず、同じ profile にインストールすべきではない。 ## プライバシーと境界 最適化リクエストは入力テキストと設定に応じて読み込んだ会話コンテキストを送信する。読み取り専用権限が有効な場合(デフォルトで有効)、標準/重度レベルでは read/glob/grep を使用して今回のセッションの作業ディレクトリ内のプロジェクトファイルを読み取る。ディスクへの書き込みやコマンド実行は行わない。セッション、作業ディレクトリ、下流の形態は一度だけ解析し、解析できなければ推測せず、純粋な要件の再記述にフォールバックする。ミニウィンドウはデフォルトではメッセージを一切送信せず、確認して送信、自動出力、通過の3経路のみが公式送信チェーンに戻る。プラグインはクライアント+ホストのローカルプラグインであり、サードパーティサービスを導入しない。 ## ライセンス BSD-3-Clause、完全オープンソース。使用、改変、Issue 提出、PR を歓迎する。