npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

anytrend

v0.2.1

Published

AI-driven daily trend aggregation command library for Chinese and English hot rankings.

Readme

AnyTrend

English

npm version License: MIT Node Version

AnyTrend 让你的 AI Agent 跑遍全网 25 个中英文平台,自动采集、翻译、筛选、归类,最终生成一份可直接浏览的全球热点日报站点。

AnyTrend 提供一套 CLI 工具和一个 Agent Skill:CLI 负责数据采集和站点渲染,Skill 驱动 Agent 按既定流程完成标注、精选和总结。25 个平台的数据采集能力来自 WebSculpt

演示视频:[TODO: 视频链接]


前置条件

| 条件 | 说明 | |---|---| | Node.js | >= 22 | | 网络连通性 | 本地网络需能正常访问目标平台。部分境外站点(YouTube、X、Reddit 等)需自行确保网络可达,AnyTrend 不做代理 | | Chrome 浏览器 | 开启远程调试模式:在 Chrome 地址栏进入 chrome://inspect/#remote-debugging 并勾选允许远程调试 | | 浏览器登录态 | 部分平台(抖音、小红书、知乎、X、即刻、脉脉等)需在 Chrome 中提前登录对应账号,否则采集失败 | | AI Agent | 标注、精选、总结等阶段由 Skill 驱动 Agent 执行,需支持 Skill 机制的 Agent 环境 |


安装

# 1. 安装 WebSculpt 运行时
npm install -g @playwright/[email protected] websculpt
websculpt skill install --lang zh

# 2. 安装 AnyTrend CLI
npm install -g anytrend

# 3. 导入 27 条内置采集命令,并在当前目录生成 config/site.yaml
anytrend setup

# 4. 检查环境是否就绪
anytrend doctor

# 5. 安装 AnyTrend Skill,让 Agent 按流程自动执行标注、精选和渲染
npx skills add bqw1013/AnyTrend --skill anytrend-daily-site --yes

使用

打开 Agent,输入"我要今天的全球热点日报",Agent 会加载 Skill 自动完成采集 → 标注 → 聚合 → 精选 → 渲染全流程。

采集数据和日报站点都在当前工作目录下:

  • 采集数据:anytrend-data/daily/<DATE>/(含原始采集结果、AI 标注、站点中间数据)
  • 日报站点:anytrend-data/site/<DATE>/,浏览器打开 index.html 即可浏览

也可以单独运行 CLI 命令,详见命令速览


配置

anytrend setup 在当前目录生成 config/site.yaml,按需修改以下配置块:

| 配置块 | 控制什么 | |---|---| | translation | 目标翻译语言(默认中文) | | homepage | 首页推荐数量(recommendation_count)和 AI 打分标准(criteria) | | categories | 10 个内容分类及其定义 | | feeds | 精选 Feed 列表,每个 feed 包含选稿标准(criteria)和推荐数量(recommendation_count) | | pipeline | 流水线参数 |

自定义筛选标准

修改 homepage.criteriafeeds[].criteria 可以调整 Agent 的选稿偏好。但必须保留 1–5 分制,Agent 依赖该分值做筛选和排序。

新增 Feed

参照现有两个 feed(aipolitics-economy)的结构,在 feeds 数组中新增一个条目:

- id: your-feed-id
  title: 你的 Feed 名称
  recommendation_count: 10
  criteria: >-
    描述该 Feed 的选稿标准,写明 1–5 分各自对应什么内容。

Pipeline 参数

标注阶段采用多 Agent 并发模型:每个 Agent 独立处理一个数据批次。标注完成后,代码按评分筛选出候选池(candidates),后续 Agent 再从候选池中做最终精选。以下参数控制并发规模和候选池筛选逻辑:

| 参数 | 默认值 | 说明 | |---|---|---| | annotation.batch_size | 50 | 每个 Agent 一次处理的条目数。增大可减少 Agent 调度次数,但单个 Agent 的上下文变长 | | annotation.max_concurrency | 10 | 同时运行的标注 Agent 数量上限 | | annotation.model | haiku | 标注使用的 AI 模型 | | aggregation.candidate_ratio | 0.2 | 进入候选池的比例(前 N%),即全量条目中取评分最高的前 20% | | aggregation.max_candidates | 50 | 候选池硬上限,即使按比例计算超过该值也会截断 | | aggregation.initial_score_threshold | 4 | 候选池最低分数门槛(1–5 分制),不足时自动降级(4→3→2→1)以补足候选数量 |

采集平台列表、采集角度、前端模板为代码内置,不可通过 site.yaml 修改。


命令速览

| 命令 | 用途 | |---|---| | anytrend doctor | 检查 Node.js、WebSculpt CLI 和命令安装状态 | | anytrend setup | 导入 WebSculpt 命令 + 生成默认配置文件 | | anytrend build | 完整采集流水线(Collect + Normalize + Merge) | | anytrend sources list | 列出所有采集源 | | anytrend daily-site aggregate | 生成站点中间数据文件 | | anytrend daily-site render | 渲染静态 HTML 站点 |

分步执行命令(collectnormalizenormalize-batchmerge)详见 docs/cli.md


平台覆盖

25 个平台,27 条命令,55 个采集角度。 部分命令需要浏览器和登录态。

| 分类 | 平台 | 命令 | 浏览器 | 登录 | |---|---|---|---|---| | 中文综合 | 百度热搜 | baidu get-hot | — | — | | | Bilibili | bilibili get-hot | — | — | | | 抖音 | douyin get-hot | ✅ | ✅ | | | 今日头条 | toutiao get-hot | ✅ | — | | | 微博热搜 | weibo get-hot-search | — | — | | | 小红书 | xiaohongshu get-feed | ✅ | ✅ | | | 知乎 | zhihu get-hot | ✅ | ✅ | | 英文综合 | Reddit | reddit get-hot | ✅ | — | | | HackerNews | hackernews get-top | — | — | | | Product Hunt | producthunt get-trending | ✅ | — | | | Google Trends | google get-trending | ✅ | — | | | X (Twitter) | x get-trending | ✅ | ✅ | | | YouTube | youtube get-feed | ✅ | — | | | Substack | substack get-trending | ✅ | — | | | TechCrunch | techcrunch get-latest | — | — | | 中文 AI | 即刻 | jike get-hot | ✅ | ✅ | | | 稀土掘金 | juejin get-hot | — | — | | | 机器之心 | jiqizhixin get-latest | ✅ | — | | | 量子位 | qbitai get-latest | ✅ | — | | | 脉脉 | maimai get-hot | ✅ | ✅ | | 英文 AI | GitHub Trending | github get-trending | — | — | | | Hugging Face | huggingface get-trending / get-papers | ✅ | — | | | Replicate | replicate get-trending | ✅ | — | | | Lobsters | lobsters get-hot | ✅ | — | | | Medium | medium get-staff-picks / get-tag-trending | ✅ | — |


License

MIT