Claude Code Plugins

Community-maintained marketplace

Feedback

github-repo-analyzer

@JustSOOw/vibecoding_docs
0
0

自动分析 GitHub 仓库,获取并整理 README、文档、Issues、GitHub Actions、Releases 等所有重要信息,由 LLM 进行深度分析并生成智能 HTML 报告。

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name github-repo-analyzer
description 自动分析 GitHub 仓库,获取并整理 README、文档、Issues、GitHub Actions、Releases 等所有重要信息,由 LLM 进行深度分析并生成智能 HTML 报告。

GitHub 仓库分析 Skill

概述

这个 Skill 帮助你快速深入了解任何 GitHub 仓库。它不是简单的数据搬运,而是通过 LLM 智能分析,将仓库的各类信息整合、归纳、总结,生成一份真正有价值的分析报告。


核心理念

让 LLM 成为分析引擎,而非数据搬运工。

与直接浏览 GitHub 页面不同,本 Skill 会:

  • 🧠 智能归纳:从 README、Issues、Releases 中提炼关键信息
  • 🔗 关联分析:发现信息之间的联系,识别项目的核心特征
  • 📊 健康评估:从多个维度评价项目的状态
  • 洞察提炼:总结项目亮点、风险和上手建议

使用方式

输入

用户提供 GitHub 仓库的完整 URL,例如:

https://github.com/facebook/react

执行步骤

重要:此 Skill 使用 uv 自动管理依赖和虚拟环境,无需用户手动安装任何依赖。

步骤 1:环境检查

首次运行时,检查 uv 是否可用:

uv --version

如果 uv 未安装,先安装它:

# Windows PowerShell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

步骤 2:获取仓库数据

进入 Skill 目录并运行数据获取脚本:

cd .claude/skills/github-repo-analyzer
uv run scripts/fetch_repo_info.py <仓库URL>

脚本会自动将数据保存到 output/{owner}_{repo}/raw_data.json

步骤 3:生成 Markdown 格式数据

重要:由于 Read 工具有单行 2000 字符的限制,必须先将 JSON 转换为 Markdown 格式:

uv run scripts/prepare_for_analysis.py output/{owner}_{repo}/raw_data.json
uv run scripts/generate_analysis_md.py output/{owner}_{repo}/analysis_ready.json

输出:output/{owner}_{repo}/analysis_ready_for_llm.md(可以被完整读取)

步骤 4:LLM 智能分析(核心)

Claude 必须执行以下深度分析任务:

使用 Read 工具读取 analysis_ready_for_llm.md 文件(完整保留所有内容),从以下维度进行分析:

分析维度 分析要点
🎯 项目定位 这是什么类型的项目(库/框架/工具/应用)?解决什么问题?目标用户是谁?
🔧 技术栈解析 使用了哪些核心技术?整体架构是怎样的?
📖 快速上手指南 从 README 提炼:如何安装?前置条件?最简使用示例?
🌡️ 健康度评估 活跃度(最近更新时间)、社区参与度(Issue 数量和活跃度)、维护状态
🔥 热点问题分析 从 Issues 中提炼:社区最关注的问题是什么?有哪些常见困惑?
📈 版本演进 从 Releases 分析:最近版本的主要更新内容?项目发展趋势?
🚀 核心亮点 这个项目最值得关注的特性是什么?与同类项目相比的优势?
⚠️ 潜在风险 是否有已知的安全问题?重大 Bug?维护问题?
📝 贡献指南 如何为这个项目做贡献?有哪些规范要求?
💡 使用建议 适合什么场景使用?有什么需要注意的地方?

步骤 5:生成 HTML 报告

根据分析结果,生成一份美观的 HTML 报告,保存到 output/{owner}_{repo}/report.html

报告结构要求:

  1. 仓库概览卡片 - Stars/Forks/License/语言/更新时间
  2. 一句话总结 - 用最简洁的语言概括项目
  3. 项目定位与技术栈 - 类型识别、技术架构
  4. 快速上手 - 安装步骤、使用示例
  5. 健康度仪表盘 - 可视化展示项目状态
  6. 社区热点 - Issues 分析结论
  7. 版本演进 - Releases 时间线
  8. 亮点与风险 - 优势和需注意的地方
  9. 贡献指南摘要 - 如何参与项目

设计要求:

  • 深色模式主题
  • 响应式布局
  • 代码语法高亮
  • 可折叠的详细内容
  • 现代化 UI(渐变色、圆角、阴影)

GitHub Token 配置(可选但推荐)

为提高 API 速率限制(从 60 次/小时提升到 5000 次/小时),可以配置 Token:

  1. 复制 .env.example.env
  2. 填入你的 GitHub Personal Access Token

或者通过命令行参数传递:

uv run scripts/fetch_repo_info.py <仓库URL> --token ghp_xxx

输出文件

所有输出文件集中在 output/ 目录,按仓库分目录:

output/
└── {owner}_{repo}/
    ├── raw_data.json                # 原始 API 数据(462KB)
    ├── analysis_ready.json          # 预处理后 JSON 数据(122KB)
    ├── analysis_ready_for_llm.md    # Markdown 格式数据(供 LLM 分析)
    └── report.html                  # 最终分析报告

重要说明

  • analysis_ready.json 中的长文本(README、Issue body 等)都在单行中,会被 Read 工具截断
  • analysis_ready_for_llm.md 解决了这个问题,所有内容都可以被完整读取

注意事项

  • 如果未设置 GITHUB_TOKEN 环境变量,API 速率限制为 60 次/小时
  • 使用 Token 后速率限制提升至 5,000 次/小时
  • 私有仓库需要对应的访问权限
  • 此 Skill 使用 uv 自动管理虚拟环境,不会污染全局 Python 环境
  • 输出文件统一保存在 output/ 目录,便于管理