仕様ファーストのワークフロー
コードを書く前に要件を定義する
ようこそ。ここはOpenSpecに関するすべての情報が集まる場所です。
OpenSpecは、あなたとAIコーディングアシスタントがコードを書く前に何を作るべきかを合意するのを支援します。あなたが変更内容を説明すると、AIが短い仕様とタスクリストを起草し、お互い同じ計画を見てから作業が始まります。作業の途中でAIが間違ったものを作っていたことに気づくことはもうありません。
もし他に何も読まないなら、この2つのページだけは読んでください:
/opsx:proposeと入力する場所(ヒント:ターミナルではなくAIチャットです)。これはほぼ全員が一度はつまずくポイントです。2つ目の方が見た目以上に重要です。OpenSpecには2つの部分があります:ターミナルで実行するコマンドラインツールと、AIアシスタントに与えるスラッシュコマンドです。どちらがどちらかを知っていることが、最も一般的な混乱を避けることにつながります。
最初に身につけるべき最高の習慣:何を作るべきかわからないときは、
/opsx:exploreから始めましょう。 これはコードや成果物が存在する前に、あなたのコードを読み、選択肢を検討し、曖昧なアイデアを具体的な計画に磨き上げる、リスクのない思考パートナーです。まずは探索からガイドがその理由を説明しています。
初めての方へ:はじめるから始め、次にコアコンセプト概要をざっと読んでください。わからないことがあったら、FAQと用語集が役に立ちます。
問題はあるが計画がないという方は、これが最も多いケースで、それ専用の答えがあります:まずは探索から。何かにコミットする前に、AIと一緒に考えを巡らせるために/opsx:exploreを使ってください。
大きな既存コードベースがある方は、すべてを文書化する必要はありません。既存プロジェクトでのOpenSpec利用では、海を沸かすことなく(つまり無理をせず)、実際のブラウンフィールドコードで始める方法を示しています。
とにかく動くようにしたい方は、インストールを行い、openspec initを実行してから、コマンドの仕組みを読んで、最初のスラッシュコマンドを正しい場所に入力できるようにしてください。
例から学びたい方は、例とレシピページで、小さな機能追加、バグ修正、リファクタリング、探索など、実際の変更を最初から最後まで説明しています。
AIが計画を起草したら、次は? それを読みましょう。変更のレビューでは、まだコストが低いうちに誤った方向性を捉える2分間の確認方法を示し、良い仕様の書き方では、承認に値する計画の構成要素を説明しています。
チームで作業している方は、チームでのOpenSpecで、変更がブランチやプルリクエストにどのように対応するか、またチームメンバーがコードの前に計画をレビューする方法を確認できます。
以前のワークフローを使っていた方は、移行ガイドで何が変更されたか、その理由、そして既存の作業が安全であることを説明しています。
チームのプロセスに合わせてカスタマイズしたい方は、カスタマイズでプロジェクト設定、カスタムスキーマ、共有コンテキストについて説明しています。
何かが壊れている方は、トラブルシューティングで、実際に人が直面する障害とその修正方法をまとめています。
| ドキュメント | 得られるもの |
|---|---|
| はじめる | インストール、初期化、最初の変更を最後まで実行する |
| まずは探索から | コミットする前にアイデアを検討するために/opsx:exploreを使う |
| コマンドの仕組み | スラッシュコマンドの実行場所、「インタラクティブモード」の意味、ターミナルとチャットの違い |
| コアコンセプト概要 | 1ページにまとまった全体像:仕様、変更、差分、アーカイブ |
| インストール | npm、pnpm、yarn、bun、Nix、および動作確認方法 |
| ドキュメント | 得られるもの |
|---|---|
| ワークフロー | 一般的なパターンと各コマンドを使うべきタイミング |
| 例とレシピ | 実際の変更の完全なウォークスルー、コピペ可能 |
| 良い仕様の書き方 | 優れた要件とシナリオの例、変更の適切なサイズの決め方 |
| 変更のレビュー | コードを書く前に起草された計画を2分間で確認する方法 |
| チームでのOpenSpec | 変更がブランチ、プルリクエスト、レビューにどのように対応するか |
| 既存プロジェクトでのOpenSpec利用 | 大規模なブラウンフィールドコードベースへのOpenSpec導入 |
| 変更の編集と反復 | 成果物の更新、戻る、手動編集の調整 |
| コマンド | すべての/opsx:*スラッシュコマンドのリファレンス |
| CLI | すべてのopenspecターミナルコマンドのリファレンス |
| ドキュメント | 得られるもの |
|---|---|
| コンセプト | 仕様、変更、成果物、スキーマ、アーカイブの詳細な説明 |
| OPSXワークフロー | ワークフローがフェーズ固定ではなく流動的な理由、およびアーキテクチャの詳細解説 |
| 用語集 | すべての用語を1か所にまとめて定義 |
| ドキュメント | 得られるもの |
|---|---|
| カスタマイズ | プロジェクト設定、カスタムスキーマ、共有コンテキスト |
| 多言語対応 | 英語以外の言語で成果物を生成 |
| 対応ツール | OpenSpecが統合する25以上のAIツール、およびファイルの配置場所 |
| ドキュメント | 得られるもの |
|---|---|
| FAQ | よくある質問への簡潔な回答 |
| トラブルシューティング | 具体的な障害に対する具体的な修正方法 |
| 移行ガイド | 従来のワークフローからOPSXへの移行 |
| ドキュメント | 得られるもの |
|---|---|
| ストア:ユーザーガイド | 作業が複数のリポジトリやチームにまたがる場合に、計画を専用のリポジトリに配置 |
| エージェントコントラクト | エージェントが駆動する機械可読なCLIサーフェス |
1. Install npm install -g @fission-ai/openspec@latest
2. Initialize cd your-project && openspec init
3. Explore (in your AI chat) /opsx:explore ← optional, but a great habit
4. Propose (in your AI chat) /opsx:propose add-dark-mode
5. Build (in your AI chat) /opsx:apply
6. Archive (in your AI chat) /opsx:archiveステップ1と2はターミナルで実行します。残りはAIアシスタントのチャットで実行します。この使い分けは覚えておく価値がある唯一のことで、コマンドの仕組みがその理由を正確に説明しています。ステップ3は任意ですが、わからないときに/opsx:exploreから始めることは、身につけるべき最も価値のある習慣です。
openspec feedback "your message" でターミナルから直接フィードバックを送信できます(GitHubのissueが開かれます)。これらのドキュメントで間違い、古い情報、わかりにくい点を見つけましたか?それはバグです。issueまたはPRを開いてください。ドキュメントの改善は、あなたができる最も価値のある貢献の1つです。