mcpField
G
github-explorer

github-explorer

github.com/blessonism開発79294 回インストール37 週間前に更新
リポジトリ

github-explorer について

github-explorer は、GitHub プロジェクトを詳しく調査する OpenClaw Skill です。プロジェクトの状況や技術的な議論、コミュニティの反応を調べる用途に向けて、複数の情報源を分析し、出典を追跡できるレポートを作成します。

主な機能

  1. 01意図スコア付きの複数ソース検索
  2. 02リポジトリとコミュニティ情報の収集
  3. 03プロジェクト段階と Issues の分析
  4. 04テンプレートに沿ったレポート作成
  5. 05出典確認用の外部リンク

活用シーン

  1. 01GitHub プロジェクトの保守状況の調査
  2. 02Issues 内の技術的な議論の検索
  3. 03コミュニティの反応と関連リンクの整理

インストール

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

$npx skills add https://github.com/blessonism/github-explorer-skill --skill github-explorer

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE
README.md
.gitignore

詳細

GitHub Explorer — プロジェクトの詳細分析

理念:README は表面にすぎません。本当の価値は Issues、Commits、コミュニティでの議論に隠されています。

ワークフロー

[项目名] → [1. 定位 Repo] → [2. 多源采集] → [3. 分析研判] → [4. 结构化输出]
フェーズ 1:リポジトリの特定
  • web_search で site:github.com <project_name> を検索し、完全な org/repo を確認します
  • search-layer(Deep モード + 意図認識)でコミュニティへのリンクや GitHub 以外のリソースを補足します:
    python3 skills/search-layer/scripts/search.py \
      --queries "<project_name> review" "<project_name> 评测 使用体验" \
      --mode deep --intent exploratory --num 5
    
  • web_fetch でリポジトリのホームページを取得し、基本情報(README、Stars、Forks、License、最近の更新)を確認します
フェーズ 2:複数ソースからの情報収集(並行)

⚠️ GitHub ページの取得ルール(必須):GitHub のリポジトリページは SPA(クライアント側レンダリング)です。web_fetch で取得できるのはナビゲーションバーの枠だけなので、web_fetch で github.com のリポジトリページを取得することは禁止です。必ず GitHub API を使用してください:

  • README:curl -s -H "Authorization: token {PAT}" -H "Accept: application/vnd.github.v3.raw" "https://api.github.com/repos/{owner}/{repo}/readme"
  • リポジトリのメタデータ:curl -s -H "Authorization: token {PAT}" "https://api.github.com/repos/{owner}/{repo}"
  • Issues:curl -s -H "Authorization: token {PAT}" "https://api.github.com/repos/{owner}/{repo}/issues?state=all&sort=comments&per_page=10"
  • Commits:curl -s -H "Authorization: token {PAT}" "https://api.github.com/repos/{owner}/{repo}/commits?per_page=10"
  • ファイルツリー:curl -s -H "Authorization: token {PAT}" "https://api.github.com/repos/{owner}/{repo}/git/trees/{branch}?recursive=1"

PAT については TOOLS.md を参照してください。

以下のソースは必要に応じて確認し、存在する場合は収集、存在しない場合はスキップします:

ソースURL パターン収集内容推奨ツール
GitHub Repogithub.com/{org}/{repo}README、About、Contributorsweb_fetch
GitHub Issuesgithub.com/{org}/{repo}/issues?q=sort:comments質の高い Issue 上位 3~5 件browser
中国語コミュニティWeChat/Zhihu/小红书詳細な評価、使用経験content-extract
技術ブログMedium/Dev.to技術アーキテクチャの分析web_fetch/content-extract
ディスカッションフォーラムV2EX/Redditユーザーからのフィードバック、難点search-layer(Deep モード)
search-layer の呼び出し規則

search-layer v2 は意図認識によるスコアリングをサポートしています。github-explorer の用途に推奨される使い方:

シナリオコマンド説明
プロジェクト調査(デフォルト)python3 skills/search-layer/scripts/search.py --queries "<project> review" "<project> 评测" --mode deep --intent exploratory --num 5複数のクエリを並行して検索し、権威性の高い順に並べます
最新情報python3 skills/search-layer/scripts/search.py "<project> latest release" --mode deep --intent status --freshness pw --num 5新しさを優先し、直近 1 週間の情報に絞ります
競合比較python3 skills/search-layer/scripts/search.py --queries "<project> vs <competitor>" "<project> alternatives" --mode deep --intent comparison --num 5比較の意図に基づき、キーワードと権威性の両方を重視します
リンクをすばやく検索python3 skills/search-layer/scripts/search.py "<project> official docs" --mode fast --intent resource --num 3正確に照合し、最速で検索します
コミュニティでの議論python3 skills/search-layer/scripts/search.py "<project> discussion experience" --mode deep --intent exploratory --domain-boost reddit.com,news.ycombinator.com --num 5コミュニティサイトを優先します

意図タイプ早見表:factual(事実)/status(動向)/comparison(比較)/tutorial(チュートリアル)/exploratory(探索)/news(ニュース)/resource(リソースの特定)

--intent を指定しない場合の動作は v1 と完全に同じです(スコアリングなしで、元の順序のまま出力)。

フォールバック規則:Exa/Tavily のいずれかで 429/5xx が発生した場合は、残りのソースを引き続き使用します。スクリプト全体が失敗した場合は、web_search のみを使用する方法に切り替えます。


取得のフォールバックと強化のプロトコル(Extraction Upgrade)

以下の状況では、web_fetch から content-extract に必ず切り替えてください:

  1. ドメイン制限:mp.weixin.qq.com、zhihu.com、xiaohongshu.com。
  2. 複雑な構造:ページに大量の数式(LaTeX)、複雑な表が含まれる、または web_fetch が返す Markdown が非常に乱雑な場合。
  3. コンテンツの欠落:web_fetch がスクレイピング対策により空のコンテンツや Challenge ページを返す場合。

呼び出し方法:

python3 skills/content-extract/scripts/content_extract.py --url <URL>

content-extract の内部処理:

  • まずドメインの許可リストを確認し(WeChat/Zhihu など)、該当する場合は直接 MinerU を使用します
  • 該当しない場合は、まず web_fetch でプローブし、失敗したら MinerU-HTML にフォールバックします
  • 統一された JSON 契約(ok、markdown、sources などのフィールドを含む)を返します
フェーズ 3:分析と評価

収集したデータに基づいて判断します:

  • プロジェクトの段階:初期の実験段階/急成長期/成熟・安定期/メンテナンスモード/停滞(コミットの頻度と内容に基づく)
  • 注目すべき Issue の基準:コメント数が多い、メンテナーが参加している、アーキテクチャ上の問題が明らかになっている、または価値のある技術的な議論が含まれている
  • 競合の特定:README の「Comparison」/「Alternatives」セクション、Issues での議論、ウェブ検索から情報を抽出します
フェーズ 4:構造化された出力

以下のテンプレートに厳密に従って出力し、各セクションには実質的な内容を記載するか、「見つかりませんでした」と明示してください。

排版规则(强制)
  1. 标题必须链接到 GitHub 仓库(格式:# [Project Name](https://github.com/org/repo),确保可点击跳转)
  2. 标题前后都统一空行(上一板块结尾 → 空行 → 标题 → 空行 → 内容,确保视觉分隔清晰)
  3. Telegram 空行修复(强制):Telegram 会吞掉列表项(- 开头)后面的空行。解决方案:在列表末尾与下一个标题之间,插入一行盲文空格 ⠀(U+2800),格式如下:
    - 列表最后一项
    
    ⠀
    **下一个标题**
    
    这确保在 Telegram 渲染时标题前的空行不被吞掉。
  4. 所有标题加粗(emoji + 粗体文字)
  5. 竞品对比必须附链接(GitHub / 官网 / 文档,至少一个)
  6. 社区声量必须具体:引用具体的帖子/推文/讨论内容摘要,附原始链接。不要写"评价很高"、"热度很高"这种概括性描述,要写"某某说了什么"或"某帖讨论了什么具体问题"
  7. 信息溯源原则:所有引用的外部信息都应附上原始链接,让读者能追溯到源头
# [{Project Name}]({GitHub Repo URL})

**🎯 一句话定位**

{是什么、解决什么问题}

**⚙️ 核心机制**

{技术原理/架构,用人话讲清楚,不是复制 README。包含关键技术栈。}

**📊 项目健康度**

- **Stars**: {数量}  |  **Forks**: {数量}  |  **License**: {类型}
- **团队/作者**: {背景}
- **Commit 趋势**: {最近活跃度 + 项目阶段判断}
- **最近动态**: {最近几条重要 commit 概述}

**🔥 精选 Issue**

{Top 3-5 高质量 Issue,每条包含标题、链接、核心讨论点。如无高质量 Issue 则注明。}

**✅ 适用场景**

{什么时候该用,解决什么具体问题}

**⚠️ 局限**

{什么时候别碰,已知问题}

**🆚 竞品对比**

{同赛道项目对比,差异点。每个竞品必须附 GitHub 或官网链接,格式示例:}
- **vs [GraphRAG](https://github.com/microsoft/graphrag)** — 差异描述
- **vs [RAGFlow](https://github.com/infiniflow/ragflow)** — 差异描述

**🌐 知识图谱**

- **DeepWiki**: {链接或"未收录"}
- **Zread.ai**: {链接或"未收录"}

**🎬 Demo**

{在线体验链接,或"无"}

**📄 关联论文**

{arXiv 链接,或"无"}

**📰 社区声量**

**X/Twitter**

{具体引用推文内容摘要 + 链接,格式示例:}
- [@某用户](链接): "具体说了什么..."
- [某讨论串](链接): 讨论了什么具体问题...
{如未找到则注明"未找到相关讨论"}

**中文社区**

{具体引用帖子标题/内容摘要 + 链接,格式示例:}
- [知乎: 帖子标题](链接) — 讨论了什么
- [V2EX: 帖子标题](链接) — 讨论了什么
{如未找到则注明"未找到相关讨论"}

**💬 我的判断**

{主观评价:值不值得投入时间,适合什么水平的人,建议怎么用}

Execution Notes

  • 优先使用 web_search + web_fetch,browser 作为备选
  • 搜索增强:项目调研类任务默认使用 search-layer v2 Deep 模式 + --intent exploratory(Brave + Exa + Tavily 三源并行去重 + 意图感知评分),单源失败不阻塞主流程
  • 抓取降级(强制):当 web_fetch 失败/403/反爬页/正文过短,或来源域名属于高风险站点(如微信/知乎/小红书)时:改用 content-extract(其内部会 fallback 到 MinerU-HTML),拿到更干净的 Markdown + 可追溯 sources
  • 并行采集不同来源以提高效率
  • 所有链接必须真实可访问,不要编造 URL
  • 中文输出,技术术语保留英文

⚠️ 输出自检清单(强制,每次输出前逐条核对)

输出报告前,必须逐条检查以下项目,全部通过才可发送:

  • 标题链接:# [Project Name](GitHub URL) 格式,可点击跳转
  • 标题空行:每个粗体标题(**🎯 ...**)前后各有一个空行
  • Telegram 空行:每个列表块末尾与下一个标题之间有盲文空格 ⠀ 行(防止 Telegram 吞空行)
  • Issue 链接:精选 Issue 每条都有完整 [#号 标题](完整URL) 格式
  • 竞品链接:每个竞品都附 [名称](GitHub/官网链接)
  • 社区声量链接:每条引用都有 [来源: 标题](URL) 格式
  • 无空泛描述:社区声量部分没有"评价很高"、"热度很高"等概括性描述
  • 信息溯源:所有外部引用都附原始链接

Dependencies

本 Skill 依赖以下 OpenClaw 工具和 Skills:

依赖类型用途
web_search内置工具Brave Search 检索
web_fetch内置工具网页内容抓取
browser内置工具动态页面渲染(备选)
search-layerSkill多源搜索 + 意图感知评分(Brave + Exa + Tavily + Grok),v2.1 支持 --intent / --queries / --freshness
content-extractSkill高保真内容提取(反爬站点降级方案)

コメント