type: feature-spec
status: draft
created: 2026-03-03
tags:
- spec
- phase2


機能仕様書

  • ユーザーストーリー
    • ストーリー1
      • フリーランスライターとして、業務カテゴリを選択してキーワードを入力するだけでSEO最適化された記事本文を生成したい。なぜなら毎記事の執筆に3時間かかっており、受注件数を増やすためにそこを30分以内に短縮したいから。
    • ストーリー2
      • 月額プラン加入者として、今月の使用量(生成リクエスト数・残り枠)をダッシュボードで確認したい。なぜなら上限に近づいているかどうかを把握してプランのアップグレードタイミングを判断したいから。
    • ストーリー3
      • Businessプランユーザーとして、APIキーを使って自社サービスから直接AI生成機能を呼び出したい。なぜなら社内ワークフローにAI生成を組み込んで手作業を自動化したいから。
  • 機能一覧
    • 必須(MVP)
      • 機能1:ユーザー認証(メール+Googleログイン)
        • 対応ストーリー: 全ストーリー(サービス利用の前提)
      • 機能2:AIコンテンツ生成(テンプレート選択→テキスト入力→ストリーミング出力)
        • 対応ストーリー: ストーリー1
      • 機能3:Stripeサブスクリプション管理(Starter/Pro/Business 3プラン)
        • 対応ストーリー: ストーリー2、3
      • 機能4:使用量ダッシュボード(月次リクエスト数・残り枠・プラン名表示)
        • 対応ストーリー: ストーリー2
    • 重要
      • 機能5:プロンプトテンプレート10種(ブログ・SNS・メール・翻訳・コードレビュー等)
        • 対応ストーリー: ストーリー1
      • 機能6:プラン別レート制限(Starter:100回/月・Pro:1000回/月・Business:無制限)
        • 対応ストーリー: ストーリー2
      • 機能7:生成履歴の保存・一覧表示・再利用
        • 対応ストーリー: ストーリー1
    • あれば良い
      • 機能8:APIキー発行・管理(Businessプランのみ)
        • 対応ストーリー: ストーリー3
      • 機能9:チームシート管理(Businessプラン・最大5席・招待メール)
        • 対応ストーリー: ストーリー3
  • 機能詳細
    • 機能2:AIコンテンツ生成
      • 画面
        • テンプレート選択ドロップダウン(10種)+テキストエリア(最大2000文字)+「生成」ボタン+出力エリア(Markdownレンダリング+コピーボタン)
      • 操作
        • 1.テンプレート選択(任意)→ 2.プロンプト入力 → 3.「生成」クリック → 4.Server-Sent Eventsでリアルタイムストリーミング出力 → 5.「コピー」または「履歴に保存」
      • データ
        • DBに保存: user_id・prompt_text・output_text・template_id・tokens_used・created_at / レート制限チェック: Supabase RPC関数で当月リクエスト数を集計し、プラン上限超過時は生成前に429エラーを返す