技能:學術個人主頁產生器
主要目標
Fork 指定的學術 GitHub Pages 模板倉庫,重新命名,並以使用者的個人學術資訊(從記憶體或提供的資料中提取)填充。最終產出是一個完全配置、個人化的學術主頁,準備好託管在 GitHub Pages 上。
核心工作流程
此技能遵循嚴格的順序工作流程,以確保成功部署。偏離可能導致錯誤。
- 擷取個人資料:使用
memory-read_graph從記憶體中提取使用者的結構化學術檔案。此資料是所有內容更新的唯一來源。 - Fork 模板倉庫:對目標模板(例如
academicpages/academicpages.github.io)使用github-fork_repository。 - 識別使用者帳戶:使用
github-get_me取得 Fork 使用者的 GitHub 使用者名稱。 - 重新命名倉庫:使用
github-rename_repository為 Fork 的倉庫指定使用者要求的名稱(例如LJT-Homepage)。 - 分析倉庫結構:檢查關鍵目錄(
_pages/、_publications/、_data/、_config.yml)以了解模板的佈局。 - 更新核心配置檔案:
_config.yml:更新網站標題、描述、URL,最重要的是author部分,包含個人詳細資料(姓名、簡介、地點、雇主、電子郵件、社交連結)。_data/navigation.yml:簡化網站的主要導覽選單。通常根據使用者指示,僅保留「Publications」等必要連結。_pages/about.md:完全取代預設內容,改為結構化的個人檔案,包含:簡介、研究興趣、教育背景、研究經歷、出版物(內文列出)、技能與聯絡資訊。
- 管理出版物檔案:
- 刪除
_publications/目錄中所有現有的範例檔案。 - 為使用者的每篇出版物建立新的 Markdown 檔案,使用一致的命名慣例(例如
YYYY-MM-DD-short-title.md)。每個檔案必須包含有效的 YAML frontmatter(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重試該操作。 - 缺少資料:如果記憶體圖形中的必要欄位為空,請記錄明確的註記並繼續進行,在對應的網站欄位中留空。請勿虛構資料。
輸出
當使用者的 Fork GitHub 倉庫包含所有個人化檔案,且提交記錄顯示成功更新時,技能即完成。向使用者提供其新倉庫的 URL(例如 https://github.com/<username>/<repo-name>)。