--- name: lorepedia-spec-tasks description: Notionの仕様ページから実装タスクを作成するスキル。画面仕様や機能仕様を読み取り、実装タスクに分解してタスク管理データベースに登録する。「仕様からタスクを作成」「タスクに分解して」などの指示で使用。 --- # Notion仕様からタスク作成スキル Notionの仕様ページを取得し、実装タスクに分解してタスク管理データベースに登録する。 ## ワークフロー概要 ``` 1. 仕様ページを検索・取得 2. 仕様を分析してタスクに分解 3. タスクをNotionに登録 4. 登録結果を報告 ``` ## Step 1: 仕様ページの検索・取得 ### 検索 ``` notion-search({ query: "画面名 仕様", query_type: "internal" }) ``` ### 内容取得 ``` notion-fetch({ id: "" }) ``` ### 検索キーワード例 | 仕様種別 | 検索キーワード | |---------|--------------| | 画面仕様 | `画面名 仕様`, `画面名` | | 機能仕様 | `機能名 仕様`, `機能名 要件` | | API仕様 | `API名 エンドポイント` | ## Step 2: 仕様のタスク分解 ### 分解の観点 1. **UI/コンポーネント** - ページ構造の作成 - フォームコンポーネント - 表示コンポーネント - UIパーツ(ボタン、リンク等) 2. **ロジック/機能** - データ取得・送信処理 - バリデーション - 状態管理 - エラーハンドリング 3. **認証・認可** - ログイン/ログアウト処理 - OAuth連携 - セッション管理 - リダイレクト処理 4. **その他** - 画面遷移 - ローディング状態 - レスポンシブ対応 ### タスク分解の原則 - 1タスク = 1つの明確な成果物 - 依存関係を考慮した順序付け - 受け入れ条件を明確に定義 - 適切な優先度の設定 ### 優先度の判断基準 | 優先度 | 条件 | |--------|------| | 🔴 High | 他タスクの前提となる / MVP必須 / コア機能 | | 🟡 Medium | 重要だが後回し可能 / オプション機能 | | 🟢 Low | 改善・装飾的 / 最後に実装可能 | ## Step 3: タスク登録 ### データベース情報 - **Data Source ID**: `0b8edd28-00fb-428b-b26c-5b1708f9a161` ### 登録コマンド ``` notion-create-pages({ parent: { type: "data_source_id", data_source_id: "0b8edd28-00fb-428b-b26c-5b1708f9a161" }, pages: [ { properties: { "タスク名": "タスクの名前", "ステータス": "未着手", "優先度": "🔴 High | 🟡 Medium | 🟢 Low", "実行コンテキスト": "新規作成 | 修正・リファクタ | バグ修正 | テスト追加 | ドキュメント", "対象ファイル・パス": "/path/to/file.tsx", "受け入れ条件": "完了判断基準", "期待する出力": "成果物の説明", "依存タスク": "先行タスク名", "関連ドキュメント": "仕様ページのURL" } } ] }) ``` ### プロパティ設定ガイド | プロパティ | 設定内容 | |-----------|---------| | タスク名 | 具体的で分かりやすい名前 | | ステータス | 常に「未着手」で作成 | | 優先度 | 依存関係と重要度から判断 | | 実行コンテキスト | タスクの種類 | | 対象ファイル・パス | 作成/編集するファイル | | 受け入れ条件 | 「○○が動作すること」形式 | | 期待する出力 | コンポーネント、関数等 | | 依存タスク | 先に完了すべきタスク名 | | 関連ドキュメント | 仕様ページのURL | ## Step 4: 結果報告 登録完了後、以下の情報を報告: 1. 作成したタスクの一覧(タスク名、優先度、URL) 2. 依存関係の整理 3. 推奨される着手順序 ### 報告テンプレート ```markdown ## 追加したタスク一覧 | タスク名 | 優先度 | 依存タスク | |---------|--------|-----------| | [タスク名](URL) | 🔴 High | - | | [タスク名](URL) | 🔴 High | 前タスク名 | ... ``` ## 使用例 ### 例1: ログイン画面の仕様からタスク作成 ``` ユーザー: 「ログイン画面の仕様からタスクを作成して」 1. notion-search({ query: "ログイン画面 仕様" }) 2. notion-fetch({ id: "見つかったページID" }) 3. 仕様を分析: - URL: /login - 機能: メール/パスワード、OAuth - バリデーション: メール形式、8文字以上 - エラー: 認証失敗、レート制限等 4. タスク分解: - ログインページ基本構造 - ログインフォームコンポーネント - メール/パスワードログイン機能 - OAuthログイン機能 - エラーハンドリング - リダイレクト処理 - 画面遷移リンク 5. notion-create-pages() で登録 6. 結果報告 ``` ### 例2: API仕様からタスク作成 ``` ユーザー: 「ワールド作成APIの仕様からタスクを作成して」 1. notion-search({ query: "ワールド作成 API" }) 2. notion-fetch({ id: "見つかったページID" }) 3. 仕様を分析 4. タスク分解: - API Route作成 - バリデーションスキーマ - Supabase操作 - エラーハンドリング - テスト作成 5. notion-create-pages() で登録 6. 結果報告 ``` ## 注意事項 - 仕様が見つからない場合は、検索キーワードを変えて再検索 - 1つの仕様に対して多すぎるタスクを作らない(5-10個程度が目安) - 依存関係を正しく設定し、実装順序が分かるようにする - 関連ドキュメントには必ず仕様ページのURLを設定する