本项目是一个自动化脚本,用于抓取GitHub上的热门仓库数据,进行AI摘要,并将结果格式化展示在项目的README文件和GitHub Issue中。它不是一个运行中的服务,而是一个定期执行(例如通过GitHub Actions)来更新静态内容的工具。
项目简介
该项目旨在帮助用户方便地了解GitHub上最新和最受欢迎的仓库。通过自动化流程,它每日(或按配置的频率)拉取数据,提炼关键信息,并以易于阅读的表格形式呈现。
主要功能点
- 自动抓取热门仓库: 定期从GitHub API获取在一定时期内创建并获得高星标的仓库列表。
- AI摘要: 使用AI模型(如OpenAI API)对每个仓库的README内容进行简洁摘要。
- 数据整理与展示: 将抓取到的仓库信息(包括名称、描述、语言、标签、星标数、链接和AI摘要)整理成Markdown表格。
- README更新: 将整理好的热门仓库列表写入项目的README.md文件,保持内容最新。
- Issue发布: 将部分热门仓库列表发布到项目的GitHub Issue中,方便通过邮件通知订阅用户。
安装步骤
本项目主要作为一个自动化脚本运行,通常不需要用户在其本地机器上“安装”为一个长期运行的服务。如果您希望在本地运行或部署到自己的自动化流程中,需要执行以下步骤:
- 克隆仓库:
git clone https://github.com/marc-ko/daily-trending-repo.git cd daily-trending-repo - 安装依赖: 需要安装Python及其相关的库。
(注: 仓库信息中未直接提供 requirements.txt,但根据代码推断需要 'requests', 'python-dotenv', 'pytz', 'openai', 'shutil')pip install -r requirements.txt - 配置API密钥: 项目使用GitHub API获取仓库数据,使用OpenAI API进行摘要。您需要设置相应的环境变量。
在项目根目录创建 '.env' 文件,并添加:
(GitHub API通常不需要额外密钥,但如果调用频率过高可能需要设置 'GITHUB_TOKEN' 环境变量)OPENAI_API_KEY="您的OpenAI API密钥" # OPENAI_API_BASE="如果您使用非官方OpenAI API,请在此填写基础URL"
服务器配置
本项目不是一个MCP服务器,因此没有MCP服务器的启动命令和JSON配置信息。它是一个执行特定任务后退出的脚本。它不通过JSON-RPC协议与LLM客户端通信,也不提供资源、工具或Prompt服务。
基本使用方法
本项目设计为自动化运行。例如,您可以通过GitHub Actions配置一个定时任务,每天执行 'main.py' 脚本。
如果您在本地执行,可以直接运行:
python main.py
脚本会执行以下操作:
- 备份当前的 'README.md' 和 '.github/ISSUE_TEMPLATE.md' 文件。
- 抓取最新的GitHub热门仓库数据。
- 调用OpenAI API生成仓库摘要。
- 生成新的Markdown表格内容。
- 将表格写入 'README.md' 和 '.github/ISSUE_TEMPLATE.md' 文件。
- 清理备份文件。
运行完成后,项目的 'README.md' 和 '.github/ISSUE_TEMPLATE.md' 文件将被更新。
信息
分类
AI与计算