mcpField
C
configure-github-pages

configure-github-pages

github.com/laurigatesクラウド・DevOps5957 回インストール1 日前に更新
リポジトリ

configure-github-pages について

ドキュメントサイトの GitHub Pages デプロイを確認、設定するスキルです。ドキュメント生成ツールを検出し、Pages 用の設定を含む GitHub Actions ワークフローを作成または更新します。

主な機能

  1. 01ドキュメント生成ツールとソースの検出
  2. 02Pages ワークフローのアクションと権限の監査
  3. 03デプロイワークフローの作成・更新
  4. 04ビルド手順とパス条件の追加
  5. 05確認のみ・自動修正モード

活用シーン

  1. 01ドキュメントサイトへの Pages 設定
  2. 02既存の Pages ワークフローの確認
  3. 03peaceiris/actions-gh-pages からの移行
  4. 04既存のドキュメント生成ツールへのデプロイ追加

インストール

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

$npx skills add https://github.com/laurigates/claude-plugins --skill configure-github-pages

インストール後、Claude Code で/configure-github-pagesを入力して読み込まれたか確認します。

同梱ファイルREFERENCE.md

詳細

/configure:github-pages

GitHub Pages のデプロイを確認して設定します。

このスキルを使用するタイミング

次の場合はこのスキルを使用します…次の場合は別の方法を使用します…
ドキュメントサイトの GitHub Pages デプロイを設定するドキュメントの標準やジェネレーターを設定する(代わりに /configure:docs)
Pages デプロイ用の GitHub Actions ワークフローを作成または更新する失敗した GitHub Actions ワークフローをデバッグする(代わりに /configure:workflows)
peaceiris/actions-gh-pages から公式の actions/deploy-pages に移行するドキュメントの内容や Markdown ファイルを編集する
Pages ワークフローで古いアクションバージョンや権限の不足を監査するDNS を使ってカスタムドメインを設定する(リポジトリ設定で手動)
既存のドキュメントジェネレーターがあるプロジェクトに Pages デプロイを追加するドキュメントに関係しない CI/CD ワークフローを設定する

コンテキスト

  • GitHub ワークフロー:!find .github/workflows -maxdepth 1 \( -name '*doc*.yml' -o -name '*pages*.yml' \)
  • ドキュメント設定:!find . -maxdepth 1 \( -name 'mkdocs.yml' -o -name 'typedoc.json' -o -name 'docusaurus.config.*' \)
  • ドキュメントディレクトリ:!find . -maxdepth 1 -type d \( -name 'docs' -o -name 'site' \)
  • CNAME ファイル:!find . -maxdepth 1 -name 'CNAME'
  • プロジェクト標準:!find . -maxdepth 1 -name '.project-standards.yaml'

パラメーター

コマンド引数から解析します。

  • --check-only:変更せずに準拠状況を報告します(CI/CD モード)
  • --fix:確認を求めずに修正を自動適用します
  • --source <docs|site|custom>:ソースディレクトリの検出方法を上書きします

実行

この GitHub Pages デプロイ設定チェックを実行します。

ステップ 1:ドキュメントの状態を検出する

既存のドキュメント設定を特定します。

設定ファイルジェネレーター出力ディレクトリ
typedoc.jsonTypeDocdocs/ または設定済みのディレクトリ
mkdocs.ymlMkDocssite/
docs/conf.pySphinxdocs/_build/html/
docusaurus.config.jsDocusaurusbuild/
Cargo.toml(rustdoc を使用)rustdoctarget/doc/
なし静的docs/

ドキュメントが設定されていない場合は、次のように報告します。

No documentation generator detected.

Consider running /configure:docs first to:
  - Set up documentation linting standards
  - Configure a documentation generator

Would you like to:
  [A] Configure documentation first (/configure:docs)
  [B] Set up static HTML hosting for existing docs/ directory
  [C] Skip - I'll configure docs later
ステップ 2:既存のワークフローを分析する

次を検索して、既存の GitHub Pages ワークフローを確認します。

  • actions/deploy-pages
  • actions/upload-pages-artifact
  • peaceiris/actions-gh-pages

既存のワークフローから、現在のアクションバージョン、権限、ビルド手順、ソースディレクトリを抽出します。

ステップ 3:標準への準拠を確認する

GitHub Actions ワークフローが標準に準拠しているか検証します。

チェック項目標準重大度
actions/deploy-pagesv5+古い場合は WARN
actions/configure-pagesv6+ない場合は WARN
actions/upload-pages-artifactv5+古い場合は WARN
権限pages: write、id-token: writeない場合は FAIL
環境github-pagesない場合は WARN
同時実行グループが定義されているINFO
ステップ 4:準拠レポートを生成する

書式付きの準拠レポートを出力します。

GitHub Pages Compliance Report
==============================
Project: [name]

Documentation Status:
  Generator           [typedoc|mkdocs|sphinx|rustdoc|static|not configured]
  Source directory    [docs/|site/|custom]
  Build command       [detected command or "not configured"]

GitHub Pages Workflow:
  Workflow file       .github/workflows/docs.yml    [EXISTS | MISSING]

Workflow Checks (if exists):
  deploy-pages        v5                            [PASS | OUTDATED | MISSING]
  configure-pages     v6                            [PASS | MISSING]
  upload-artifact     v5                            [PASS | OUTDATED]
  Permissions         pages: write, id-token        [PASS | MISSING]
  Environment         github-pages                  [PASS | MISSING]

Overall: [X issues found]

Recommendations:
  [List specific fixes needed]

--check-only の場合は、ここで終了します。

ステップ 5:ワークフローを作成または更新する(--fix またはユーザーが確認した場合)

検出したジェネレーターに基づいて .github/workflows/docs.yml を作成します。REFERENCE.md の適切なワークフローテンプレートを使用します。

  • TypeDoc:Node.js のセットアップ、npm ci、npm run docs:build、./docs をアップロード
  • MkDocs:Python のセットアップ、pip install、mkdocs build、./site をアップロード
  • Sphinx:Python のセットアップ、pip install、make html、./docs/_build/html をアップロード
  • rustdoc:Rust ツールチェーン、cargo doc、インデックスへのリダイレクトを作成、./target/doc をアップロード
  • 静的 HTML:./docs ディレクトリから直接アップロード

すべてのワークフローに以下を含めます。

  • 必須の権限(pages: write、id-token: write)
  • 競合を防ぐための同時実行グループ
  • 手動でトリガーするための workflow_dispatch
  • 関連するソースファイルを対象とするパスベースのトリガー
ステップ 6:標準の追跡情報を更新する

.project-standards.yaml を更新します。

standards_version: "2025.1"
last_configured: "[timestamp]"
components:
  github-pages: "2025.1"
  github-pages-generator: "[typedoc|mkdocs|sphinx|rustdoc|static]"
  github-pages-source: "[docs/|site/|custom]"
ステップ 7:設定後の手順を表示する
GitHub Pages Configuration Complete
===================================

Workflow created: .github/workflows/docs.yml

Next Steps:
  1. Enable GitHub Pages in repository settings:
     Settings -> Pages -> Source: GitHub Actions

  2. Push to main branch to trigger deployment:
     git add .github/workflows/docs.yml
     git commit -m "ci(docs): add GitHub Pages deployment workflow"
     git push

  3. After deployment, your docs will be available at:
     https://OWNER.github.io/REPO/

Optional:
  - Add custom domain: Create CNAME file with your domain
  - Protect deployment: Configure environment protection rules

詳しいワークフローテンプレートについては、REFERENCE.md を参照してください。

出力

次の内容を提供します。

  1. ドキュメントとワークフローのステータスを含むコンプライアンスレポート
  2. 実施した変更(--fix の場合)、または変更案(対話型の場合)の一覧
  3. 設定後の手順
  4. ドキュメントのデプロイ先 URL

エージェント向けの最適化

コンテキストコマンド
簡易コンプライアンスチェック/configure:github-pages --check-only
すべての問題を自動修正/configure:github-pages --fix
Pages ワークフローが存在するか確認find .github/workflows -name '*pages*' -o -name '*doc*' 2>/dev/null
Pages アクションのバージョンを確認`grep -E 'deploy-pages
Pages が有効か確認gh api repos/{owner}/{repo}/pages --jq '.status'
デプロイステータスを確認gh api repos/{owner}/{repo}/pages/builds --jq '.[0].status'

関連項目

  • /configure:docs - ドキュメント標準とジェネレーターを設定する
  • /configure:workflows - GitHub Actions のワークフロー標準を設定する
  • /configure:all - すべてのコンプライアンスチェックを実行する
  • /configure:status - コンプライアンスの概要をすばやく確認する

コメント