| name | xint-rs | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| description | Fast X Intelligence CLI (Rust) — search, analyze, and engage on X/Twitter from the terminal. Use when: (1) user says "x research", "search x for", "search twitter for", "what are people saying about", "what's twitter saying", "check x for", "x search", "search x", (2) user wants real-time monitoring with "watch", (3) user needs AI-powered analysis with Grok ("analyze", "sentiment"), (4) user needs intelligence reports ("report"), (5) user wants to track followers ("diff"), (6) user needs trending topics ("trends"). Also supports: bookmarks, likes, following (OAuth), x-search, collections, CSV/JSON/JSONL export. Non-goals: Not for posting tweets, not for DMs, not for enterprise features. | ||||||||||||||||||||||||||||
| credentials |
|
||||||||||||||||||||||||||||
| required_env_vars |
|
||||||||||||||||||||||||||||
| requiredEnvVars |
|
||||||||||||||||||||||||||||
| primary_credential | X_BEARER_TOKEN | ||||||||||||||||||||||||||||
| primaryCredential | X_BEARER_TOKEN | ||||||||||||||||||||||||||||
| security |
|
Fast, zero-dependency binary for X/Twitter search, analysis, and engagement from the terminal. All output goes to stdout (pipe-friendly).
This skill requires sensitive credentials. Follow these guidelines:
- X_BEARER_TOKEN: Required for X API. Treat as a secret - only set in environment or
.envfile - XAI_API_KEY: Optional, needed for AI analysis. Also a secret
- X_CLIENT_ID: Optional, needed for OAuth. Less sensitive but don't expose publicly
- XAI_MANAGEMENT_API_KEY: Optional, for collections management
- This skill writes to its own
data/directory: cache, exports, snapshots, OAuth tokens - OAuth tokens stored with restrictive permissions (chmod 600)
- Review exported data before sharing - may contain sensitive search queries
- The
watchcommand supports--webhookto send data to external URLs - Only use webhooks you control (your own servers, Slack/Discord you own)
- Don't pass sensitive URLs as webhook targets
- This file documents commands and safety limits only
- Require explicit user approval before install/clone actions
- Use only documented commands and flags
- Require explicit user approval before network-facing modes (
mcp --sse,watch --webhook)
- For required tools: prefer OS package managers over
curl | bashwhen possible - Verify any installer scripts before running
xint mcpstarts a local MCP server exposing xint commands as tools- Default mode is stdio/local integration; no inbound web server unless
--sseis explicitly enabled - Respect
--policy read_only|engagement|moderationand budget guardrails
Requires env vars (in .env or exported):
X_BEARER_TOKEN— for search, profile, tweet, thread, trends, watch, reportX_CLIENT_ID— for OAuth commands (bookmarks, likes, following, diff)XAI_API_KEY— for AI analysis (analyze, report, x-search, collections upload/search)XAI_MANAGEMENT_API_KEY— for collections management (list, create, ensure, add-document)
OAuth setup (one-time): xint auth setup
xint search "AI agents" --limit 10 # Search recent tweets
xint search "AI agents" --quick # Fast mode (1 page, 10 max, 1hr cache)
xint search "AI agents" --quality # Min 10 likes filter
xint search "AI agents" --since 1d --sort likes
xint search "from:elonmusk" --limit 5
xint search "AI agents" --json # JSON output
xint search "AI agents" --jsonl # One JSON per line
xint search "AI agents" --csv # CSV output
xint search "AI agents" --sentiment # AI sentiment analysis (needs XAI_API_KEY)
xint search "AI agents" --save # Save to data/exports/xint watch "AI agents" -i 5m # Poll every 5 minutes
xint watch "@elonmusk" -i 30s # Watch user (auto-expands to from:)
xint watch "bitcoin" --webhook https://example.com/webhook # POST new tweets to webhook
xint watch "topic" --jsonl # Machine-readable outputxint profile elonmusk # User profile + recent tweets
xint profile elonmusk --json # JSON output (includes connection_status, subscription_type)
xint tweet 1234567890 # Fetch single tweet
xint thread 1234567890 # Fetch conversation threadxint reposts <tweet_id> # List users who reposted
xint reposts <tweet_id> --limit 50 # Limit results
xint reposts <tweet_id> --json # JSON outputxint users "AI researcher" # Find users by keyword
xint users "solana dev" --limit 10 --json # JSON output with limitFetch and extract full article content from any URL using xAI's web_search tool. Also supports extracting linked articles from X tweets.
# Fetch article content
xint article "https://example.com"
# Fetch + analyze with AI
xint article "https://example.com" --ai "Summarize key takeaways"
# Auto-extract article from X tweet URL and analyze
xint article "https://x.com/user/status/123456789" --ai "What are the main points?"
# Full content without truncation
xint article "https://example.com" --full
# JSON output
xint article "https://example.com" --jsonxint trends # Worldwide trending
xint trends us # US trends
xint trends --json # JSON output
xint trends --locations # List supported locationsxint analyze "What's the sentiment around AI?" # Default model: grok-4-1-fast
xint analyze --tweets saved.json # Analyze tweets from file
cat tweets.json | xint analyze --pipe # Analyze from stdin
xint analyze "question" --model grok-4 # Use specific modelAvailable models: grok-4, grok-4-1-fast (default), grok-3, grok-3-mini, grok-2
xint report "AI agents" # Full report with AI summary
xint report "AI agents" -a @user1,@user2 # Track specific accounts
xint report "AI agents" -s # Include sentiment analysis
xint report "AI agents" --save # Save to data/exports/xint diff @username # Snapshot followers, diff vs previous
xint diff @username --following # Track following instead
xint diff @username --history # Show snapshot historyxint bookmarks # List bookmarks
xint bookmarks --since 1d # Recent bookmarks
xint bookmark 1234567890 # Save tweet
xint unbookmark 1234567890 # Remove bookmark
xint likes # List liked tweets
xint like 1234567890 # Like a tweet
xint unlike 1234567890 # Unlike a tweet
xint following # List accounts you followxint costs # Today's API costs
xint costs week # Last 7 days
xint costs month # Last 30 days
xint costs budget 2.00 # Set $2/day budgetxint watchlist # List watched accounts
xint watchlist add @username "competitor" # Add with note
xint watchlist remove @username # Remove
xint watchlist check @username # Check if watchedSearch X via xAI's hosted x_search tool (Responses API). No bearer token or cookies needed — only XAI_API_KEY.
# Create a queries file
echo '["AI agents", "solana"]' > queries.json
# Run search scan → markdown report + JSON payload
xint x-search --queries-file queries.json --out-md report.md --out-json raw.json
# Date range filter
xint x-search --queries-file queries.json --from-date 2026-02-01 --to-date 2026-02-15
# Domain filtering
xint x-search --queries-file queries.json --allow-domains arxiv.org,github.com
xint x-search --queries-file queries.json --exclude-domains spam.com
# Image understanding in search results
xint x-search --queries-file queries.json --vision
# Custom model
xint x-search --queries-file queries.json --model grok-4-1-fastUpload documents, manage collections, and semantic-search via xAI Files + Collections APIs.
# List existing collections
xint collections list
# Create or find a collection
xint collections ensure --name "research-kb"
# Upload a file to xAI
xint collections upload --path ./report.md
# Semantic search across documents
xint collections search --query "AI agent frameworks"
# Sync a directory to a collection (upload + attach)
xint collections sync-dir --collection-name "kb" --dir ./docs --glob "*.md" --limit 50xint auth setup # OAuth setup (interactive)
xint auth setup --manual # Manual paste mode
xint auth status # Show auth info
xint auth refresh # Force token refresh
xint cache clear # Clear cached dataMost commands support --json for raw JSON. Search also supports:
--jsonl— one JSON object per line (great for piping)--csv— spreadsheet-compatible--markdown— formatted for reports
xint search "topic" --jsonl | jq '.username'
xint search "topic" --json | xint analyze --pipe "summarize these"
xint search "topic" --csv > export.csvX API costs ~$0.005/tweet read. Budget system prevents runaway costs:
- Default: $1.00/day limit
- Set custom:
xint costs budget <amount> - Watch command auto-stops at budget limit
- grok-4-1-fast: $0.20 input / $0.50 output (default — best value)
- grok-4: $3.00 input / $15.00 output
- grok-3: $3.00 input / $15.00 output
- grok-3-mini: $0.10 input / $0.40 output
- grok-2: $2.00 input / $10.00 output