核心用法
reddit-search 是一个命令行 Reddit 搜索工具,通过 Reddit 官方公开 API 提供五类功能:
| 命令 | 用途 | 示例 |
|------|------|------|
| `info <subreddit>` | 查看社区订阅数、NSFW 状态、创建日期及描述 | `info programming` |
| `search <query> [limit]` | 搜索匹配主题的社区 | `search javascript 20` |
| `popular [limit]` | 列出热门社区 | `popular 15` |
| `new [limit]` | 列出新建社区 | `new 10` |
| `posts <subreddit> [limit]` | 获取社区热门帖子 | `posts typescript 5` |
所有请求均通过 HTTPS 访问 www.reddit.com 官方域名,使用未经身份验证的公开 JSON API。
显著优点
- 代码极简可审计:核心代码仅 215 行 TypeScript,无复杂逻辑,静态分析得分 95/100
- 网络行为透明:仅访问 Reddit 官方域名,无第三方服务或数据外泄风险
- 隐私合规良好:仅处理公开社区数据,不收集用户隐私信息
- 依赖单一且成熟:仅依赖 axios v1.13.2,知名稳定 HTTP 客户端库
- 内置基础防护:已设置 10 秒超时,处理 404 和 429 限流错误
潜在缺点与局限性
- API 依赖风险:完全依赖 Reddit 公开 API,若官方调整限流政策或强制认证,工具可能失效
- 无认证支持:当前版本不支持 Reddit OAuth,无法访问私有社区或突破严格限流
- 输入验证较简单:仅基础字符串清理,缺少严格的子版块名称格式校验
- 无缓存机制:重复查询相同社区会发起冗余请求,效率有待提升
- T3 来源可信度:个人开发者维护,无知名组织背书,长期维护存在不确定性
适合人群
- 开发者和技术用户,需要快速查询 Reddit 社区信息
- 研究人员,分析公开社区趋势和热门话题
- CLI 工具爱好者,偏好轻量级、可脚本化的数据获取方式
常规风险
- 服务可用性:Reddit API 政策变化可能导致功能受限或中断
- Rate Limiting:未认证 API 有严格请求频率限制,高频使用可能触发 429 错误
- 内容合规:返回的社区信息包含用户生成内容,可能涉及 NSFW 标记,需用户自行甄别