ADR-002: スコープと成果物
HyperGenのスコープを、軽量リファレンス実装付きのプロトコル仕様(スコープB)として定義。
ステータス: 承認済み 日付: 2026-03-28
コンテキスト
オープンソースのプロトコルプロジェクトは、3つのスコープ間の根本的な緊張に直面します:
- (A) 仕様のみ — プロトコルを説明するドキュメント。リスク: 「実際に動くのか?」という問いが未解決のまま、低い採用率に。
- (B) 仕様 + 軽量リファレンス実装 — 動作を証明する最小限のコピー可能なコード付き仕様。shadcn/uiモデル: 「そのまま使うか、出発点として使う」。
- (C) 仕様 + プロダクションフレームワーク — 完全なSDK/ライブラリ付き仕様。リスク: 「また別のフレームワーク」になる — HyperGenが反対しているまさにそれ。
決定
HyperGenはスコープ (B): プロトコル仕様 + 軽量リファレンス実装を採用。
出荷するもの
| 成果物 | 説明 | 目的 |
|---|---|---|
| プロトコル仕様 | HyperGenプロトコルの正式定義: メッセージフォーマット、ストリーミングセマンティクス、HTMX属性規約、セキュリティモデル、テーマ統合 | 規範的ドキュメント。実装はこれに適合しなければならない (MUST)。 |
| リファレンスクライアント | HyperGenストリームを受信してレンダリングする最小限のブラウザサイドコード(約200行) | プロトコルの動作を証明。コピーするためのもので、インストールするものではない。 |
| リファレンスサーバーヘルパー | HyperGen準拠のHTMLストリームを生成するための最小限のサーバーサイドユーティリティ | オプションの便利機能。正しいHTMLを出力する任意のHTTPサーバーで動作。 |
| サンプル | 様々なエージェントフレームワーク(Claude、OpenAI、ローカルLLM)でHyperGenを使用する動作例 | エージェント非依存性を実践で実証。 |
| ドキュメントサイト | 仕様、ガイド、ADR、サンプルをカバーする公開ドキュメント | 開発者向けのプライマリエントリポイント。 |
出荷しないもの
- 長期的な依存関係として意図された
npm install hypergenパッケージはない - フレームワーク固有のアダプターパッケージはない(
hypergen-langchainもhypergen-crewaiもない) - 独断的なコンポーネントライブラリはない
- ホステッドインフラストラクチャやSaaSはない
言語固有のクライアントライブラリ
TypeScript、Python、Goなどの言語向けの任意の最小限クライアントライブラリが存在してもよいです (MAY)。これらのライブラリは:
- 一度読めば理解できるほどシンプルでなければならない (MUST)(約200-500行)
- 必須の依存関係ではなく「コピーできるリファレンス実装」として位置づけなければならない (MUST)
- フレームワーク固有の結合を導入してはならない (MUST NOT)
- 開発者はライブラリを使用せずに仕様のみからプロトコルを実装できなければならない (MUST)
結果
- 低い参入障壁。 開発者は仕様を読んで数行のコードを書くだけでHyperGenを採用可能。
- ベンダーロックインなし。 ロックインするものがない — 依存するパッケージも、作成するアカウントもない。
- コミュニティ実装を歓迎。 サードパーティは仕様の上にフル機能のライブラリを自由に構築可能。我々はこれを奨励するが、ゲートキーピングはしない。
- 保守負担が低い。 リファレンス実装は意図的に最小限であり、バグや破壊的変更の影響範囲を削減。