DEV Community

Alexander Schneider
Alexander Schneider

Posted on

adanos-cli: Stock & Crypto Sentiment Straight From Your Terminal

Retail traders check sentiment by tab-switching between Reddit, X, and news sites. There is no single view. adanos-cli is that single view.

What is adanos-cli?

adanos-cli is a Python CLI that queries the Adanos Finance Sentiment API. It aggregates mention counts, buzz scores, and sentiment polarity from four sources:

  • Reddit — 50+ stock and crypto subreddits (r/wallstreetbets, r/stocks, r/cryptocurrency, etc.)
  • X / Twitter — FinTwit tweet and reply analysis
  • Polymarket — prediction market prices, liquidity, and trade volume
  • Financial News — RSS-sourced article sentiment
pip install adanos-cli
adanos onboard wizard
adanos stock TSLA --days 7
Enter fullscreen mode Exit fullscreen mode

The Interactive Shell

Run adanos without arguments to enter an interactive shell. Plain text is interpreted as a query:

adanos-cli> How does TSLA look this week?
Enter fullscreen mode Exit fullscreen mode

The CLI parses intent, routes to the right endpoints, and returns a formatted report. It handles English and German, $TICKER syntax, crypto pairs like BTC/ETH, and "vs" comparisons.

A lightweight NLP module classifies input into nine intent types (stock report, crypto compare, trending scan, briefing, watchlist report, search fallback, etc.) with zero external dependencies.

Slash commands map directly to CLI features:

adanos-cli> /scan --asset stocks --style daytrader
adanos-cli> /trending --platform reddit-stocks --dimension sectors
adanos-cli> /briefing --profile investor --days 30
Enter fullscreen mode Exit fullscreen mode

Morning Scan for Day Traders

adanos scan --asset stocks --style daytrader --limit 10
Enter fullscreen mode Exit fullscreen mode

The scanner pulls trending data from all four platforms, merges by ticker, and computes a consensus buzz score, cross-platform sentiment, and confidence rating (0-99). Confidence weighs source diversity and mention volume.

Results carry a directional signal: bullish, bearish, neutral, or hot (high buzz, unclear direction). Drill into a ticker:

adanos stock NVDA --days 1
Enter fullscreen mode Exit fullscreen mode

This returns a per-platform breakdown with Reddit mentions, X tweet volume, Polymarket contract prices, and news sentiment.

Crypto Portfolio Monitoring

Create a watchlist once, query it daily:

adanos watchlist add portfolio --asset crypto --symbols BTC,ETH,SOL,AVAX
adanos watchlist add portfolio --asset stocks --symbols MSTR,COIN
adanos watchlist report portfolio --asset all --days 7
Enter fullscreen mode Exit fullscreen mode

Watchlists live in ~/.config/adanos-cli/watchlists.json and plug into the briefing command:

adanos briefing --from-watchlist portfolio --days 1
Enter fullscreen mode Exit fullscreen mode

Briefings show top movers and sector heat, scoped to your assets. Seven profile presets (starter, daytrader, swing, investor, crypto, research, portfolio) control focus and depth.

Quick Comparisons

Side-by-side across platforms:

adanos compare --platform reddit-stocks TSLA,NVDA,AMD --days 7
Enter fullscreen mode Exit fullscreen mode

Or natural language:

adanos ask "TSLA vs NVDA"
adanos ask "crypto BTC/ETH"
Enter fullscreen mode Exit fullscreen mode

The parser detects vs and / patterns, resolves them to compare endpoints, and returns a unified table.

AI Agent Integration

Every command supports --output json. Errors go to stderr as structured JSON. stdout always contains parseable output.

adanos --output json capabilities
adanos --output json endpoint list
adanos --output json stock AAPL --days 7
Enter fullscreen mode Exit fullscreen mode

Design choices for automation:

  • Exit codes: 0 success, 1 runtime error, 2 auth/usage error
  • 31 endpoint IDs map 1:1 to the OpenAPI spec, callable via adanos endpoint call <id>
  • capabilities returns a self-describing JSON manifest (version, commands, auth setup, endpoint count)

Cron job piping the daily scan into Slack:

adanos --output json scan --asset stocks --style daytrader --limit 5 \
  | jq '{text: .rows[:3] | map(.ticker + " " + .signal) | join(", ")}' \
  | curl -X POST -H 'Content-Type: application/json' -d @- "$SLACK_WEBHOOK"
Enter fullscreen mode Exit fullscreen mode

Research and Discovery

# Top stocks by Reddit mentions today
adanos trending --platform reddit-stocks --dimension main --days 1 --limit 20

# Sector-level sentiment
adanos trending --platform reddit-stocks --dimension sectors

# Country exposure
adanos trending --platform news-stocks --dimension countries

# Search across a platform
adanos search --platform x-stocks "Microsoft"
Enter fullscreen mode Exit fullscreen mode

Check data freshness:

adanos health --platform all
adanos stats --platform reddit-stocks
Enter fullscreen mode Exit fullscreen mode

Direct Endpoint Access

The CLI exposes all 31 API endpoints as callable IDs:

adanos endpoint list
adanos endpoint call reddit-stocks.trending --days 1 --limit 10
adanos endpoint call x-stocks.stock --ticker AAPL --days 7
adanos endpoint call polymarket-stocks.compare --tickers TSLA,NVDA
Enter fullscreen mode Exit fullscreen mode

Every OpenAPI path is callable with no additional setup.

How the Sentiment Engine Works

The API runs a VADER + Twitter-RoBERTa ONNX ensemble:

  • VADER handles lexicon-based polarity with 55 custom finance terms (earnings language, momentum phrases, meme-stock slang)
  • Twitter-RoBERTa (quantized ONNX, 126 MB) covers informal social text that rule-based scoring misses

Scores blend at 40/60 VADER/RoBERTa weight with a ±0.14 neutral threshold.

The Buzz Score (0-100) rolls mention volume, sentiment strength, upvote quality, subreddit diversity, and trend direction into one number. A soft-cap function compresses the upper range so 85+ requires genuine multi-source attention.

Installation & Setup

pip install adanos-cli
# or
pipx install adanos-cli

# Guided setup
adanos onboard wizard

# Or set an existing key
adanos config set --api-key sk_live_xxx
Enter fullscreen mode Exit fullscreen mode

Requires Python 3.10+. Config lives in ~/.config/adanos-cli/config.json. Environment variables (ADANOS_API_KEY, ADANOS_BASE_URL) and CLI flags override it.

Free tier: 250 requests/month.

Links

Top comments (0)