agile-design-doc
アジャイル開発チーム向けに、MVPを重視し過度な設計を避けた、機能範囲や技術的な課題と解決策を明確にする、簡潔で重要なポイントに絞った設計ドキュメントを作成するSkill。
📜 元の英語説明(参考)
生成面向敏捷开发团队的精炼设计文档。MVP导向,避免过度设计。使用场景:(1) 需要为新功能或系统模块生成设计文档 (2) 需要明确功能边界和交互流程 (3) 需要提供实现思路和关键方法 (4) 需要阐述技术难点和解决方案。该skill会先分析项目技术栈和现有组件,然后生成精炼、重点突出的设计文档。
🇯🇵 日本人クリエイター向け解説
アジャイル開発チーム向けに、MVPを重視し過度な設計を避けた、機能範囲や技術的な課題と解決策を明確にする、簡潔で重要なポイントに絞った設計ドキュメントを作成するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o agile-design-doc.zip https://jpskill.com/download/17259.zip && unzip -o agile-design-doc.zip && rm agile-design-doc.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/17259.zip -OutFile "$d\agile-design-doc.zip"; Expand-Archive "$d\agile-design-doc.zip" -DestinationPath $d -Force; ri "$d\agile-design-doc.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
agile-design-doc.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
agile-design-docフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 2
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
敏捷設計ドキュメント生成
核心原則
1. MVP導向、過度な設計を避ける
- 敏捷開発は迅速なイテレーションを目標とするため、すべての境界条件を考慮する必要はありません
- コア機能に焦点を当て、主要でない機能は後続のイテレーションで対応できます
- 「完全性」のために不要な機能を追加しないでください
2. 既存の技術スタックに基づく
- プロジェクト設定ファイル(pyproject.toml、package.jsonなど)を最初に読み込み、技術スタックを理解する必要があります
- 既存のコンポーネントを再利用し、車輪の再発明を避けます
- 設計案は現在の技術スタックと互換性がある必要があります
3. 設計意図を明確に説明する
- 今回の設計で解決する問題または提供する機能を明確にします
- mermaid シーケンス図を使用してインタラクションフローを示します
- 各機能ポイントに対して、実装アイデアと重要なメソッドを示します
- 複雑なロジックは mermaid を使用してフローを実装します
- サンプルコードを提供して、重要な実装を説明します
4. 洗練されたドキュメント、技術者向け
- 読者は開発者とビジネスを理解しているプロダクト担当者です
- 長々とした背景説明や無駄話を避けます
- 既存のコンポーネントを理解してから、重複した設計を避けます
ワークフロー
第一段階:事前分析
設計ドキュメントを生成する前に、次の分析を完了する必要があります。
1.1 プロジェクトの背景を理解する
ユーザーに質問するか、プロジェクトを分析します:
- プロジェクトの背景は? 現在どのようなシステムで、どのような機能/モジュールを作成しますか?
1.2 技術スタックを識別する
必ず読み込む必要がある設定ファイル:
- Python プロジェクト:pyproject.toml, requirements.txt, setup.py
- Node.js プロジェクト:package.json, yarn.lock, pnpm-lock.yaml
- Java プロジェクト:pom.xml, build.gradle
- Go プロジェクト:go.mod, go.sum
- その他:プロジェクトの種類に応じて識別
分析内容:
- 主要なフレームワークとライブラリ
- データベースとストレージ
- メッセージキューとミドルウェア
- デプロイと運用ツール
1.3 既存のコンポーネントを理解する
次の方法で既存のコンポーネントを理解します:
1. ユーザーに質問する:再利用できる既存のコンポーネントはありますか?
2. プロジェクト構造を読み取る:src/、lib/、components/ などのディレクトリを分析します
3. ドキュメントを確認する:README.md、docs/ など
再利用可能なコンポーネントを記録します:
- 基本サービス クラス
- ユーティリティ関数
- ミドルウェア
- データモデル
第二段階:設計ドキュメントの生成
次の構造に従って設計ドキュメントを生成します。
2.1 設計目標(1〜2段落)
明確に説明します:
- 今回の設計で解決する問題
- 提供する機能
2.2 機能リスト(簡潔なリスト)
今回の設計の機能ポイントを簡潔にリストします:
- 機能1:一言で説明
- 機能2:一言で説明
- 機能3:一言で説明
詳細な説明は展開せず、簡潔さを保ちます
2.3 インタラクションフロー(Mermaid シーケンス図)
主要な機能ごとにシーケンス図を作成します:
```mermaid
sequenceDiagram
participant User
participant API
participant Service
participant DB
User->>API: リクエスト
API->>Service: 呼び出し
Service->>DB: クエリ
DB-->>Service: 戻り値
Service-->>API: 結果
API-->>User: レスポンス
シーケンス図の目的:
- コンポーネント間のインタラクションの順序を示す
- システム境界を明確にする
- 外部依存関係を識別する
2.4 実装案(コア部分)
各機能ポイントについて、次の構造で説明します。
機能ポイント名
実装アイデア(2〜3文)
- 採用する技術的な解決策を説明します
- なぜこの解決策を選択したのか
- 既存のコンポーネントとの統合方法
重要なメソッド(コード例)
# 例:ユーザー認証
def authenticate_user(token: str) -> User:
"""ユーザーtokenを検証し、ユーザー情報を返します"""
# 1. token形式を検証する
# 2. キャッシュまたはデータベースからクエリする
# 3. ユーザー情報を返す
pass
技術的な課題(もしあれば)
- 課題を説明します
- 解決策を説明します
- 参考リンクまたは例を提供します
2.5 データモデル(必要な場合)
新規または変更されたデータモデルのみをリストします:
- User: {id, name, email}
- Order: {id, userId, amount, status}
簡潔なテーブルまたはJSON形式を使用します
2.6 インターフェース定義(必要な場合)
新規または変更されたAPIのみをリストします:
POST /api/users
- リクエスト:{name, email}
- レスポンス:{id, name, email, createdAt}
簡潔さを保ち、すべてのフィールドを展開しないでください
第三段階:品質チェック
ドキュメントを生成した後、次のチェックを行います。
3.1 洗練度チェック
- [ ] 長々とした背景説明はありますか?
- [ ] 重複した内容はありますか?
- [ ] 理解に影響を与えずに削除できる章はありますか?
3.2 重点強調チェック
- [ ] 設計目標は明確ですか?
- [ ] 機能リストは簡潔ですか?
- [ ] シーケンス図はコアインタラクションを示していますか?
- [ ] 実装案は重要なメソッドを提供していますか?
3.3 技術的な正確性チェック
- [ ] 技術スタックはプロジェクトと一致していますか?
- [ ] 既存のコンポーネントを再利用しましたか?
- [ ] コード例は正しいですか?
3.4 MVP導向チェック
- [ ] 不要な機能が含まれていますか?
- [ ] 一部の設計を簡略化できますか?
- [ ] 後続のイテレーションで対応できる内容はありますか?
常见问题处理
Q1: ユーザーが十分な情報を提供していない
優先順位:
1. プロジェクトファイル(pyproject.toml、package.jsonなど)を読み取る
2. プロジェクト構造を分析する
3. ユーザーに具体的な質問をする
4. 一般的なパターンに基づいて合理的な仮定をする(ドキュメントで説明する)
Q2: 特定の機能が必要かどうか不明
原則:
- コア機能の場合は、必ず含める
- 補助機能の場合は、後続のイテレーションで対応できる
- 不明な場合は、ユーザーに質問する
- ドキュメントで「オプション」または「後続のイテレーション」と明記する
Q3: 技術スタックに慣れていない
処理方法:
1. プロジェクト設定ファイルを読み取って技術スタックを理解する
2. 関連するドキュメントとベストプラクティスを検索する
3. プロジェクトの既存のコードの実装方法を参考にする
4. ドキュメントで技術選定の理由を説明する
参考資料
- 設計ドキュメントテンプレート - 標準設計ドキュメントテンプレート
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
敏捷设计文档生成
核心原则
1. MVP导向,避免过度设计
- 敏捷开发以快速迭代为目标,不需要考虑所有边界情况
- 专注于核心功能,次要功能可以后续迭代
- 不要为了"完整性"而添加不必要的功能
2. 基于现有技术栈
- 必须先读取项目配置文件(pyproject.toml、package.json等)了解技术栈
- 复用现有组件,避免重复造轮子
- 设计方案必须与当前技术栈兼容
3. 清晰阐述设计意图
- 明确本次设计解决的问题或提供的功能
- 使用mermaid时序图展示交互流程
- 针对每个功能点给出实现思路和关键方法
- 复杂逻辑使用mermaid实现流程
- 提供示例代码说明关键实现
4. 精炼文档,面向技术人员
- 读者是开发者和了解业务的产品人员
- 避免冗长的背景介绍和废话
- 先了解现有组件,避免重复设计
工作流程
第一步:前置分析
在生成设计文档之前,必须先完成以下分析:
1.1 了解项目背景
询问用户或分析项目:
- 项目背景?现在是什么系统,要做什么功能/模块?
1.2 识别技术栈
必须读取的配置文件:
- Python项目:pyproject.toml, requirements.txt, setup.py
- Node.js项目:package.json, yarn.lock, pnpm-lock.yaml
- Java项目:pom.xml, build.gradle
- Go项目:go.mod, go.sum
- 其他:根据项目类型识别
分析内容:
- 主要框架和库
- 数据库和存储
- 消息队列和中间件
- 部署和运维工具
1.3 了解现有组件
通过以下方式了解现有组件:
1. 询问用户:有哪些现有组件可以复用?
2. 读取项目结构:分析src/、lib/、components/等目录
3. 查看文档:README.md、docs/等
记录可复用的组件:
- 基础服务类
- 工具函数
- 中间件
- 数据模型
第二步:设计文档生成
按照以下结构生成设计文档:
2.1 设计目标(1-2段)
明确说明:
- 本次设计要解决什么问题
- 提供什么功能
2.2 功能列表(简洁列表)
简要列出本次设计的功能点:
- 功能1:一句话描述
- 功能2:一句话描述
- 功能3:一句话描述
不要展开详细说明,保持简洁
2.3 交互流程(Mermaid时序图)
为每个主要功能绘制时序图:
```mermaid
sequenceDiagram
participant User
participant API
participant Service
participant DB
User->>API: 请求
API->>Service: 调用
Service->>DB: 查询
DB-->>Service: 返回
Service-->>API: 结果
API-->>User: 响应
时序图目的:
- 展示组件间的交互顺序
- 明确系统边界
- 识别外部依赖
2.4 实现方案(核心部分)
针对每个功能点,按以下结构描述:
功能点名称
实现思路(2-3句话)
- 说明采用的技术方案
- 为什么选择这个方案
- 与现有组件的集成方式
关键方法(代码示例)
# 示例:用户认证
def authenticate_user(token: str) -> User:
"""验证用户token并返回用户信息"""
# 1. 验证token格式
# 2. 从缓存或数据库查询
# 3. 返回用户信息
pass
技术难点(如有)
- 描述难点
- 说明解决方案
- 提供参考链接或示例
2.5 数据模型(如需要)
仅列出新增或修改的数据模型:
- User: {id, name, email}
- Order: {id, userId, amount, status}
使用简洁的表格或JSON格式
2.6 接口定义(如需要)
仅列出新增或修改的API:
POST /api/users
- 请求:{name, email}
- 响应:{id, name, email, createdAt}
保持简洁,不要展开所有字段
第三步:质量检查
生成文档后,进行以下检查:
3.1 精炼度检查
- [ ] 是否有冗长的背景介绍?
- [ ] 是否有重复的内容?
- [ ] 是否可以删除某些章节而不影响理解?
3.2 重点突出检查
- [ ] 设计目标是否清晰?
- [ ] 功能列表是否简洁?
- [ ] 时序图是否展示了核心交互?
- [ ] 实现方案是否提供了关键方法?
3.3 技术准确性检查
- [ ] 技术栈是否与项目一致?
- [ ] 是否复用了现有组件?
- [ ] 代码示例是否正确?
3.4 MVP导向检查
- [ ] 是否包含了不必要的功能?
- [ ] 是否可以简化某些设计?
- [ ] 是否有可以后续迭代的内容?
常见问题处理
Q1: 用户没有提供足够信息
优先级顺序:
1. 读取项目文件(pyproject.toml、package.json等)
2. 分析项目结构
3. 询问用户具体问题
4. 基于常见模式做合理假设(并在文档中说明)
Q2: 不确定是否需要某个功能
原则:
- 如果是核心功能,必须包含
- 如果是辅助功能,可以后续迭代
- 如果不确定,询问用户
- 在文档中明确标注"可选"或"后续迭代"
Q3: 技术栈不熟悉
处理方式:
1. 读取项目配置文件了解技术栈
2. 搜索相关文档和最佳实践
3. 参考项目现有代码的实现方式
4. 在文档中说明技术选型的理由
参考资源
- 设计文档模板 - 标准设计文档模板
同梱ファイル
※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。
- 📄 SKILL.md (5,703 bytes)
- 📎 references/template.md (1,417 bytes)