OpenSpec は 仕様駆動開発 のためのフレームワークであり、シンプルさとプロセスのオーバーヘッドの低さを売りにしている。掲げている目標は、コーディングを始める前に人間と AI の間で要件についての認識をそろえることであり、公式リポジトリには、スラッシュコマンドを通じて数十種類のコードアシスタントをサポートすることと、構造化された変更管理フローを備えることが記されている。プロンプトからプロセスへ:AI ソフトウェア開発エージェントを支援するフレームワークのプロセス分類法と比較評価 で評価された 6 つのフレームワークの 1 つである。

機能

より重量級のフレームワークが成果物やフェーズを積み重ねていくのに対し、OpenSpec が差別化要因として打ち出しているのはプロセスの摩擦を減らすことである。別々のドキュメントを順に積み上げていくのではなく、意図を単一の仕様と追跡可能な変更提案に集約する。同研究は OpenSpec を GitHub Spec Kit と並べて、同じ土俵で競う 2 つの SDD ツールキットの一方と位置づけている。2 つのうち OpenSpec のほうが軽量で、Spec Kit のほうがフェーズとポータビリティの面でより充実している。

実務者による記録である エージェント型 AI はシンプルに:ソフトウェア開発のための実践的ワークフロー は、実際の使用感を示している。機能を説明する数文のプロンプトから、OpenSpec は著者のために 3 つのファイルを生成した。機能分析(概要、何をなぜ行うのか、スコープ内とスコープ外、成功基準)を記した proposal.md、技術設計を記した design.md、そして順序立てられた段階的な実装計画を記した tasks.md である。著者はこれらを追加のプロンプトで修正することも手作業で編集することもでき、デフォルトのテンプレートで十分だと感じたという。また、アーカイブされたドキュメントはコードの残りの部分と一緒にコミットされると述べている。

採用とエコシステム

6 次元プロセス分類法 のもとでは、OpenSpec は仕様とポータビリティで高いスコアを得る一方、それ以外では低い。評価されたプロファイルは、仕様 2、コンテキスト 1、ロール 0、実行 1、検証 0、ポータビリティ 2 である。ポータビリティのスコアは多くのアシスタントとの互換性を反映したもので、論文はこれを、フレームワークをエージェントの上の薄い層として位置づけるものと解釈している。この評価は研究著者が公式ドキュメントから下した独自の判断であり、独立した実証的測定ではない。また執筆時点で、このフレームワークは独立した学術的評価を受けていなかった。

同研究が挙げるトレードオフはカバー範囲である。OpenSpec を局所的な変更にとって魅力的なものにしている低いオーバーヘッドは、プロジェクトがより精緻なロール、アーキテクチャ、検証を必要とする場合には不十分になりうる。同研究は、ロールと検証を犠牲にして高いポータビリティを得るという同じパターンを OpenSpec と Spec Kit の両方について報告しているが、その表では、この 2 つの次元のそれぞれで Spec Kit が 1 であるのに対し OpenSpec は 0 となっている。この組み合わせこそ、同研究が結果の中で最も示唆に富むパターンと読み取っているもの、すなわちプロセスの深さとポータビリティの対立である。

先の実務者は OpenSpec を大きめの機能にのみ使っていた。その propose スキルから始めて計画を作らせ、それをコーディングエージェントに実装させる形である。小さな変更やバグ修正については、エージェントに直接プロンプトを与えていた。彼の経験では、仕様なしで作った大きめの機能は細かな点を見落とすことが多く、より多くの反復を要したというが、これは測定された比較ではなく一個人の記録である。

なお、同研究が方向づけられた検索の過程で参照した二次的なツール比較の 1 つ(上記の評価の根拠である OpenSpec 自身の製品ドキュメントではない)は OpenSpec のポータルから公開されたものであり、論文はこれを、比較対象のツールの 1 つが書いた製品コンテンツの事例として指摘している。