본문으로 건너뛰기
cccskills
무료GitHub에 공개

create-spec

ユーザーと対話しながら機能仕様を策定し、Notion に自動でドキュメント化するスキル。「仕様を作ろう」「スペックを書いて」「仕様を詰めよう」などの指示で呼び出される。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구Notion
설치 방법 보기

포함된 파일(1)

  • SKILL.md6.6 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

create-spec: 機能仕様策定 & Notion ドキュメント化スキル

引数として渡された機能名・概要をもとに、ユーザーへのインタビューを通じて仕様を深堀りし、最終的に Notion にドキュメントとして保存する。

フェーズ概要

  1. 準備: CLAUDE.md を読み込み、プロジェクトパターンを把握する
  2. インタビュー: AskUserQuestion ツールで仕様を詰める (dig:dig スタイル)
  3. 一貫性・セキュリティ検証: ユーザーの指示に疑いを持ち、矛盾・セキュリティリスクを指摘する
  4. Notion 書き出し: 完成した仕様を Notion ページとして保存する

フェーズ 1: 準備

  • CLAUDE.md を読み込み、既存のアーキテクチャパターン・技術スタックを把握する
  • 引数 (ARGUMENTS) から機能名と概要を取得する
    • 引数がない場合は、最初の質問で「何の仕様を作りますか?」から始める

フェーズ 2: インタビュー (dig:dig スタイル)

AskUserQuestion ツールを使ってインタビューを繰り返す。必ず AskUserQuestion ツールを使うこと。会話文での質問は禁止。

ルール

  • 質問数: 1 ラウンドにつき 2〜4 問 (曖昧さの度合いに応じて調整)
  • 選択肢: 各質問に 2〜4 個の具体的な選択肢
  • 各選択肢: 簡潔な Pros/Cons を含む
  • オープンエンド禁止: 自由記述ではなく選択式。"Other" は自動追加されるので書かない
  • CLAUDE.md のパターンに合わせる: 既存の技術スタック・アーキテクチャパターンを選択肢に反映する
  • 不明な点・曖昧な点が解消されるまでインタビューを繰り返す

各ラウンド後の出力フォーマット

## Decisions

| 項目 | 選択 | 理由 | 備考 |
|------|------|------|------|
| ... | ... | ... | ... |

その後、未決事項・曖昧な点があれば次のラウンドへ進む。

インタビューで必ず確認すること

  • 機能の目的・背景: なぜこの機能が必要か
  • ユーザー体験: どんな操作フローか
  • 技術的な実現方法: 既存パターン (v2 リポジトリ / BetterAuth / Drizzle など) との統合方法
  • エラーハンドリング: 失敗時の挙動
  • セキュリティ境界: 認証・認可が必要か

フェーズ 3: 一貫性・セキュリティ検証

インタビュー結果をまとめる前に、以下の観点で必ず検証する。ユーザーが指示した内容であっても疑いを持ち、問題があれば AskUserQuestion で確認を取ること。

整合性チェック

  • 既存の v2 リポジトリ層 (native fetch + Zod) / BetterAuth / Drizzle スキーマとの整合性はあるか?
  • 既存の API・型定義との矛盾はないか?
  • Feature Flag 戦略と整合しているか?
  • neverthrow の Result 型パターンで統一されているか?

セキュリティチェック

  • 認証・認可は適切か? (BetterAuth セッション / WORKER_SECRET など)
  • ユーザーが他ユーザーのデータにアクセスできる設計になっていないか?
  • 外部入力 (accId, playlistId 等) を信頼していないか? — リクエストで受け取った値は DB で所有確認すること
  • OWASP Top 10 (XSS・CSRF・SQL インジェクション・認可不備など) のリスクはないか?
  • サービス間通信に適切な認証 (WORKER_SECRET 等) があるか?

問題が見つかればユーザーに提示し、仕様を修正してから次フェーズへ進む。


フェーズ 4: Notion ページ作成

作成前に Notion Markdown 仕様を取得すること

ReadMcpResourceTool("notion://docs/enhanced-markdown-spec")

Notion 固定設定

設定値
データソース ID2fd066ac-825e-8057-b618-000b4c1f69a4
カテゴリPlaylistWizard
アイコン/icons/document_purple.svg

ページテンプレート (汎用)

以下のセクションを使用する。内容が不要なセクションは省略する。 mermaid 図・テーブル・コードブロックを積極的に活用して PlaylistActionJobQueue と同等の品質にすること。

# 概要
{機能の一文説明}

**背景と目的**
- 現状: {現在の課題・状況}
- 目的: {この機能で達成したいこと}

**技術スタック** (必要な場合)
| レイヤー | 技術 | 役割 |
|----------|------|------|
| ... | ... | ... |

---
# アーキテクチャ (必要な場合)
## 構成図
{mermaid flowchart など}

## シーケンス図 (必要な場合)
{mermaid sequenceDiagram}

---
# セキュリティ・認可 (必要な場合)
{認証・認可フロー。外部入力の検証ポイントも含む}

---
# 仕様
{機能の詳細仕様。型定義・バリデーションルールなど}

---
# API 仕様 (必要な場合)
{エンドポイント定義・リクエスト/レスポンス・エラーコード}

---
# DB スキーマ (必要な場合)
{Drizzle スキーマ定義}

---
# ファイル構成 (必要な場合)
{追加・変更するファイル一覧}

Notion ページ作成

mcp__notion__notion-create-pages({
  parent: { type: "data_source_id", data_source_id: "2fd066ac-825e-8057-b618-000b4c1f69a4" },
  pages: [{
    properties: {
      "名前": "<機能名>",
      "カテゴリ": "PlaylistWizard"
    },
    icon: "/icons/document_purple.svg",
    content: "<Notion Markdown 形式の仕様>"
  }]
})

作成完了後、Notion ページの URL をユーザーに表示して完了を伝える。


Important Notes

  • 必ず AskUserQuestion ツールを使うこと — 会話文での質問は禁止
  • ユーザーの指示でも整合性・セキュリティを疑うこと
  • インタビューは不明点がすべて解消されるまで繰り返す
  • Notion ページは PlaylistActionJobQueue と同等の品質 (mermaid 図・テーブル・コードブロック活用) を目指す
  • セクションは汎用テンプレートから必要なものだけ使う (不要セクションは省略)

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

app 側のページ実装を `@playlistwizard/ui` へページ単位で移行するための方針。`@/components/ui/*` import の置換、共通コンポーネント化、既存表示差分の抑制、packages/ui 側の variant 設計を伴う作業で参照すること。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

suzuki3jp/PlaylistWizard152026년 10월 19일 업데이트

Skill for integrating Better Auth - the comprehensive TypeScript authentication framework.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

suzuki3jp/PlaylistWizard152026년 10월 19일 업데이트

Skill for creating auth layers in TypeScript/JavaScript apps using Better Auth.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

suzuki3jp/PlaylistWizard152026년 10월 19일 업데이트

git

무료

git に関する全ての操作やこのプロジェクトのgitに関する情報が欲しい時に呼び出されるスキル(branch, commit, push, pull, merge ...)

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

suzuki3jp/PlaylistWizard152026년 10월 19일 업데이트

github

무료

GitHub に関する全ての操作やこのプロジェクトの GitHub に関する情報が欲しい時に呼び出されるスキル(PR, Issue)

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

suzuki3jp/PlaylistWizard152026년 10월 19일 업데이트

Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise. Use when user wants to stress-test a plan against their project's language and documented decisions.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

suzuki3jp/PlaylistWizard152026년 10월 19일 업데이트

suzuki3jp의 스킬 모두 보기

이 스킬의 문제 신고