スキル:アカデミックホームページジェネレーター
主な目的
指定されたアカデミック GitHub Pages テンプレートリポジトリをフォークし、リネームし、メモリまたは提供されたデータから抽出したユーザーの個人学術情報で埋め込みます。最終出力は、完全に設定されたパーソナライズされたアカデミックホームページであり、GitHub Pages でホスティングできる状態になります。
コアワークフロー
このスキルは、確実なデプロイを保証するために厳格な順次ワークフローに従います。逸脱するとエラーが発生する可能性があります。
- 個人データの取得:
memory-read_graphを使用して、メモリからユーザーの構造化学術プロフィールを抽出します。このデータは、すべてのコンテンツ更新の唯一の情報源です。 - テンプレートリポジトリのフォーク: 対象テンプレート(例:
academicpages/academicpages.github.io)に対してgithub-fork_repositoryを使用します。 - ユーザーアカウントの特定:
github-get_meを使用して、フォークしたユーザーの GitHub ユーザー名を取得します。 - リポジトリのリネーム:
github-rename_repositoryを使用して、フォークにユーザー指定の名前(例:LJT-Homepage)を付けます。 - リポジトリ構造の分析: 主要ディレクトリ(
_pages/、_publications/、_data/、_config.yml)を調べ、テンプレートのレイアウトを理解します。 - コア設定ファイルの更新:
_config.yml: サイトタイトル、説明、URL、そして最も重要なauthorセクションを個人の詳細(名前、自己紹介、所在地、雇用主、メール、ソーシャルリンク)で更新します。_data/navigation.yml: サイトのメインナビゲーションメニューを簡略化します。通常は、ユーザーの指示に従い、「Publications」などの必須リンクのみに削減します。_pages/about.md: デフォルトのコンテンツを、構造化された個人プロフィール(自己紹介、研究関心、学歴、研究経験、出版物(テキスト内にリスト)、スキル、連絡先情報を含む)に完全に置き換えます。
- 出版ファイルの管理:
_publications/ディレクトリ内の既存のサンプルファイルをすべて削除します。- 一貫した命名規則(例:
YYYY-MM-DD-short-title.md)を使用して、ユーザーの各出版物に対して新しい Markdown ファイルを作成します。各ファイルには有効な YAML フロントマター(title、collection、date、venue、citation)が含まれている必要があります。
- 最終検証: すべての主要ファイル(
_config.yml、_pages/about.md、_data/navigation.yml)と出版物エントリが正しく作成され、プレースホルダーデータが含まれていないことを確認します。
重要な制約とガードレール
- データの忠実性: 個人情報を追加、変更、または捏造しないでください。メモリグラフで提供されたデータのみを使用してください。情報が不足している場合(例:特定のソーシャルメディアリンクがメモリにない場合)、設定ではそのフィールドを空白のままにしてください。
- 出版物の包含:
about.mdページにメモリからのすべての出版物をリストし、筆頭著者と共著の作品を明確に区別してください。また、各出版物用に個別の Markdown ファイルも作成してください。 - ナビゲーションの簡略化: ナビゲーションメニューに関するユーザーのリクエストに従ってください。特定のページのみを表示するよう求められた場合は、
_data/navigation.ymlから他のすべてのリンクを削除してください。 - 余分なページを作成しない: ワークフローで明示的に言及されているページ以外のページを作成、有効化、または変更しないでください(例:特に指定がない限り、ブログ、指導、ポートフォリオセクションを有効にしないでください)。
必要なツール
このスキルでは、以下のツールを順次使用する必要があります。必要なすべての権限/スコープが利用可能であることを確認してください。
memory-read_graphgithub-fork_repositorygithub-get_megithub-rename_repositorygithub-get_file_contentsgithub-create_or_update_filegithub-delete_file
障害回復
- 同時書き込み競合:
github-create_or_update_fileまたはgithub-delete_fileが「409 conflict」エラーで失敗した場合は、最新のリポジトリ状態を取得(ルートでgithub-get_file_contents)して新しいshaを取得し、更新されたshaで操作を再試行してください。 - データ不足: メモリグラフからの必須フィールドが空の場合は、明確なメモを記録して処理を続行し、対応するウェブサイトのフィールドは空白のままにしてください。データを捏造しないでください。
出力
ユーザーのフォークされた GitHub リポジトリにすべてのパーソナライズされたファイルが含まれ、コミット履歴が正常な更新を示したときにスキルは完了です。ユーザーに新しいリポジトリの URL(例:https://github.com/<username>/<repo-name>)を提供してください。