AI-Powered Feed Filtering, Translation, and Post Explanation for X/Twitter and Weibo
Tired of your X/Twitter or Weibo feed being flooded with low-value content? X Recommender Plus uses AI to score posts, fade or hide weak content, translate posts inline, and explain the current post in a side panel with optional media understanding. The current version supports both X and Weibo, works with local or cloud models, and now includes multimodal side-panel analysis plus temporary model switching for retries.
🌟 Core Features: ✔ AI-Powered Scoring
Uses large language models (LLM) to analyze posts on X/Twitter and Weibo
Scores range from 0-100 based on information value, originality, clarity, and engagement potential
Filtering now defaults to text-only scoring for better speed, with optional media-aware scoring when you want images and video covers included
Supports OpenAI-compatible APIs plus local backends such as LM Studio, Ollama, llama.cpp, and LocalAI
✔ Inline Translation from the Score Menu
Click the score badge to open quick actions near each post
Translate both the main post text and quoted post text while keeping the original content visible
Configure target languages and choose Chrome Translator, LLM, or ask-on-first-use strategy
Retry a translation with a different configured model without changing your default API
✔ Side Panel Explanations with Follow-Up Chat
Open the current post in the extension side panel and get a concise explanation
Keep asking follow-up questions about the same post in an ongoing chat
Side panel responses can stream progressively for a faster feel
Side panel explanations can now include image and video-cover context from both X and Weibo posts
✔ Smart Filtering and Reputation Tools
Low-quality posts automatically become transparent or fully hidden
High-quality content remains fully visible
Keep per-post filter toggle, score detail, and reputation actions in the score menu
Whitelisted accounts can bypass filtering immediately and use platform-scoped IDs for X and Weibo
✔ Fully Customizable
Create custom scoring prompts tailored to your preferences
Fine-tune score threshold, hide/opacity behavior, cache duration, translation targets, and engine strategy
Detect whether Chrome built-in Gemini (Prompt API) and Chrome Translator are available before enabling them
Switch between multiple configured models and temporarily override the model for specific side-panel or translation retries
✔ Privacy-Focused
All processing happens locally or through your configured API
No data collected by us
Scores and state are cached locally only
Local model setups are fully supported if you want an offline-first workflow
💡 Why do you need it?
Filter out gossip, spam, rage bait, self-promotion, and clickbait automatically
Focus on higher-signal content across both X/Twitter and Weibo
Understand unfamiliar posts faster with built-in translation and side-panel explanations
Use local or cloud models depending on your privacy and speed preferences
From now on, your social feed can stay readable, explainable, and under your control.
“Not just a filter, but your AI-powered feed assistant”
![]()
Download the extension package (X-Recommender.zip)
Open Chrome and navigate to chrome://extensions/
Enable “Developer mode” (top right corner)
Click “Load unpacked” and select the extracted folder
Install the extension
Click the extension icon to open settings
Configure your preferred LLM API (or use local models like LM Studio/Ollama)
Set your preferred score threshold and opacity/hide behavior
Configure translation targets, translation engine strategy, and optional media-aware scoring
Optionally enable Chrome built-in Gemini for filtering after support check
Browse X/Twitter or Weibo as usual and use the score menu to translate, inspect, or explain posts
Cloud APIs: OpenAI, DeepSeek, and other OpenAI-compatible endpoints
Local APIs: LM Studio, Ollama, llama.cpp, LocalAI
Custom: Any OpenAI-compatible API endpoint
Release Date: 2026-07-01
Added media-aware side panel explanations for both X and Weibo posts, including image and video-cover previews from main posts and quoted posts
Added multimodal support for local model backends, including local OpenAI-compatible servers, LM Studio, and Ollama, so side panel explanations can include attached media
Added temporary model switching for side panel reruns and translation retries, so one request can use a different configured model without changing the default API
Filtering now defaults to text-only scoring for a faster timeline experience, while media-aware scoring remains available as an opt-in setting
Improved side panel tab isolation, loading states, and media preview behavior so explanations stay scoped to the current tab and current post
Weibo media previews are now hydrated through the page context, improving preview reliability for protected image URLs
Fixed Weibo detail-page scoring after SPA navigation and improved score badge placement on Weibo detail pages
Fixed translation placement for reposts and Weibo detail pages, and made empty or no-op translation responses less likely to be accepted as valid results
Fixed whitelist handling so trusted tweets can apply the whitelist result immediately and stale whitelist-only cached scores no longer persist incorrectly
Release Date: 2026-06-25
Added Weibo support for filtering, score badges, translation actions, and side panel explanations
Added platform-scoped whitelist entries: X uses handles like x/owen, while Weibo uses numeric IDs like weibo/6882232397
Extended post extraction, score actions, and side panel context so the same core workflow now works across both X and Weibo
Release Date: 2026-06-11
Added an extension side panel for explaining the current tweet text from the score menu
Added follow-up chat in the side panel so you can keep asking about the same tweet
Added model response streaming for side panel explanations and LLM translations
Added side panel i18n text and Chrome side panel permission/configuration
Updated the extension display name, settings title, and footer branding to X Recommender Plus
Persisted side panel state so the current tweet and explanation can be restored after reopening
Fixed side panel follow-up request handling so later questions keep the current tweet context
Fixed stale side panel loading states by recovering old in-progress states after timeout
Prevented older translation responses from overwriting newer translation requests
Release Date: 2026-06-02
Added reputation-based score badges that accumulate scoring history per account
Added a reputation summary entry in the score menu so you can view scored count, average score, and current badge status for a user
Added a quick profile shortcut from the score menu and reputation modal to open the user’s X profile
Badge colors now automatically follow a user’s accumulated average score after enough history is collected
Whitelisted accounts now use a dedicated reputation state so the shield-style badge and menu messaging stay consistent
Fixed whitelist reputation handling so whitelisted accounts are excluded from reputation statistics and no longer show misleading reputation data
Improved compatibility for old cached score data by rebuilding reputation summaries from stored detail records when needed
Release Date: 2026-05-30
Added Chrome built-in Gemini (Prompt API) support check in Filter settings
Added a new toggle to prefer Chrome built-in Gemini for tweet filtering scores
Added automatic fallback to the configured external LLM when Chrome Gemini is unavailable or scoring fails
Kept existing filter behavior unchanged when the Gemini toggle is off
Added full i18n text coverage for the new Gemini filter settings and status labels
Release Date: 2026-05-19
Added a score-badge action menu: clicking the top-right score now opens a menu with quick translation targets (English and Simplified Chinese by default)
Added tweet translation for both main tweet text and quoted tweet text, while preserving original content and rendering translation blocks below
Added translation settings in popup: target languages are now multi-select and persisted
Added translation engine strategy options: Ask on first use, Force Chrome, or Force LLM
Added Chrome Translator API detection and status display in settings, with engine options enabled/disabled by availability
Changed single-click score behavior from direct toggle to menu entry, while keeping “Toggle Filter” and preserving double-click score details
Improved repeated translation behavior by reusing existing translation blocks for the same language, preventing duplicate stacking
Added complete i18n keys for translation UI and status/error messaging in both languages
Release Date: 2026-03-15
Added “Clear Cache” button to manually clear all cached scores
Added localization support for the new cache clearing feature
Release Date: 2026-03-15
Improved LM Studio compatibility for Qwen-style models by making the no-thinking fallback path more robust
Prevented score parsing from accidentally reading reasoning step numbers as final scores
Added an LM Studio setup hint recommending non-thinking models first
Added guidance for advanced users to disable thinking via LM Studio Prompt Template settings
Release Date: 2026-03-13
Fix issue where preset APIs like Ollama couldn’t be added after changing URL to LAN IP (preset values overriding user input)
Preset API name and URL now prioritize user input
Thread pass-through optimization: tweets in the same conversation now reuse the first scored result, avoiding repeated scoring for follow-up tweets
Improved conversation detection by prioritizing conversation_id grouping (with safe fallback logic), covering mixed-author thread cases like repost + comment chains
Reduced scroll flicker by disabling opacity transition on cached re-apply paths during timeline refresh/scroll
Moved adaptive viewport timeout controls under hide mode only; these options are now shown only when filter mode is set to hide
Release Date: 2026-03-04
Pre-hide unscored tweets: New tweets stay hidden until scored, then are shown or hidden by score (reduces timeline jumps)
Changed batch size from 5 to 1 to lower timeline jump probability
Changed temperature from 0.1 to 0 for more stable scoring
Added cache check before scoring to avoid duplicate requests
Added viewport detection to prevent large-scale node removal outside viewport causing scroll anchor jumps
Optimized tweet ID extraction logic
Release Date: 2026-03-03
Added support for multiple models - you can now configure and switch between multiple LLM APIs
Added thinking mode auto-disable for Ollama and OpenAI compatible APIs
Fixed issue where adding a second model would not display in the list (race condition and storage sync delay)
Release Date: 2026-02-27
Fixed hide mode filtering to only use the hide threshold, preventing overlap with opacity behavior
Improved tweet text fallback extraction (innerText || textContent) to reduce unstable hide/show flicker
Updated extension version to 1.5.1
Release Date: 2026-02-21
ID Whitelist: Add trusted users to a whitelist - their tweets will not be filtered and display as ∞
Filter Mode: Choose between opacity (fade) or hide completely
No-Text Tweet Scoring: Option to score tweets with only images/videos
Feedback Link: Added feedback and follow link in the footer
Three-Tab Settings: Reorganized settings into API, Filter, and Whitelist tabs
Fixed whitelist matching to correctly extract username from author text
Unified blue background for all scores (removed color variation by score)
Adjusted retweet badge position
Prevented duplicate API entries
Removed API config from filter tab
Redesigned app icon with transparent background
Added multi-language support for Chrome Web Store
Improved transparency controls
Added support for local LLM models (LM Studio, Ollama, llama.cpp)
Introduced customizable scoring prompts
Improved caching mechanism
Added opacity controls for low-quality tweets
Improved performance and stability
Initial release
Basic tweet scoring with OpenAI API support