Skip to content

Stellarwolf001/ToolHunter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏹 ToolHunter

ToolHunter 是你在开源世界的私人侦察兵。它会自动发现、分析并报告最新涌现的高潜力 GitHub 项目,帮你过滤噪音,专注于真正的宝藏工具。

通过结合星标增长趋势(Velocity)追踪和 LLM 驱动的深度分析(支持 OpenAI, Anthropic, Gemini),ToolHunter 能在工具爆火之前识别出它们,并将简明扼要的技术摘要直接推送到你的 Telegram。

✨ 核心功能

  • 🔥 全网热点挖掘 (Trending Discovery): 自动跨领域抓取近期(默认7天内)爆火的高星项目(默认150星以上),不再局限于特定话题,发现更广阔的开源宝藏。
  • 🚀 趋势发现 (Velocity-Based): 追踪在特定时间窗口内星标快速增长的项目(默认配置:4小时内新增20星)。
  • 🧠 AI 深度分析:利用 LLM(GPT-4o, Claude 3.5, Gemini)阅读项目 README,自动生成技术洞察、应用场景和部署指南。
  • 🛡️ 智能过滤:
    • 抗噪机制: 自动忽略 "awesome lists"、教程、面试题和纯文档类仓库。
    • 去重系统: 维护本地 SQLite 数据库,确保你不会收到重复推送。
  • msg Telegram 集成: 推送格式精美的项目日报/实时通知,包含标签和直达链接。

🛠️ 环境要求

  • Python 3.10+
  • GitHub Personal Access Token (Classic 或 Fine-grained)
  • Telegram Bot Token & Chat ID
  • LLM API Key (OpenAI, Anthropic 或 Google Gemini)

🚀 快速开始

1. 克隆仓库

git clone https://github.com/Stellarwolf001/ToolHunter.git
cd ToolHunter

2. 配置环境

复制示例配置文件:

cp .env.example .env

编辑 .env 文件填入你的密钥:

# GitHub 配置
GITHUB_TOKEN=your_github_token_here

# Telegram 配置
TG_BOT_TOKEN=your_telegram_bot_token
TG_CHAT_ID=your_telegram_chat_id

# LLM 配置 (openai, anthropic, 或 gemini)
LLM_PROVIDER=openai
LLM_API_KEY=your_llm_api_key
# LLM_MODEL=gpt-4o-mini  # 可选:覆盖默认模型

# 发现设置
POLLING_INTERVAL_MINUTES=30
STAR_VELOCITY_THRESHOLD=20

3. 安装依赖

pip install -r requirements.txt

4. 启动ToolHunter

python -m src.main

或者后台运行(Linux/Mac):

nohup python -m src.main > output.log 2>&1 &

⚙️ 配置选项

变量名 默认值 说明
TRENDING_ENABLED True 是否开启全网跨领域的热点项目抓取
TRENDING_REPO_AGE_DAYS 7 全网热点项目最大期限(近几天内创建)
TRENDING_MIN_STARS 150 全网热点项目需要达成的最低星标
POLLING_INTERVAL_MINUTES 30 检查新项目的间隔时间(分钟)
STAR_VELOCITY_THRESHOLD 20 时间窗口内最低新增星标数
VELOCITY_WINDOW_HOURS 4 计算星标增长速度的时间窗口(小时)
REPO_AGE_HOURS 48 仅发现最近多少小时内创建的项目
PROXY_URL None API 请求代理地址 (例如 http://127.0.0.1:7890)

🏗️ 项目结构

ToolHunter/
├── src/
│   ├── analyzer.py       # LLM 分析逻辑
│   ├── config.py         # 配置管理
│   ├── database.py       # SQLite 接口
│   ├── github_client.py  # GitHub API 交互
│   ├── main.py           # 程序入口
│   └── telegram_bot.py   # Telegram 通知逻辑
├── data/                 # 数据库存储目录
└── requirements.txt

🤝 贡献

欢迎提交 Issue 或 Pull Request 来改进这个项目!

📄 许可证

MIT License

About

Automated tool for discovering and analyzing high-growth GitHub repositories

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors