Github Trending

👤 zhuxiaoke27 📦 v1.0.0 ⭐ 4.4 ⬇️ 894 下載
💻 開發程式設計 免費

📖 技能介紹

GitHub Trending

獲取並分析不同時間段的 GitHub 熱門專案。

使用方式

觸發短語:

  • "github trending"
  • "github 熱門"
  • "github 趨勢專案"
  • "最近 github 上有什麼熱門專案"

引數:

  • --period 或 -p: 時間段(daily/weekly/monthly)。預設:daily
  • --limit 或 -l: 返回專案數量(1-15)。預設:10
  • --language 或 -L: 按程式語言過濾(如 python, javascript, rust)
  • --compare: 對比模式,對比兩個時間段(如 daily,weekly 或 weekly,monthly)
  • --report: 生成趨勢報告(weekly-report 或 monthly-report)

工作流程

基礎模式(單時間段)

  1. 抓取 trending 頁面

    • URL 模式:https://github.com/trending?since={period}
    • 使用 web_fetch,maxChars=15000
    • 解析 markdown 輸出提取專案列表
  2. 提取專案後設資料 對列表中每個專案提取:

    • 倉庫名稱(owner/repo)
    • 描述
    • 程式語言
    • 總 Star 數
    • 本週期新增 Star 數
    • Fork 數
  3. 訪問每個倉庫

    • 抓取 https://github.com/{owner}/{repo},maxChars=8000
    • 提取 README 內容(前 3-5 段)
    • 識別:專案功能、關鍵特性、使用場景
    • 優雅處理失敗(跳過不可用的專案)
  4. 格式化輸出(中文) 返回 markdown 格式:

    ## GitHub 熱門專案 - {今日/本週/本月}
    
    ### 1. owner/repo
    **語言**: {language} | **Stars**: {total} (+{new} {今日/本週/本月})
    
    {原始描述}
    
    **專案功能**: {從 README 提取的內容}
    
    🔗 https://github.com/owner/repo
    
    ---

對比模式(--compare)

  1. 抓取兩個時間段的資料

    • 分別獲取兩個時間段的 trending 列表
    • 提取每個專案的後設資料
  2. 分析差異

    • 新上榜專案:只在較短週期出現的專案
    • 持續熱門:兩個週期都出現的專案
    • 熱度變化:對比 Star 增長速度
  3. 輸出對比報告

    ## GitHub 趨勢對比:{週期1} vs {週期2}
    
    ### 📈 新上榜專案(僅在{週期1})
    {列出新專案及其亮點}
    
    ### 🔥 持續熱門(兩個週期都在榜)
    {列出專案及熱度變化}
    
    ### 📊 趨勢洞察
    - 熱門語言分佈變化
    - 領域趨勢(AI/工具/框架等)

報告模式(--report)

  1. 週報(weekly-report)

    • 抓取本週 daily trending(取 3 天取樣)
    • 統計本週最熱專案(按出現頻次 + Star 增長)
    • 分析:
      • Top 10 本週最熱專案
      • 熱門技術棧
      • 新興領域
    • 輸出格式:

      7w4.net有更好的技能外掛。

      # GitHub 本週趨勢報告
      **時間**: {日期範圍}
      
      ## 🏆 本週 Top 10
      {專案列表 + 詳細分析}
      
      ## 📊 技術趨勢
      - 熱門語言:{統計}
      - 熱門領域:{AI/DevOps/Web 等}
      
      ## 💡 值得關注
      {3-5 個特別推薦專案}
  2. 月報(monthly-report)

    • 抓取本月 weekly trending(取 2-3 周取樣)
    • 對比月初和月末的趨勢變化
    • 輸出格式類似週報,但包含月度趨勢分析

實現要點

  • 先抓取 trending 列表,然後按順序訪問倉庫(避免併發觸發速率限制)
  • 如果倉庫抓取失敗,標記為"無法訪問詳情"並繼續
  • 每個專案的 README 提取限制在 ~500 字以內
  • 輸出必須使用中文,包括標題、欄位名、描述等所有內容

對比和報告模式的實現細節

  • 對比模式:順序抓取兩個時間段,避免併發請求
  • 報告模式:
    • 週報:取樣 3 天(週一/週三/週五或最近 3 天)
    • 月報:取樣 2-3 周(每週取一次 weekly trending)
    • 使用專案出現頻次作為熱度權重
    • 自動去重(同一專案多次出現只統計一次,但記錄頻次)
  • 快取策略:可選將抓取結果儲存到 memory/github-trending-{date}.json 避免重複請求

錯誤處理

  • 網路超時:跳過專案,標記為不可用
  • README 過長:擷取前 3-5 段
  • 語言過濾器無效:忽略過濾,抓取所有語言
  • 時間段引數無效:預設使用 "daily"
  • 對比模式引數格式錯誤:提示正確格式(如 daily,weekly)
  • 報告模式取樣失敗:降級到單次抓取並說明

使用示例

# 基礎查詢
github trending
github trending --period weekly --limit 15

# 語言過濾
github trending --language python

# 對比模式
github trending --compare daily,weekly
github trending --compare weekly,monthly --language rust

# 報告模式
github trending --report weekly-report
github trending --report monthly-report --language javascript

🤖 AI 評測

這個 Skill 質量不錯,功能設計完善。它能幫你查詢 GitHub 熱門專案,支援按日/周/月篩選、按程式語言過濾,還能對比不同時間段的趨勢變化。文件寫得很詳細,例子充足,中文輸出流暢。不足是功能比較單一,只有說明文件沒有測試驗證,如果網路請求失敗可能影響效果。適合經常關注 GitHub 趨勢的開發者使用。

📊 多維度評分

適應性4.4
規範性4.2
有效性4.5
可靠性4.3
可信度4.8

📁 包含檔案 (2 個)

📄 SKILL.md 5 KB
📄 _meta.json 143 B