星波

Chaoqi312026-10-28查看 241复制 1822

当用户询问 GitHub 上当前什么正在流行、新兴或爆发,哪些新生态系统或浪潮正在形成,或想要每日或每周 GitHub 突破摘要时使用。

Download (.md)

📘如何使用这个技能

  1. 1
    复制技能内容·点击上方「Copy SKILL.md」复制全部内容,或 Download 下载到本地
  2. 2
    打开你的 AI 客户端·支持 Claude Code、Trae、Cursor、ChatGPT、DeepSeek、Kimi 等任意 AI 助手
  3. 3
    粘贴为系统提示/知识文件·Claude Code:放入 .claude/skills/ 目录;普通对话:作为首条消息发送并说「请严格按这份技能文档执行」
  4. 4
    直接提出你的需求·AI 会按技能定义的工作流、格式和约束来处理,无需再解释背景

💡 提示:技能生效后,每次对话只需一句需求,AI 会按 SKILL.md 的流程执行。

SKILL.md4805 chars
---
name: starwave
description: "Use when the user asks what is trending, emerging, or blowing up on GitHub right now, which new ecosystems or waves are forming, or wants a daily or weekly GitHub breakout digest."
---

# starwave

starwave groups the GitHub repos created in the last 14 days (40+ stars) into waves: repos that share a term whose use has burst against the 60 days before. Waves are ranked by stars per day. Clusters built from copies of one template, or with other signs of coordination, are listed separately with flags. It needs `GITHUB_TOKEN` or a logged-in `gh`.

## Run

```sh
npx -y github:Chaoqi31/starwave --json          # the Snapshot as JSON
npx -y github:Chaoqi31/starwave --md --top 10   # a Markdown table, ready to paste
npx -y github:Chaoqi31/starwave --show <id>     # every repo in one wave, with its 14-day star chart
```

Without installing anything, today's snapshot is at `https://chaoqi31.github.io/starwave/latest.json`, refreshed daily at 06:17 UTC. Fetch it when the user wants today's waves with the default window. It is faster than a local run.

A local run makes about 60 search requests at 30 per minute plus about 500 star-history requests, so the first one takes 3 to 5 minutes. That is longer than a 2-minute shell timeout. Run it with a 10-minute timeout or in the background and read the output file. Results cache for 6 hours. Progress goes to stderr and output to stdout. Exit code 1 with "set GITHUB_TOKEN or run: gh auth login" means there is no token.

Variants: `--days 7 --min-stars 100` for a shorter window with a higher bar, `--top 30` for more waves, `--no-history` to skip star history.

## Read the output

`--json` prints a `Snapshot`: `generatedAt`, `recentWindow`, `baselineWindow`, `recentCount`, `baselineCount`, and `waves[]`. Clean waves (`flags` empty) come first, then flagged ones, each group by `velocity` descending.

| field | meaning |
|---|---|
| `id`, `aliases` | the primary term and the terms merged into it, for example `jev` with `laya` and `typesafe` |
| `repoCount`, `ownerCount` | repos in the wave, distinct owners |
| `stars` | total stars |
| `velocity` | each repo's stars divided by its age in days, summed over the wave. A ranking score. |
| `velocity3d` | stars per day over the last 3 complete days, summed over the same repos (absent with `--no-history`) |
| `daily` | stars per day for the last 14 complete days, oldest first, same repos (absent with `--no-history`) |
| `firstSeen` | creation date of the oldest repo |
| `anchor` | the most-starred repo: `fullName`, `stars`, `createdAt`, `description` |
| `repos[]` | every repo, sorted by stars. Use it to count owners or creation dates. Do not print it whole. |
| `cohesion` | share of repos that share a term beyond the wave's own terms with another member, 0 to 1 |
| `flags` | empty, or any of `same-day`, `few-owners`, `flat-stars`, `near-duplicate` |

To tell whether a wave is speeding up or cooling, compare `velocity3d` with the average of `daily` over the days since `firstSeen`. Both are stars per day across the same repos. On 2026-09-30 the jev wave averaged 10.3k a day over its 14 days and 5.1k over the last 3, so it was cooling. Do not compare `velocity3d` with `velocity`. `velocity` adds up each repo's lifetime rate and runs higher than the wave's real daily total when young repos hold many stars. If one day holds most of the 14-day total in `daily`, point that out.

What each flag measures, for the "why" in your summary:

- `same-day`: 60 % or more of the repos were created on one day.
- `few-owners`: fewer distinct owners than half the repos.
- `flat-stars`: the anchor holds under 10 % of the wave's stars, so no repo stands out.
- `near-duplicate`: the wave is built from copies, repos whose terms match another owner's repo almost exactly.

## Write the summary

1. Lead with the top 3 clean waves, one sentence each, with numbers from the JSON: `**<id>**: <repoCount> repos from <ownerCount> owners, <stars> stars, <velocity3d>/day over the last 3 days, anchor [<fullName>](https://github.com/<fullName>).` Say whether the wave is cooling or speeding up, from `daily`. Name one or two aliases when they explain the wave.
2. Then the flagged waves under "Looks coordinated". Give the same numbers and say why from `flags`, with the count behind it ("146 of 173 repos created on 2026-09-24"). Say "looks coordinated". Never state "spam" or "bought stars" as fact. The flags are heuristics, and the user can check with `--show <id>`.
3. Link every anchor as `https://github.com/<fullName>`. Do not invent numbers. If a field is missing, leave it out.
4. For "tell me more about <wave>", run `--show <id>` and summarize its top repos by stars.
5. If `waves` is empty, say so and suggest `--min-stars 20` or a larger `--days`.
来源:skillsdirectory

评论0

登录后参与评论

还没有评论,来抢沙发吧