Skills: ドキュメント生成スキル
最終更新:2026-08-31
良いコードは自己説明的であるべきですが、良いドキュメントは新規参加者の回り道を省きます——Skills がドキュメントを忘れ去られた場所から救い出します。
1. ドキュメントタイプと Skills
(1) ドキュメントタイプマトリクス
| ドキュメントタイプ | 入力元 | 出力フォーマット | Skill ツール |
|---|---|---|---|
| API ドキュメント | ルート/インターフェース定義 | Markdown/HTML | Read, Grep, Write |
| README | プロジェクト設定 | Markdown | Read, Glob, Write |
| チェンジログ | git log | Markdown | Bash, Read, Write |
| コードコメント | ソースコード | インラインコメント | Read, Edit |
| アーキテクチャドキュメント | プロジェクト構造 | Mermaid + Markdown | Glob, Read, Write |
(2) ドキュメントの品質基準
TEXT
📖 参照専用
良いドキュメントの条件:
├── 正確:実際のコードの振る舞いと一致
├── 完全:すべての公開インターフェースをカバー
├── 簡潔:無駄がなく、一文一文に情報価値がある
├── タイムリー:コードの変更と同期して更新
└── アクセシブル:フォーマットが統一され、検索しやすい
2. API ドキュメント生成
(1) コードから API を抽出
MARKDOWN
## API ドキュメント生成フロー
1. Glob でルート/コントローラーファイルを見つける
2. 各インターフェース定義を読み込む
3. 抽出:パス、メソッド、パラメータ、戻り値、例外
4. モジュールごとに整理して出力
(2) ドキュメントテンプレート
MARKDOWN
## POST /api/users
### 説明
新規ユーザーを作成
### リクエストパラメータ
| パラメータ | 型 | 必須 | 説明 |
|:----------|:-----|:---------|:------------|
| name | string | はい | ユーザー名 |
| email | string | はい | メールアドレス |
### レスポンス
| フィールド | 型 | 説明 |
|:------|:-----|:------------|
| id | integer | ユーザー ID |
| name | string | ユーザー名 |
### エラー
| ステータスコード | 説明 |
|:------------|:------------|
| 400 | パラメータ検証失敗 |
| 409 | メールアドレスが既に存在 |
3. README 生成
(1) プロジェクト情報の自動検出
MARKDOWN
## README 情報収集
1. Glob:プロジェクトファイルを検出(package.json/go.mod/pyproject.toml)
2. Read:設定ファイルから技術スタック、依存関係、スクリプトを読み取り
3. Grep:エントリファイル、環境変数、設定項目を検索
4. Bash:git log --oneline -10 で最近の変更を取得
(2) README テンプレート
MARKDOWN
# プロジェクト名
> 一行説明
## クイックスタート
### 前提条件
- Node.js >= 18
- PostgreSQL >= 14
### インストール
```bash
npm install
cp .env.example .env
npm run dev
プロジェクト構成
...
開発ガイド
...
デプロイ
...
---
## 4. チェンジログ生成
### (1) Git から変更を抽出
```bash
# バージョン間の変更を取得
git log v1.1.0..v1.2.0 --oneline
git log v1.1.0..v1.2.0 --format="%s" --no-merges
(2) 分類と整理
MARKDOWN
## v1.2.0 (2026-08-15)
### ✨ 新機能
- ユーザーエクスポート機能を追加 (#42)
- ダークモードをサポート (#45)
### 🐛 バグ修正
- ログインタイムアウト問題を修正 (#38)
- データソートエラーを修正 (#41)
### 💔 破壊的変更
- API /users レスポンスフォーマット変更、name フィールドを username にリネーム
5. ドキュメント Skill の実践
▶ 例:フルプロジェクトドキュメント生成
Alice はワンクリックプロジェクトドキュメント生成 Skill を作成しました:
YAML
---
name: doc-generator
description: "ワンクリックフルプロジェクトドキュメント生成"
triggers:
- keyword: "gen-docs|generate-docs|ドキュメント生成"
tools:
- Read
- Grep
- Glob
- Write
- Bash
---
Bob は言います:「ドキュメントの最大の敵は陳腐化——Skills がコードからリアルタイムに情報を抽出することで、ドキュメントとコードの同期を常に保てる。」
❓ よくある質問
Q 自動生成ドキュメントには人工レビューが必要ですか?
A 絶対に必要です。AI は構造的情報を抽出できますが、ビジネス上の意味や使用シナリオは人間が補足・確認する必要があります。
Q ドキュメントはどこに配置すべきですか?
A API ドキュメントは
docs/api/、README はプロジェクトルート、チェンジログは CHANGELOG.md、アーキテクチャドキュメントは docs/architecture/ に配置してください。Q ドキュメントとコードの同期を保つには?
A CI にドキュメントチェックステップを追加し、コード変更時に Skills が対応ドキュメントを自動更新し、PR レビュー時にドキュメント同期を確認します。
📖 まとめ
- 5つのドキュメントタイプ:API、README、チェンジログ、コードコメント、アーキテクチャ
- API ドキュメント:コードからインターフェース定義を抽出し、テンプレートで出力
- README:プロジェクト情報を自動検出し、標準テンプレートに埋める
- チェンジログ:Git からコミットを抽出し、分類・整理
- コア原則:ドキュメントはコードと同期、AI が構造を抽出+人間が意味を追加
📝 練習問題
- 基礎問題(難易度⭐):プロジェクトの技術スタックを自動検出し、標準テンプレートを出力する README 生成 Skill を作成してください。
- 応用問題(難易度⭐⭐):FastAPI/Express ルートファイルからインターフェース情報を抽出する API ドキュメント Skill を作成してください。
- チャレンジ問題(難易度⭐⭐⭐):README+API ドキュメント+アーキテクチャ図+チェンジログの4点セットを出力するフルプロジェクトドキュメント Skill を作成してください。