reddit-cli

🤖 免 API Key 的 Reddit 终端浏览器

基于 Reddit 官方 API 的轻量级 CLI 工具,无需 API Key 即可通过 Cookie 认证读取帖子、搜索内容和获取社区信息,适合开发者快速获取 Reddit 数据。

收藏
3k
安装
1.3k
版本
v1.0.2
CLS 安全性认证2026-05-22
点击查看完整报告 >

使用说明

核心用法

reddit-cli 是一款基于 Node.js 的命令行工具,允许用户通过 Reddit 会话 Cookie 直接访问 Reddit 内容,无需申请官方 API Key。主要功能包括:获取指定子版块的热门/最新/置顶帖子、全站或指定版块搜索、查看社区基本信息以及连接测试。用户只需在浏览器开发者工具中提取 reddit_session Cookie 值并配置为环境变量,即可通过简洁的 bash 命令快速获取 Reddit 数据。

显著优点

1. 零配置门槛:无需注册 Reddit 开发者账号或申请 API Key,降低了使用门槛
2. 轻量无依赖:仅使用 Node.js 内置 https 模块,零外部 npm 依赖,安装包体积极小

3. 安全传输:所有通信强制使用 HTTPS 加密,敏感信息通过环境变量隔离

4. 功能聚焦:专注于只读数据获取,命令设计直观,支持多种排序方式和搜索过滤

5. 开源透明:MIT 许可证,代码完全开源可审计

潜在缺点与局限性

1. Cookie 维护成本:Reddit 会话 Cookie 会定期过期,需要手动重新获取和配置
2. 功能受限:仅支持读取操作,无法发帖、评论或投票;受 Reddit 速率限制约束

3. 输入验证不足:子版块名称等参数缺乏严格的输入校验,可能存在边缘情况处理不完善

4. T3 来源风险:作者为个人开发者,长期维护承诺和更新频率存在不确定性

5. 无官方支持:非 Reddit 官方工具,API 变更可能导致功能失效

适合的目标群体

  • 开发者和技术用户:需要在终端快速浏览 Reddit 内容,或集成到个人工作流
  • 数据分析师:临时获取 Reddit 公开数据进行初步探索
  • 隐私敏感用户:不愿授权第三方应用,希望通过自有 Cookie 控制数据访问
  • 自动化脚本编写者:构建个人级的 Reddit 数据监控和通知系统

使用风险

  • Cookie 泄露风险REDDIT_SESSION 属于敏感凭证,在多用户环境或版本控制中误提交可能导致账号被盗用
  • 速率限制触发:频繁请求可能导致 IP 被 Reddit 临时封禁
  • 功能突然失效:Reddit 反爬虫策略或 API 变更可能使工具无法正常工作
  • 无写入能力限制:无法满足需要互动操作(发帖、回复)的场景需求

安全解读

核心用法

reddit-cli 是一款命令行 Reddit 阅读工具,通过浏览器 Cookie 实现免 API Key 认证。主要功能包括:

  • 读取帖子reddit-cli posts <subreddit> [limit] [sort],支持 hot/new/top/rising 排序
  • 全站搜索reddit-cli search <query> [--sub <subreddit>],可限定子版块
  • 社区信息reddit-cli info <subreddit>,获取订阅者数量等元数据
  • 连接测试reddit-cli check,验证 Cookie 有效性

用户需从浏览器 DevTools 手动复制 reddit_session(必需)和 token_v2(可选)Cookie 值,设置为环境变量使用。

显著优点

1. 零配置上手:无需注册 Reddit App、申请 API Key,避开官方 OAuth 繁琐流程
2. 无第三方依赖:仅使用 Node.js 内置 https 模块,供应链攻击面极小,依赖审计满分

3. 代码简洁透明:377 行代码结构清晰,静态分析未发现危险函数或硬编码密钥

4. 网络行为干净:所有请求指向 reddit.com 官方域名,HTTPS 加密传输

5. 资源占用低:适合服务器/自动化场景定时拉取数据

潜在缺点与局限性

1. Cookie 易失效:Session Cookie 会过期,需定期手动刷新,稳定性不如 OAuth
2. 功能只读:仅能获取公开数据,无法发帖、评论或进行需要写权限的操作

3. 速率限制敏感:Reddit 对未认证请求限制较严,高频使用可能触发 429

4. 无官方保障:依赖非公开接口,Reddit 随时可能更改或阻断

适合人群

  • 需要快速抓取 Reddit 数据的开发者/数据分析师
  • 不想管理 OAuth 凭据的个人自动化用户
  • 学习 Node.js 网络请求的初学者(代码简洁可审计)

常规风险

  • 凭证泄露风险:Cookie 包含用户身份,若环境变量泄露可能导致账户被盗
  • 来源可信度:T3 级个人开发者维护,长期更新保障有限
  • 合规灰色地带:使用浏览器 Cookie 绕过官方 API 可能违反 Reddit ToS 服务条款

安全认证结论

CLS-Certify 综合评分 89 分,等级 A。核心风险可控,但建议用户:

  • 将 Cookie 存储于 ~/.bashrc 或专用 secret 管理工具,避免硬编码
  • 定期轮换 Cookie
  • 关注项目更新,有条件时迁移至官方 OAuth API

reddit-cli 内容

scripts文件夹
手动下载zip · 4.4 kB
reddit-cli.jstext/javascript
请选择文件