CDRP
Chrome Discord Rich Presence. Shows the tab you're currently on as your activity on Discord, with the site's favicon as the icon.
A browser extension can't talk to Discord by itself, since Rich Presence runs over a local pipe that extensions aren't allowed to use. So there are two parts:
- a Chrome extension that watches the active tab
- a small Node app that receives the tab over a local WebSocket and sends it to the Discord desktop client
Both run on your machine. Nothing is sent anywhere else.
Requirements
- Discord desktop app, logged in (the web app does not support Rich Presence)
- Node.js 18 or newer
- A Chromium browser (Chrome, Edge, Brave)
Setup
A public Discord application ID is already set in helper/index.js, so you don't
need a Discord developer account. Your activity shows up under that app's name.
If you want it to show your own name, create an app at
https://discord.com/developers/applications and set the DISCORD_CLIENT_ID
environment variable to its Application ID.
1. Run the helper
cd helper
npm install
npm start
It should connect to Discord and start listening on ws://127.0.0.1:3700.
Leave it running, or set up auto-start (below) so you don't have to.
2. Load the extension
- Open
chrome://extensions - Enable Developer mode
- Click Load unpacked and choose the
extensionfolder
Switch tabs and your activity updates within a few seconds. Each site uses its favicon as the icon; internal pages (new tab, settings) fall back to the Chrome logo.
Turn it off and on
Click the extension's toolbar icon and use the Turn off / Turn on button. When off, the activity is cleared and an OFF badge shows on the icon. The choice is remembered until you change it. The helper keeps running either way; "off" just tells it to show nothing.
Start with Windows
To run the helper automatically and hidden at login:
powershell -ExecutionPolicy Bypass -File install-autostart.ps1
To undo it:
powershell -ExecutionPolicy Bypass -File uninstall-autostart.ps1
Privacy
Anyone who can see your Discord profile will see the tab title and site. To limit
this, edit the settings at the top of extension/background.js:
PRIVACY_MODE = "domain"shows only the site, not page titlesHIDDEN_DOMAINSlists sites that show a generic "Browsing" instead- Incognito tabs are always hidden, as long as the extension is allowed in incognito (chrome://extensions, Details, Allow in Incognito)
Troubleshooting
- Can't reach Discord: the desktop app isn't running, or you aren't logged in.
- Nothing on your profile: turn on Settings, Activity Privacy, "Share your detected activities with others".
- Extension not updating: make sure the helper is running and the port matches (3700 by default). Reload the extension after editing it.
Layout
extension/ Chrome extension (tracks the active tab)
helper/ Node bridge to the Discord desktop client
install-autostart.ps1, uninstall-autostart.ps1 Windows startup helpers
Configuration
- Activity text and fallback image:
helper/index.js - Which icon a tab shows, what is hidden:
extension/background.js - Port: change
WS_PORTin the helper andWS_URLin the extension together