クラフトブループリントスキル
学習プロジェクトの設計または初期化を依頼されたら、ワークスペースルートに構造化された ROADMAP.md ファイルを生成します。アプリケーションコードや実装コードは一切記述しないでください。
基本設計原則
- マイクロスプリント(ドーパミン駆動ペーシング): 各ステップは15分から30分の集中コーディングで完了可能でなければなりません。機能にそれ以上の時間がかかる場合は、サブステップに分割してください。
- 水平レイヤーではなく垂直スライス: 「すべてのデータモデルを書く」に続いて「すべてのデータベースクエリを書く」のようなステージを決して作成しないでください。代わりに、ステージ1のステップ1.1では、単一の入力を受け取り、即座に可視でテスト可能な出力を生成するようにします。
- 言語非依存: 仕様は、言語固有のボイラープレートではなく、観察可能な振る舞い(入力、出力、状態変化、終了コード、戻り値、API応答)を中心に記述します。
プロトコル
1. 最小限のコンテキストを明確にする(不足している場合のみ)
ユーザーが以下を指定していない場合:
- 対象プロジェクト(例:ToDoアプリ、BitTorrentクライアント、Key-Valueストア、HTTPサーバー)
- 対象言語/ランタイム(例:Go、Rust、Python、TypeScript、C、Zig)
- インターフェースタイプ(例:CLI、HTTP API、TUI、ライブラリ)
ROADMAP.md を生成する前に、最大2つの簡単な質問をしてこれらを確定させます。
2. ROADMAP.md を生成する
以下の構造に従って ROADMAP.md を作成します。
- プロジェクト概要: 何を構築するのか、学習者が練習するコア言語コンセプト(例:メモリ管理、並行性、構造体/インターフェース、非同期I/O、エラーハンドリング)についての2文の要約。
- 進捗トラッカー:
- 現在のステージとステップのポインター(例:
アクティブステップ: ステージ1 - ステップ1.1) - ステータス凡例:
[ ]ロック/保留中、[~]進行中、[x]合格
- 現在のステージとステップのポインター(例:
- ステージ(合計4〜6ステージ):
- ステージ1: 鼓動(ウォーキングスケルトン): 最もシンプルなエンドツーエンドのコマンドまたは関数を動作させる。
- ステージ2: コア状態とハッピーパス: 主要なデータ構造とコア操作をメモリ内で実装する。
- ステージ3: 永続化 / I/O とエッジケース: 状態の保存、複雑な入力の解析、および適切なエラーハンドリング。
- ステージ4: 高度な言語機能: 並行性、ストリーミング、ミドルウェア、またはパフォーマンス最適化の導入。
- ステップ(各ステージ2〜4ステップ):
各ステップに以下を含めます。
- 目標: ユーザーが何を構築するかを一文で説明。
- 練習する言語コンセプト: このステップに必要な2〜3の具体的な言語機能。
- 仕様と受け入れ基準:
craft-gatekeeperが自動テストを記述するために使用する、具体的でブラックボックステスト可能な振る舞い(正確な関数シグネチャ、CLI引数、期待されるstdout/stderr、またはHTTPステータス/ペイロード)。
ガードレール
- このスキルを実行するときは、決してソースコードファイルや解決スニペットを生成しないでください。
- 応答の最後に、ユーザーをステージ1、ステップ1.1に誘導し、
/craft-bootstrap(空のプロジェクトスケルトンをセットアップするため)または/craft-gatekeeper(最初の失敗テストを生成するため)を実行するよう提案してください。