X from terminal. Built for humans and AI agents. No API keys.
Why?
Twitter killed free API access. clix uses cookie-based auth — just log in with your browser, and you're in. Zero API keys, zero OAuth dance.
Three interfaces, one tool: rich terminal output for humans, --json/--yaml/--compact for scripts, and a built-in MCP server for AI agents.
Quick Start
# install
uv pip install clix0
# authenticate (extracts cookies from your browser)
clix auth login
Commands
Content
| Command | Description |
|---|---|
clix feed [--type for-you|following] [--count N] |
Timeline |
clix search <query> [--type top|latest|photos|videos] |
Search tweets |
clix trending |
Trending topics |
clix tweet <id> [--export FILE] |
View tweet + thread (export articles as Markdown) |
clix tweets <id1> <id2> ... |
Batch fetch tweets |
clix user <handle> |
Profile + recent tweets |
clix users <handle1> <handle2> ... |
Batch fetch users |
clix bookmarks |
List bookmarks |
clix bookmarks-folders |
List bookmark folders |
clix bookmarks-folder <id> |
View tweets in a bookmark folder |
Actions
| Command | Description |
|---|---|
clix post <text> [--reply-to ID|URL] [--image FILE] |
Post a tweet (up to 4 images) |
clix delete <id> |
Delete a tweet |
clix like <id> / clix unlike <id> |
Like / unlike |
clix retweet <id> / clix unretweet <id> |
Retweet / undo |
clix bookmark <id> / clix unbookmark <id> |
Bookmark / remove |
clix follow <handle> / clix unfollow <handle> |
Follow / unfollow |
clix block <handle> / clix unblock <handle> |
Block / unblock |
clix mute <handle> / clix unmute <handle> |
Mute / unmute |
clix download <tweet-id> [--output-dir DIR] |
Download media |
Scheduled Tweets
| Command | Description |
|---|---|
clix schedule <text> --at <time> |
Schedule a tweet |
clix scheduled |
List scheduled tweets |
clix unschedule <id> |
Cancel scheduled tweet |
Lists
| Command | Description |
|---|---|
clix lists |
View your lists |
clix lists view <id> |
Tweets from a list |
clix lists create <name> [--private] |
Create a list |
clix lists delete <id> |
Delete a list |
clix lists members <id> |
View members |
clix lists add-member <id> <handle> |
Add member |
clix lists remove-member <id> <handle> |
Remove member |
clix lists pin <id> / clix lists unpin <id> |
Pin / unpin list |
Jobs
| Command | Description |
|---|---|
clix jobs search <query> [--location LOC] [--location-type remote|onsite|hybrid] |
Search job listings on X |
clix jobs view <id> |
View job details |
Direct Messages
| Command | Description |
|---|---|
clix dm inbox |
View conversations |
clix dm send <handle> <text> |
Send a DM |
System
| Command | Description |
|---|---|
clix auth status|login|set|accounts|switch|import |
Authentication |
clix config |
Manage config |
clix doctor |
Run diagnostics |
Output Modes
Every command supports --json for structured output. Pipe detection is automatic — non-TTY gets JSON by default.
# structured JSON
clix feed --json | jq '.tweets[0].text'
# token-optimized for AI agents
clix feed --compact
# YAML
clix feed --yaml
# full text (no truncation)
clix feed --full-text
MCP Server
clix ships as an MCP server — any MCP-compatible client can use it.
{
"mcpServers": {
"clix": {
"command": "uvx",
"args": ["clix0", "mcp"]
}
}
}
Or with explicit auth:
{
"mcpServers": {
"clix": {
"command": "uvx",
"args": ["clix0", "mcp"],
"env": {
"X_AUTH_TOKEN": "your-token",
"X_CT0": "your-ct0"
}
}
}
}
46 tools covering all commands: feed, search, trending, tweets, users, bookmarks, lists, DMs, jobs, post, delete, like, unlike, retweet, unretweet, bookmark, unbookmark, follow, unfollow, block, unblock, mute, unmute, schedule, download, and more.
Proxy Support
# via environment variable
CLIX_PROXY=socks5://127.0.0.1:1080 clix feed
# via config
clix config set network.proxy socks5://127.0.0.1:1080
Contributing
See CONTRIBUTING.md.
Disclaimer
This tool is for educational and personal use only. It is not affiliated with, endorsed by, or associated with X Corp (formerly Twitter). Use at your own risk. The authors are not responsible for any consequences resulting from the use of this software. By using this tool, you agree to comply with X/Twitter's Terms of Service.
License
Metadata
Release files for clix0 0.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| clix0-0.5.1.tar.gz | 3.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| clix0-0.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.4 MB
Release files / clix0-0.5.1.tar.gz
| Download URL | clix0-0.5.1.tar.gz |
|---|---|
| Size | 3.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d74bfae236f0bd4bfafe2a69018e9bac732821489db342d185d691bee51dcca3
|
|
BLAKE2b-256 checksum How to use checksums |
6cc6c3fcb1fd623f3fc04e8efb9cd582173098b9b7bf3d72d0d9094e59f8f4b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / clix0-0.5.1-py3-none-any.whl
| Download URL | clix0-0.5.1-py3-none-any.whl |
|---|---|
| Size | 70.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d4de78a4e9eb30f925a3fd352b059362ff6617b8ca5e1390bd46d4d575810ec8
|
|
BLAKE2b-256 checksum How to use checksums |
6a53ce7c57b1f8e8767d5a19a9f46cc1685ee470c29ae46657fbe095daa06bcf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency log