v2ex-cli:给终端党和 AI Agent 用的 V2EX 命令行工具

8 小时 34 分钟前
 kashgari4j

最近折腾了一个命令行版的 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 做了几个刻意的设计取舍:

所以无论是人肉在终端里扫一眼,还是写成 cron / 监控脚本 / AI 工具,都比较顺手。


能做些什么?

目前支持的命令大致包括:

想用来做点「小自动化」的话,比如:

这类场景都可以直接靠一两行命令拼出来。


搜索场景举几个更接地气的例子

平时在站内大家应该都干过这些事:刷家庭矛盾、刷副业赚钱贴、看这一个月里又有多少人讨论某个话题。用 v2ex-cli 可以直接在终端里这么玩:

比如一口气看最近提到「家庭 / 矛盾 / 孩子 / 教育 / 婚姻 / 婆媳」这些关键词的帖子(背后是 SOV2EX 的 OR 查询):

v2ex search '家庭|矛盾|孩子|教育|原生家庭|父母|养老|婚姻|婆媳'

刷「副业 / 赚钱」相关的帖子里,按回复数找出最热的前三个,只看标题和回复数:

v2ex search '副业|赚钱'

想看过去 30 天里有多少贴在讨论「 AI 编辑器」这类话题,也可以直接算一把:

v2ex search 'AI 编辑器' --sort created

上面这些,本质上就是把大家平时在网页上点来点去的动作,压成了几条命令;不管是自己在终端里看看,还是挂到某个监控脚本 / RSS / Agent 上,都比较顺手。


关于鉴权和隐私

V2EX 的公开 API 本身就支持匿名访问,所以大部分读操作都 不需要 token:

只有涉及到你自己账号的部分才需要填 token ,比如:

Token 获取方式还是官方后台那一套,用环境变量 V2EX_TOKEN 或者在 ~/.v2ex.json 里写入即可,支持配置代理。


给爱折腾的人准备的

整个工具其实就是遵循一个原则:尽量少给你加「界面」,多给你「数据」

如果你只是偶尔想刷刷 V2EX ,浏览器肯定是最舒服的入口;
但如果你经常开着终端、写脚本、玩 AI / Agent ,或者就是习惯用搜索刷各种站内话题,那可能会用得上这么一个小东西。

项目完全开源,名字叫 v2ex-cli,包名是 @pengyanai/v2ex-cli,欢迎试用、拍砖,也可以直接提 issue 说说你希望它还能多做点什么。

418 次点击
所在节点    分享创造
7 条回复
tengxun
8 小时 5 分钟前
win11 下有点问题,获取不到,代理也设置了 直接获取 json 也能获取到:
tengxun
8 小时 5 分钟前
v2ex hot --limit 5
v2ex: API error: [GET] "https://www.v2ex.com/api/topics/hot.json": <no response> fetch failed
tengxun
8 小时 4 分钟前
D:\my>curl https://www.v2ex.com/api/topics/hot.json
[{"node": {"avatar_large": "https://xx/864_large.png?m=17
SethShi
7 小时 42 分钟前
别写 cli ,直接把接口文档扔给 ai 就可以了,生成一个 skikl
SethShi
7 小时 42 分钟前
skill
knightdf
7 小时 29 分钟前
opencli?
yhxx
7 小时 7 分钟前
https://www.v2ex.com/t/613470
前几年也写过一个,感觉这种东西还挺好玩的,适合用来摸鱼

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1213872

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX