最近折腾了一个命令行版的 V2EX 客户端,叫做 v2ex-cli,主要是给两类人用的:
1 )日常习惯在终端里晃悠的 V 友
2 )在搞各种 AI / Agent / 脚本自动化,希望能「机器可读」地用 V2EX 数据的人
简单说,它不是传统那种交互式 TUI 客户端,而是 一条命令跑完就退出,输出尽量高信息密度,既方便人肉看,也方便丢给脚本和 AI 去处理。
安装(需要 Node 18+):
npm install -g @pengyanai/v2ex-cli
# 或者直接临时跑
npx @pengyanai/v2ex-cli hot
看看热帖前 5 条:
v2ex hot --limit 5
看「问与答」节点最近的帖子:
v2ex topics qna --limit 5
默认输出是 TSV 风格的纯文本,没有花里胡哨的颜色和框框,拿 awk / sed 简单切一切就能继续用。
如果你想给脚本或者 LLM 看,加个 --json 就能直接变成结构化输出,例如:
v2ex hot --json --limit 5 | jq -r '.[].title'
市面上的 V2EX 终端客户端,大多是面向「人」的:全屏 TUI ,支持上下翻页、键盘快捷键,体验很好。但对「机器」和「 Agent 」就很不友好:
v2ex-cli 做了几个刻意的设计取舍:
--json 就变成稳定字段的 JSON 0 正常 · 1 API / 网络错误 · 2 鉴权问题所以无论是人肉在终端里扫一眼,还是写成 cron / 监控脚本 / AI 工具,都比较顺手。
目前支持的命令大致包括:
v2ex latest / v2ex hot:看首页热帖、全站最新 v2ex nodes:查看内置的一些常用节点 v2ex topics <node>:某个节点下的帖子列表 v2ex topic <id> [--with-replies]:单个帖子详情,也可以顺带拉第一页回复 v2ex replies <topicId>:只看回复,带楼层号 v2ex member [username]:看某个用户的公开信息 v2ex notifications:看自己的通知(需要 token ) v2ex search <关键词...>:通过 SOV2EX 做搜索,支持稍微复杂一点的 ES 查询语法想用来做点「小自动化」的话,比如:
这类场景都可以直接靠一两行命令拼出来。
平时在站内大家应该都干过这些事:刷家庭矛盾、刷副业赚钱贴、看这一个月里又有多少人讨论某个话题。用 v2ex-cli 可以直接在终端里这么玩:
比如一口气看最近提到「家庭 / 矛盾 / 孩子 / 教育 / 婚姻 / 婆媳」这些关键词的帖子(背后是 SOV2EX 的 OR 查询):
v2ex search '家庭|矛盾|孩子|教育|原生家庭|父母|养老|婚姻|婆媳'
刷「副业 / 赚钱」相关的帖子里,按回复数找出最热的前三个,只看标题和回复数:
v2ex search '副业|赚钱'
想看过去 30 天里有多少贴在讨论「 AI 编辑器」这类话题,也可以直接算一把:
v2ex search 'AI 编辑器' --sort created
上面这些,本质上就是把大家平时在网页上点来点去的动作,压成了几条命令;不管是自己在终端里看看,还是挂到某个监控脚本 / RSS / Agent 上,都比较顺手。
V2EX 的公开 API 本身就支持匿名访问,所以大部分读操作都 不需要 token:
只有涉及到你自己账号的部分才需要填 token ,比如:
v2ex auth 自测 token 是否可用 v2ex notifications 看自己的站内通知 v2ex member(等于「看我自己」)Token 获取方式还是官方后台那一套,用环境变量 V2EX_TOKEN 或者在 ~/.v2ex.json 里写入即可,支持配置代理。
整个工具其实就是遵循一个原则:尽量少给你加「界面」,多给你「数据」。
如果你只是偶尔想刷刷 V2EX ,浏览器肯定是最舒服的入口;
但如果你经常开着终端、写脚本、玩 AI / Agent ,或者就是习惯用搜索刷各种站内话题,那可能会用得上这么一个小东西。
项目完全开源,名字叫 v2ex-cli,包名是 @pengyanai/v2ex-cli,欢迎试用、拍砖,也可以直接提 issue 说说你希望它还能多做点什么。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.