documentation
Diátaxis フレームワーク(チュートリアル・ハウツーガイド・リファレンス・説明ページ)に基づき、技術ドキュメントの作成・構造化・レビューを行います。ドキュメントの新規作成や再編成、チュートリアルとハウツーガイドの使い分け、APIリファレンスの構築、既存ドキュメント構造の改善が必要な際に活用してください。「documentation structure」「Diátaxis」「organize docs」「technical writing」などのキーワードが目安です。
description の原文を見る
Creates, structures, and reviews technical documentation following the Diátaxis framework (tutorials, how-to guides, reference, and explanation pages). Use when a user needs to write or reorganize docs, structure a tutorial vs. a how-to guide, build reference docs or API documentation, create explanation pages, choose between Diátaxis documentation types, or improve existing documentation structure. Trigger terms include: documentation structure, Diátaxis, tutorials vs how-to guides, organize docs, user guide, reference docs, technical writing.
SKILL.md 本文
使用するタイミング
Diátaxis フレームワークに従う技術ドキュメントの作成、レビュー、改善が必要な場合にこのスキルを使用してください。例えば以下のような場合です:
- ユーザーガイドの作成
- API ドキュメンテーション
- チュートリアルコンテンツ
- 既存ドキュメントの再構成(異なるユーザーニーズと文脈により良く対応するため)
手順
ドキュメントを4つの異なるタイプ(チュートリアル、ハウツーガイド、リファレンス資料、説明)に整理します。それぞれが異なるユーザーニーズと文脈に対応しています。
ドキュメント作成 前に、ユーザーの文脈、対象者、目標について必ず質問をして明確にしてください。
ステップ 1 — ドキュメントタイプを特定する
ユーザーのシグナルに基づいて以下の決定チェックリストを使用してください:
| ユーザーシグナル | ドキュメントタイプ |
|---|---|
| 「X を始めたばかりで学びたい」 / 「一通り説明してほしい」 | チュートリアル |
| 「どうやって...?」 / 「X を達成したい」 | ハウツーガイド |
| 「X のパラメータ/オプション/構文は?」 | リファレンス |
| 「なぜ X はこうなっているのか?」 / 「X を理解したい」 | 説明 |
クイック判断ツリー:
- ユーザーが 初めて実践しながら学んでいる のか? → チュートリアル
- 既に理解している特定の問題を解決する 必要があるのか? → ハウツーガイド
- 技術的な事実を調べる 必要があるのか? → リファレンス
- 概念的な背景を知りたい のか? → 説明
ステップ 2 — タイプ固有のパターンを適用する
チュートリアル(学習志向)
- タイトルパターン: 動詞で始める — 「初めての X を作る」、「Y をゼロから作成する」
- 構成: ゴール → 前提条件 → 段階的なステップ → 各ステップで検証可能な結果 → 最終成果
- 説明は最小限に、実践を最大限に
- すべてのステップで目に見える、テスト可能な結果を生み出す必要がある
- 検証: 初心者が外部の助けなしにチュートリアルを完了できること
例となる導入:
「このチュートリアルでは、Express を使用してシンプルな REST API を構築します。終了時には、GET リクエストに応答する実行中のサーバーが完成します。Express の事前知識は不要です。」
ハウツーガイド(問題志向)
- タイトルパターン: タスクとしてフレーム化 — 「X を設定する方法」、「Y を Z にデプロイする方法」
- 構成: ゴールステートメント → 前提/仮定 → 段階的なステップ → 期待される結果
- 基礎知識があることを前提とし、概念的な説明は省略
- バリエーションを認める、代替案が存在する場合は記載
- 検証: 経験のあるユーザーが混乱や手戻りなくタスクを完了できること
例となる導入:
「このガイドは、既存の Express アプリに JWT 認証を追加する方法を示しています。動作している Express サーバーと基本的なミドルウェアの知識があることを想定しています。」
リファレンス(情報志向)
- タイトルパターン: 対象を命名 — 「設定オプション」、「API エンドポイント」、「CLI フラグ」
- 構成: 各エントリーで一貫した反復可能な形式(名前 → 型 → デフォルト → 説明 → 例)
- 事実を述べ、最小限の使用例以外の指示は避ける
- 最新を保つ、必要に応じてバージョン記載
- 検証: ユーザーが周囲のコンテンツを読まずに30秒以内に特定の事実を調べられること
例となるエントリー:
timeout(整数、デフォルト:5000) レスポンスを待つ最大時間(ミリ秒)。この時間を超えるとリクエストは失敗します。 例:{ timeout: 3000 }
説明(理解志向)
- タイトルパターン: コンセプトとしてフレーム化 — 「X の仕組み」、「Y を理解する」、「Z がこのように設計されている理由」
- 構成: 文脈 → コア概念 → 代替案/トレードオフ → より高いレベルの視点
- ステップバイステップの指示や技術仕様は避ける
- 検証: 読了後、ユーザーが概念を自分の言葉で説明でき、設計上の決定の根拠を理解していること
例となる導入:
「認証と認可はしばしば混同されます。このページではこの区別を説明し、なぜ両方が重要なのか、そして一般的なパターン(セッション、トークン、OAuth)が各懸念事項にどのようにアプローチしているかを説明します。」
ステップ 3 — 分離と統合を維持する
- 各ドキュメントを単一のタイプにしておく — チュートリアルのステップとリファレンステーブルや概念的な脱線を混ぜない
- タイプ間でクロスリンクする:チュートリアルは関連するリファレンスページにリンク可能、ハウツーガイドは背景説明として説明ページにリンク可能
- すべてのタイプで一貫した見出しと用語を使用し、ユーザーがドキュメントシステム全体をナビゲートできるようにする
ステップ 4 — 配信前に検証する
| タイプ | 検証チェック |
|---|---|
| チュートリアル | 初心者が外部の助けなしにエンドツーエンドで完了できるか? |
| ハウツーガイド | 経験のあるユーザーにとって記載されている問題を解決するか? |
| リファレンス | ユーザーが特定の事実を30秒以内に見つけられるか? |
| 説明 | ユーザーが「何か」だけでなく「なぜか」を理解しているか? |
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- mcollina
- リポジトリ
- mcollina/skills
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/mcollina/skills / ライセンス: MIT
関連スキル
doubt-driven-development
重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。
apprun-skills
TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。
desloppify
コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。
debugging-and-error-recovery
テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。
test-driven-development
テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。
incremental-implementation
変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。