Initial commit: Hermes Agent skills collection
- Trading skills (OKX, dividend, lottery, quantitative) - Creative skills (ASCII art, diagrams, video) - Development skills (GitHub, debugging, TDD) - Research skills (arXiv, blog monitoring) - Productivity skills (email, documents, notes) - MCP integration skills - Custom user skills
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
# GitHub API Browser Fallback — 当 terminal/curl 不可用时
|
||||
|
||||
## 核心技巧
|
||||
|
||||
用 `browser_navigate` 直接访问 GitHub API(无需认证的公开端点),然后 `browser_console` 提取 JSON。
|
||||
|
||||
## 每次操作的三步模式
|
||||
|
||||
```
|
||||
1. browser_navigate → API URL
|
||||
2. browser_console → JSON.parse(document.body.innerText).items.map(...)
|
||||
3. 处理数据,再 navigate 下一个查询
|
||||
```
|
||||
|
||||
## 推荐查询模板
|
||||
|
||||
### 查询 1:近7天新建高星项目(主力)⭐ 最重要
|
||||
```
|
||||
https://api.github.com/search/repositories?q=created:>YYYY-MM-DD+stars:>200&sort=stars&per_page=20
|
||||
```
|
||||
将 `YYYY-MM-DD` 替换为7天前日期。⚠️ 阈值不要低于 `stars:>200`,否则垃圾仓库淹没结果。
|
||||
|
||||
### 查询 2:老牌大项目近期活跃(补充上下文)
|
||||
```
|
||||
https://api.github.com/search/repositories?q=pushed:>YYYY-MM-DD+stars:>5000&sort=stars&per_page=15
|
||||
```
|
||||
发现大项目的重大更新(如新版本发布)。提供"老牌活跃"维度,与查询1的"新项目爆发"互补。
|
||||
|
||||
### 查询 3:近30天快速增长项目(可选)
|
||||
```
|
||||
https://api.github.com/search/repositories?q=created:>YYYY-MM-DD+stars:>500&sort=stars&per_page=20
|
||||
```
|
||||
|
||||
### 查询 4:特定语言趋势(按需)
|
||||
```
|
||||
https://api.github.com/search/repositories?q=language:rust+created:>YYYY-MM-DD+stars:>100&sort=stars&per_page=15
|
||||
```
|
||||
|
||||
### ⚠️ 避免:极新鲜 + 低阈值查询
|
||||
```
|
||||
❌ created:>2天前+stars:>50 → 几乎全是垃圾仓库
|
||||
```
|
||||
2026-06-19 实测:`created:>2026-06-17+stars:>50` 返回的20个结果中,18个是模板化垃圾仓库(Star数全是110-121,0 forks,描述模板化)。参见 `references/spam-detection.md` 中的实战案例。
|
||||
|
||||
## JS 提取模板(每个查询复用,必须用 IIFE 包裹)
|
||||
|
||||
```javascript
|
||||
// ⚠️ 必须用 IIFE 包裹,避免变量重复声明错误(browser_console 共享 JS 上下文)
|
||||
(function(){
|
||||
var d = JSON.parse(document.body.innerText);
|
||||
return d.items.map(function(r) {
|
||||
return {
|
||||
name: r.full_name,
|
||||
desc: (r.description||'').slice(0,200),
|
||||
stars: r.stargazers_count,
|
||||
lang: r.language,
|
||||
created: r.created_at.slice(0,10),
|
||||
forks: r.forks_count,
|
||||
topics: (r.topics||[]).slice(0,6)
|
||||
};
|
||||
});
|
||||
})()
|
||||
```
|
||||
|
||||
## 三查询实战 Playbook(2026-06-19 验证)
|
||||
|
||||
当 trending 页面完全不可用时,用以下三个查询组合获取完整日报数据:
|
||||
|
||||
| 步骤 | 查询 | 数据量 | 用途 |
|
||||
|------|------|--------|------|
|
||||
| ① | `created:>7天前+stars:>200` | ~15-20 个 | 新项目爆发(主数据源) |
|
||||
| ② | `pushed:>昨天+stars:>5000` | ~15 个 | 老牌活跃项目(上下文补充) |
|
||||
| ③ | `created:>14天前+stars:>300` | ~15 个 | 近两周中等阈值(补漏) |
|
||||
|
||||
**执行顺序**:每个查询独立 `browser_navigate` → `browser_console` 提取 → 再下一个。
|
||||
|
||||
**合并策略**:三轮结果按 `full_name` 去重后,选 TOP 10 分析。查询①的新项目优先,查询②的大项目作为趋势补充。
|
||||
|
||||
**注意**:不要用 `created:>2天前+stars:>50`,该查询几乎全是垃圾仓库(见上方警告)。
|
||||
|
||||
## 注意事项
|
||||
|
||||
- GitHub API 未认证限速:10 requests/minute,足够完成日报
|
||||
- 每个查询需要单独 `browser_navigate`,不要在同一个 page 做多次 fetch
|
||||
- API 返回的 `stargazers_count` 是总星数,不是日增——需要通过 `created` 日期和星数推算热度
|
||||
- 对于真正的"今日增速"数据,API 无法直接提供,需要对比不同时间点的查询结果
|
||||
Reference in New Issue
Block a user