mcpField
L
ln-113-backend-docs-creator

ln-113-backend-docs-creator

github.com/levnikolaevich開発584384 回インストール2 日前に更新
リポジトリ

ln-113-backend-docs-creator について

プロジェクトドキュメント調整スキルから渡された情報をもとに、バックエンド文書を作成するワーカースキルです。条件に応じて OpenAPI 3.0 の API 仕様書や Mermaid の ER 図を含むデータベース文書を生成し、既存ファイルは変更しません。

主な機能

  1. 01条件に応じた API・DB 文書の作成
  2. 02OpenAPI 3.0 準拠の API 仕様書
  3. 03スキーマの Mermaid ER 図
  4. 04調整役から渡されたプロジェクト情報を利用
  5. 05既存文書のスキップ

活用シーン

  1. 01バックエンドのエンドポイントと契約を文書化
  2. 02データベースのテーブルと関係を記述
  3. 03スキャン済みルートやスキーマからプロジェクト文書を生成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-113-backend-docs-creator

インストール後、Claude Code で/ln-113-backend-docs-creatorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
coordinator_summary_contract.md
docs_generation_summary_contract.md
docs_quality_contract.md
docs_quality_rules.json
docs_quality_rules.json.SOURCE.md
markdown_read_protocol.md
questions_backend.md
references/templates/
api_spec_template.md
database_schema_template.md

詳細

パス: ファイルパス(references/、../ln-*)は、このスキルディレクトリからの相対パスです。

バックエンドドキュメント作成ツール

タイプ: L3 Worker

バックエンドドキュメントを2つ作成するL3 Workerです。条件付きで実行され、プロジェクトにバックエンドまたはデータベースがある場合のみ呼び出されます。

目的と範囲

  • api_spec.md を作成します(hasBackend の場合)
  • database_schema.md を作成します(hasDatabase の場合)
  • ln-110-project-docs-coordinator からコンテキストストアを受け取ります
  • OpenAPI 3.0 に準拠した API 仕様を作成します
  • データベーススキーマ用の ER 図を Mermaid で作成します
  • 自身ではコンテキストを収集せず、コーディネーターからの入力を使用します

呼び出し(呼び出し元/タイミング)

  • ln-110-project-docs-coordinator: 次の場合に条件付きで呼び出されます。
    • hasBackend=true(express、fastify、nestjs、fastapi を検出)
    • hasDatabase=true(pg、mongoose、prisma、sequelize を検出)
  • ユーザーから直接呼び出されることはありません

入力

コーディネーターから:

  • contextStore:バックエンド固有のデータを含むコンテキストストア
    • API_TYPE(REST、GraphQL、gRPC)
    • API_ENDPOINTS(ルートスキャンから取得)
    • AUTH_SCHEME(JWT、OAuth2、API キー)
    • DATABASE_TYPE(PostgreSQL、MongoDB、MySQL)
    • SCHEMA_OVERVIEW(マイグレーション/モデルから取得)
    • ER_DIAGRAM(スキーマから生成)
  • targetDir:プロジェクトのルートディレクトリ
  • flags:{ hasBackend, hasDatabase }

必ず読み込むこと: references/docs_quality_contract.md と references/markdown_read_protocol.md を読み込みます。 任意のルールカタログ:正確なルール ID、パスマトリクス、または許可リストに登録されたプレースホルダーの例外が必要な場合にのみ、references/docs_quality_rules.json を読み込みます。

作成するドキュメント(条件に応じて2つ)

ファイル条件質問自動検出
docs/project/api_spec.mdhasBackendQ39-Q40中
docs/project/database_schema.mdhasDatabaseQ41-Q42高

ワークフロー

フェーズ 1:条件を確認
  1. コーディネーターからフラグを解析します
  2. !hasBackend && !hasDatabase の場合:空の結果を返して早期終了します
  3. 作成するドキュメントを決定します
フェーズ 2:ドキュメントを作成

該当するドキュメントごとに:

  1. ファイルが存在するか確認します(冪等性)
  2. 存在する場合:ログを出力してスキップします
  3. 存在しない場合:
    • テンプレートをコピーします
    • プレースホルダーをコンテキストストアの値に置き換えます
    • テンプレートにある共通の冒頭要件と標準の上部セクションを維持します
    • database_schema.md 用の ER 図を生成します
    • 公開するバックエンドドキュメントにテンプレートマーカーを残しません
    • データが不足している場合:該当の記述を省略するか、簡潔で中立的な代替表現を使用します。ただし、[TBD: ...] は出力しません
フェーズ 3:自己検証
  1. SCOPE タグとメタデータマーカーを確認します
  2. 必須の上部セクション(Quick Navigation、Agent Entry、Maintenance)を確認します
  3. 形式を検証します:
    • api_spec.md:エンドポイント表、リクエスト/レスポンスの例
    • database_schema.md:ER 図、テーブル定義
  4. ドキュメント品質の契約への準拠を確認します(禁止されたプレースホルダーがないこと、テンプレートのメタデータが漏れていないこと、有効なドキュメント種別/役割であること)
フェーズ 4:ステータスを返す
{
  "created_files": ["docs/project/api_spec.md"],
  "skipped_files": ["docs/project/database_schema.md"],
  "quality_inputs": {
    "doc_paths": ["docs/project/api_spec.md", "docs/project/database_schema.md"],
    "owners": {
      "docs/project/api_spec.md": "ln-113-backend-docs-creator",
      "docs/project/database_schema.md": "ln-113-backend-docs-creator"
    }
  },
  "validation_status": "passed"
}

重要事項

  • 条件付き: バックエンド/データベースが検出されない場合は、完全にスキップします
  • OpenAPI 準拠: api_spec.md は OpenAPI 3.0 の構造に従います
  • ER 図: Mermaid の erDiagram 形式で生成します
  • 冪等性: 既存のファイルは上書きしません
  • 公開可能な出力: バックエンドドキュメントに [TBD: ...]、TODO、または漏れたテンプレートメタデータを含めません
NO_CODE_EXAMPLES ルール(必須)

API 仕様ドキュメントに記載するのは契約であり、実装ではありません。

  • api_spec.md で許可: JSON リクエスト/レスポンススキーマ(これ自体が API 契約です)、エンドポイント表
  • 禁止: コントローラーの実装、バリデーションクラス、サービスコード、ミドルウェアの例
  • テンプレートルール: api_spec_template.md には `` タグが含まれています。これに従ってください
スタック適応ルール(必須)
  • リンクはスタックに適したドキュメントを参照する必要があります(.NET では Microsoft、JS では MDN)
  • API の例はプロジェクトのスタックに合わせる必要があります(Node.js では Express、Python では FastAPI)
形式の優先順位(必須)

表(エンドポイント、スキーマ)> Mermaid(ER 図)> リスト > テキスト

ランタイム概要アーティファクト

必ずお読みください: references/docs_generation_summary_contract.md を読み込んでください。

summaryArtifactPath は任意で指定できます。

概要の種類:

  • docs-generation

必須ペイロードの内容:

  • worker = "ln-113"
  • status
  • created_files
  • skipped_files
  • quality_inputs
  • validation_status
  • warnings

指定されたアーティファクトパスに概要を書き込むか、同じエンベロープを構造化出力で返してください。

完了の定義

  • 条件を確認済み(hasBackend、hasDatabase)
  • 該当するドキュメントを作成済み
  • ER 図を生成済み(database_schema.md を作成した場合)
  • 自己検証に合格済み(メタデータマーカー、先頭セクション、形式)
  • 最新性を検証済み: すべてのドキュメントの事実が現在のコードと一致していること(パス、関数、API、設定が存在し、正確であること)
  • ステータスを返却済み

参照ファイル

  • テンプレート:references/templates/api_spec_template.md、references/templates/database_schema_template.md
  • 質問:references/questions_backend.md(Q39-Q42)

バージョン: 1.2.0 最終更新日: 2025-01-12

コメント