Community寫作與編輯github.com

lucavb/skills

Cursor、Claude Code 及其他程式助手適用的代理技能

skills 是什麼?

此技能為程式碼代理(如 Cursor、Claude Code 等)定義一套結構化的「fetch」流程,以有效率地存取 GitHub 倉庫。其核心是「parse → foresee → fetch/checkout」三步驟模式:先從使用者輸入解析出 owner/repo 及可選的 issue/PR 編號,再根據任務複雜度預判需要一次性取得個別檔案(透過 gh CLI 的 fetch 分支),還是需要完整的工作目錄以進行多檔案讀取或全域搜尋(透過 checkout 分支)。流程中引入「foresee」閘門,可在執行期間動態切換策略,避免不必要的克隆;僅在 gh CLI 遺失或未經認證時才會退而使用 WebFetch。此設計大幅減少 I/O 與磁碟使用,特別適合批次任務與大規模程式碼庫操作,支援的環境包含 Cursor、Claude Code 及任何依賴結構化工作流存取 GitHub 的代理。

相容平台✓Claude Code~Codex CLI✓Cursor
npx skills add lucavb/skills

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

GitHub fetch

fetch 執行流程與每個 GitHub 任務相同:解析 → 預判 → fetch 或 checkout。

步驟

1. 解析

從 URL 或使用者文字中解析出 owner/repo(如有 issue/PR 編號也一併解析)。

完成條件: 已識別出 owner/repo(或已要求使用者釐清)。

2. 預判

在 checkout 之前,判斷此任務是否需要讀取多個檔案,或需要進行倉庫級搜尋(Grep/Glob)?

  • 否 → fetch 分支(步驟 3)。
  • 是 → checkout 分支(步驟 4)。
  • 任務在執行中途擴展 → 在第二次存取前重新預判;必要時切換分支。

完成條件: 已選擇並記錄分支(fetch 還是 checkout)。

3. Fetch 分支

根據 URL 類型遵循 GH-COMMANDS.md。單一檔案:gh api repos/owner/repo/contents/path?ref=branch。

完成條件: 已透過 gh 傳回要求的內容;未啟動 checkout。

4. Checkout 分支

遵循 CHECKOUT.md — 詢問本地路徑、驗證遠端、僅在獲得批准後進行克隆。

完成條件: 已驗證本地路徑並在使用中,或已在已知的絕對路徑上完成經批准的淺克隆;針對該樹進行讀取/Grep/Glob。

存取方式

透過 gh(fetch 分支)或經驗證的 checkout 路徑存取 GitHub。若 gh 缺失或未經認證,則退而使用 WebFetch。

完成條件: 每次存取皆通過 預判 閘門下的 fetch 或 checkout;僅在 gh 真正失敗時才使用 WebFetch。

相關技能