mp2rss-cli

command module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 25, 2026 License: MIT Imports: 1 Imported by: 0

README

Mp2rss-cli(微信公众号订阅,公众号转RSS、JSON)

Mp2RSS 的命令行客户端 —— 管理订阅、订阅微信公众号,文章转RSS、JSON,查看历史文章。AI Agent 友好(Claude Code / Cursor skills)。Keywords: wechat, weixin, 微信, 公众号, rss, feed, subscription, 订阅.

Release Downloads npm npm downloads Go Report Card

安装

# 一键安装脚本(macOS / Linux)
curl -fsSL https://raw.githubusercontent.com/areyoubugcoder/mp2rss-cli/main/scripts/install.sh | sh

# npm(Node ≥ 18)
pnpm add -g @mp2rss/cli

也可在 Releases 直接下载对应平台二进制。完整安装/卸载说明见 文档站 · 安装

升级到最新版本:

mp2rss update           # 检查并升级
mp2rss update --check   # 只检查不升级

CLI 如何使用

1. 安装 CLI

参考上面 安装 章节。

2. 登录
mp2rss auth login

默认浏览器 loopback 授权,登录后凭证写入 ~/.mp2rss/config.json。也可用 mp2rss auth login -k <feed-key> 直传 Feed Key(适合 CI / 无头环境),或 --no-browser 仅打印授权 URL。查看登录态:mp2rss auth status

3. 使用
mp2rss mp subscribe https://mp.weixin.qq.com/s/xxxxxxxxxx   # 订阅一个公众号
mp2rss mp list                                              # 列出订阅
mp2rss mp list -q 财经                                      # 模糊搜索已订阅源
mp2rss mp articles <mpId>                                   # 看该公众号历史文章
mp2rss mp list -o json | jq '.items[].mpName'              # 结构化数据 + jq 处理

⚠️ 订阅时传入的是 公众号文章的 URLhttps://mp.weixin.qq.com/s/...),不是公众号名字。

完整命令参考

认证
命令 说明
mp2rss auth login 浏览器 loopback 登录;-k <feed-key> 直传;--no-browser 仅打印授权 URL
mp2rss auth status 查看登录状态、Feed Key 来源(env / config / none)、API URL、最近登录时间
mp2rss auth logout 清空本地 Feed Key(保留 API URL 配置)
公众号
命令 说明
mp2rss mp list 列出订阅;-q <keyword> 模糊搜索,-p <page> 翻页,--page-size <n> 每页条数(最大 50)
mp2rss mp search <keyword> mp list -q 的语法糖,flag 与输出一致
mp2rss mp subscribe <article-url> 订阅公众号;参数必须是 mp.weixin.qq.com/s/... 文章 URL
mp2rss mp remove <mpId> 按 mpId 取消订阅;-y 跳过确认
mp2rss mp articles <mpId> 列出指定公众号的历史文章;-p / --page-size(最大 100)
命令表格说明
  • 所有命令默认 -o table,加 -o json 输出结构化数据(auth login 例外,仅文本反馈)
  • JSON 错误形态统一为 {"error":{"message":"...","code":<int>}}code 为 HTTP 状态码或 CLI exit code
  • Exit codes:0 成功 / 1 通用错误(网络)/ 2 参数错误 / 3 鉴权失败 / 4 资源不存在 / 5 上游不可用

全局参数

所有子命令都支持以下持久化 flag:

Flag 等价环境变量 说明
-o, --output <table|json> 输出格式,默认 table
--api-key <feed-key> MP2RSS_FEED_KEY 覆盖 Feed Key
--api-url <url> MP2RSS_API_URL 覆盖 API 地址(默认 https://mp2rss.bugcode.dev

优先级(高 → 低):命令行 flag > 环境变量 > 配置文件 > 默认值。

配置

本地配置 ~/.mp2rss/config.json

{
  "feed_key": "9f3a2c...(64 位 hex)",
  "api_url": "https://mp2rss.bugcode.dev",
  "last_login_at": 1747194198,
  "last_verify_at": 1747194198,
  ...
}

Feed Key 可在 https://mp2rss.bugcode.dev/ 登录后查看或重置。FAQ / 故障排查见 文档站 · FAQ

AI Agent 如何使用

Mp2rss 在 skills/ 目录提供两个 agent skill —— mp2rss-auth(登录态管理)和 mp2rss-mp(订阅与文章),让 AI Agent 用自然语言驱动 Mp2rss CLI。完整安装与使用步骤见 AI Agent 安装指南

快速安装
# 1. 装 CLI(Node ≥ 18)
pnpm add -g @mp2rss/cli

# 2. 装 Skills,任选其一
npx skills add areyoubugcoder/mp2rss-cli -y -g          # Claude Code / Cursor 通用,一次装齐两个 skill
/plugin marketplace add areyoubugcoder/mp2rss-cli       # Claude Code 内置 plugin marketplace
/plugin install mp2rss-cli@mp2rss

# 3. 登录
mp2rss auth login
使用举例

安装后在 AI 客户端里直接说自然语言,agent 会自动调用对应 skill:

  • 「登录公众号 RSS 服务」/「我的 Feed Key 是什么」→ mp2rss-auth
  • 「订阅这个公众号 https://mp.weixin.qq.com/s/...」→ mp2rss mp subscribe
  • 「我订阅了哪些公众号」/「搜一下我订阅的财经类公众号」→ mp2rss mp list / search
  • 「看一下 X 这个号的最新文章」→ mp2rss mp articles
  • 「取消订阅公众号 X」/「把 X 从订阅里删了」→ mp2rss mp remove

所有命令支持 -o json,Agent 可直接解析结构化输出做后续处理。

License

MIT

Documentation

Overview

mp2rss-cli is the command-line client for mp2rss.bugcode.dev.

Directories

Path Synopsis
cmd
Package cmd wires the cobra command tree for mp2rss CLI.
Package cmd wires the cobra command tree for mp2rss CLI.
auth
Package auth implements `mp2rss auth ...` subcommands.
Package auth implements `mp2rss auth ...` subcommands.
mp
Package mp implements `mp2rss mp ...` subcommands.
Package mp implements `mp2rss mp ...` subcommands.
update
Package update implements `mp2rss update` self-updating the installed binary.
Package update implements `mp2rss update` self-updating the installed binary.
x
Package x implements `mp2rss x ...` subcommands for X (Twitter) sources.
Package x implements `mp2rss x ...` subcommands for X (Twitter) sources.
internal
authflow
Package authflow implements the OAuth Loopback flow used by `mp2rss auth login`.
Package authflow implements the OAuth Loopback flow used by `mp2rss auth login`.
browser
Package browser opens URLs in the user's default browser, best-effort.
Package browser opens URLs in the user's default browser, best-effort.
client
Package client is a thin HTTP wrapper around the mp2rss Open API.
Package client is a thin HTTP wrapper around the mp2rss Open API.
cliopts
Package cliopts exposes the shared command dependency surface.
Package cliopts exposes the shared command dependency surface.
config
Package config persists CLI configuration to ~/.mp2rss/config.json.
Package config persists CLI configuration to ~/.mp2rss/config.json.
errs
Package errs defines exit-code-aware typed errors for the CLI.
Package errs defines exit-code-aware typed errors for the CLI.
output
Package output renders command results as table or JSON.
Package output renders command results as table or JSON.
prompt
Package prompt provides interactive terminal input helpers.
Package prompt provides interactive terminal input helpers.
version
Package version holds the CLI version, injected at build time via ldflags.
Package version holds the CLI version, injected at build time via ldflags.
test
mock-api command
Package main implements a minimal in-memory mock of the mp2rss Open API.
Package main implements a minimal in-memory mock of the mp2rss Open API.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL