AriadeX is a local Chrome extension for turning one tweet into inspectable context.
It has two main workflows:
Explore Path: reconstructs the structural path that brought a tweet into view.Top Takes: ranks objective quote-discourse around a source tweet.
AriadeX is not a replacement X client, a whole-conversation crawler, or a personalized feed. It keeps evidence visible, makes generated prose optional, and favors cached/resumable work over fragile one-shot flows.
Install dependencies:
cd /home/pauloabelha/ariadex
npm installCreate .env:
X_BEARER_TOKEN=your_x_api_bearer_token
OPENAI_API_KEY=your_openai_api_key
REPORT_BACKEND_BASE_URL=http://127.0.0.1:8787Generate browser runtime config:
npm run sync:envStart the optional report/gist backend:
npm run report:backendLoad the extension:
- Open
chrome://extensions. - Enable Developer mode.
- Click
Load unpacked. - Select
/home/pauloabelha/ariadex/extension. - Open
https://x.com. - Click
Explore PathorTop Takeson a tweet card.
npm test
npm run sync:env
npm run report:backend
node scripts/run_top_takes.js https://x.com/handle/status/123The extension reads extension/dev_env.generated.json, generated from .env.
Supported values:
X_BEARER_TOKENorX_API_BEARER_TOKENARIADEX_X_API_BASE_URLorX_API_BASE_URLREPORT_BACKEND_BASE_URLOPENAI_API_KEYorARIADEX_OPENAI_API_KEYOPENAI_MODEL,REPORT_MODEL_NAME,ARIADEX_OPENAI_ARTICLE_MODEL, orARIADEX_OPENAI_MODELOPENAI_BASE_URLorARIADEX_OPENAI_BASE_URL
Top Takes runner knobs:
TOP_TAKES_MAX_QUOTE_TWEETSTOP_TAKES_MAX_QUOTE_PAGESTOP_TAKES_MAX_RATE_LIMIT_RETRIESTOP_TAKES_RATE_LIMIT_RETRY_DELAY_MSTOP_TAKES_RATE_LIMIT_MAX_WAIT_MS
Defaults:
- X API base URL:
https://api.x.com/2 - report backend:
http://127.0.0.1:8787 - OpenAI API base URL:
https://api.openai.com/v1 - OpenAI model:
gpt-4o-mini
Do not commit .env or extension/dev_env.generated.json.
ariadex/
extension/ Chrome extension runtime
server/ local report/gist backend
scripts/ local developer runners
prompts/ report and gist prompts
tests/ Node test suite
docs/ product and implementation docs
Key files:
extension/content.js: button injection, panel UI, progress messages, reconnect behavior.extension/background.js: Chrome runtime orchestration, config loading, X/OpenAI calls.extension/algo.js: pure algorithms for path resolution, Top Takes, scoring, caching helpers.server/report_backend.js: local backend for report and gist generation.scripts/run_top_takes.js: local Top Takes runner using the same background/controller path.
Read in this order:
The canonical Top Takes collect/rank spec is docs/top_takes.md.
Run:
npm testThe test suite uses Node's built-in test runner and mock Chrome adapters. It covers root-path resolution, references, people, reply chains, Top Takes collection/ranking/cache behavior, rate-limit retry, OpenAI timing estimates, reconnect behavior, and panel rendering helpers.
AriadeX is a focused local prototype. It is designed for developer use from this repository, not packaged distribution.