catbus CLI
One CLI with unified JSON output for 11 platforms, from Xiaohongshu and Douyin to Taobao, X and 12306, with an agent skill
- 537 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- Sends requests as your account and can publish, like, follow and send direct messages
- Keeps platform sessions and cookies in ~/.catbus/, and under risk control the account can be restricted or banned
- Passes platform checks: reproduces a browser fingerprint and solves slider captchas itself, so use it on your own accounts and public data
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/catbusDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Sends requests as your account and can publish, like, follow and send direct messages
- Keeps platform sessions and cookies in ~/.catbus/, and under risk control the account can be restricted or banned
- Passes platform checks: reproduces a browser fingerprint and solves slider captchas itself, so use it on your own accounts and public data
This is third-party code. Review the repository files before installing.
What it does
catbus is a Node.js command-line tool that calls the web features of eleven platforms through one syntax: search, details, comments, users, recommendation feeds, downloads, publishing, likes and follows, direct messages, live-stream chat, and for 12306 train seat availability and fares. Content is called item everywhere and search is search everywhere, so catbus bilibili item search becomes catbus xhs item search by changing one word. Output is always JSON in a single envelope, { ok, data, page, error }, with the next command in error.hint and stable exit codes. catbus platforms prints the full capability list per platform and catbus doctor checks the environment. Login works with QR scanning, SMS or cookie import, and sessions are stored in ~/.catbus/ per platform, client and account. The network layer reproduces Chrome's TLS and HTTP/2 fingerprint, platform signatures are computed by the platforms' own JavaScript in a sandbox, and slider and click captchas are solved locally with ONNX and OpenCV. The repository includes an agent skill: npx skills add cv-cat/catbus installs it for Claude Code, Cursor or Codex. The skill loads platform and task details (collection, publishing, live streams, errors) only when needed.
Who it is for. For analysts and developers who need data from Chinese social networks and marketplaces under an agent's control, and for creators who run their own accounts there.
Good fit when
- You need to collect posts and comments by keyword from several platforms in one format
- An agent has to download videos and author data from your own account into JSON
- You want to record live-stream chat from Douyin or Bilibili
- You need seat availability and fares for a train through 12306 without searching by hand
- You want to pipe one command's output into the next, since every object carries an id and a url
Not a fit when
- You need guarantees against blocking: a platform may enable anti-bot checks, and catbus then reports RISK_CONTROL without retrying
- You need a platform's official API with a contract and support: catbus works through the web interfaces
- You need a commercial data pull: the author allows study and research use, and the platforms' terms remain your responsibility
- The environment has no suitable Node.js and you cannot install one
Example request
Use catbus to find 20 fresh Xiaohongshu notes about camping and save the titles and links as JSONLimitations
Needs Node.js ^22.22.2, ^24.15.0 or 26 and newer. Install with `npm i -g catbus-cli`; a Docker image is available too.
- Most actions need a login to the platform account. Platform rate limits and risk control still apply, and a trigger returns a RISK_CONTROL error.
- Dangerous operations require the explicit -y flag, and a post can be published visible only to you.
- The author states the project is for study and research, has no affiliation with the platforms and is not responsible for account bans.
- Some platforms on the roadmap (Instagram, YouTube, Facebook and others) are not built yet.
How to disable. Remove the tool with `npm rm -g catbus-cli` and the skill with `npx skills remove catbus` (or by deleting the catbus folder from the agent's skills directory). Account sessions live in ~/.catbus/ and the directory can be deleted by hand.
FAQ
How do I install the catbus skill in Claude Code?
Run `npx skills add cv-cat/catbus`. The skill sits in .claude/skills/catbus and .agents/skills/catbus; its main page is short and platform and workflow files are read on demand.
Which platforms does catbus support?
Eleven: Xiaohongshu, Douyin, TikTok, Bilibili, Kuaishou, Weibo, Xianyu, Taobao, JD, X and 12306. `catbus platforms` prints the capability table for each.
Where does catbus store login data?
Locally in ~/.catbus/ with 0700 and 0600 permissions, separate for each platform, client and account. According to the author it collects and sends nothing, and there is no telemetry.
What should I do on a RISK_CONTROL error?
It means the platform's risk control fired: catbus does not retry silently. Stop, lower the request rate and pass any check in the account itself; error.hint shows the next command.
How do I run catbus without Node.js on the machine?
The repository ships a Dockerfile and compose.yaml, and docs/guide/docker.md describes running it in a container.
Discussion
No questions or reviews yet.
Related
CLI toolsA skill that routes a question to the right AI platform and, via browser automation, collects the answer from its native search
The news-extractor skill pulls the title, text, images and metadata from a link on 12 news platforms and returns JSON or Markdown, with no browser
A CLI and MCP server that lets an agent drive your real Chrome with its logged-in sessions: 103 commands across 36 platforms plus browser automation
Turns any website into a CLI command and lets an agent drive the user's already logged-in browser via Playwright
CLI and skill that let an agent read and search Twitter, Reddit, YouTube, GitHub, Bilibili and Xiaohongshu without paid APIs
A Twitter/X CLI with an agent skill: feeds, bookmarks, search and profiles in the terminal, plus posting, replies and likes with no API keys
Comparison with similar tools
Entries that share the main search query, and how they differ.
| Entry | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| catbus (this entry) | no | 537 | ||
| Agent Reach | no | 106,199 | reads Twitter, Reddit, YouTube, GitHub and a few Chinese networks, with no publishing or marketplace login | |
| xiaohongshu-mcp | no | not required | 16,650 | an MCP server for Xiaohongshu only, while catbus covers eleven platforms |
| bilibili-cli | no | 1,130 | a CLI for the single Bilibili platform |
README in short
The page is in Chinese with English, Japanese, Korean and Traditional Chinese translations. It opens with the idea of one interface to many platforms, then lists the strengths (same commands everywhere, Node only, login stays on your computer, byte-level request checks against upstream, a browser-grade network stack), project numbers and an architecture diagram. The section for agents describes the response envelope and safety rules, followed by a quick start, a documentation table and a disclaimer. The license is MIT.