https://github.com/stealthylabshq/claude-rpc
A Discord Rich Presence client that displays your Claude Code activity (current file, project, session state) directly in your Discord profile.
https://github.com/stealthylabshq/claude-rpc
anthropic claude claude-code discord-rich-presence nodejs rich-presence
Last synced: about 2 months ago
JSON representation
A Discord Rich Presence client that displays your Claude Code activity (current file, project, session state) directly in your Discord profile.
- Host: GitHub
- URL: https://github.com/stealthylabshq/claude-rpc
- Owner: StealthyLabsHQ
- Created: 2026-03-18T19:36:33.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-04-18T15:30:08.000Z (2 months ago)
- Last Synced: 2026-04-18T17:38:09.357Z (2 months ago)
- Topics: anthropic, claude, claude-code, discord-rich-presence, nodejs, rich-presence
- Language: JavaScript
- Homepage:
- Size: 166 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Claude RPC
Lightweight Discord Rich Presence for Claude Code and Claude Desktop.
## Features
- Native Tauri/Rust system tray app
- No bundled Node.js, Python, PyInstaller, or sidecar daemon
- Discord IPC implemented in Rust
- Single process in Task Manager: `Claude RPC`
- Claude Code and Claude Desktop process detection
- Claude Desktop mode detection: Chat, Code, Cowork, Dispatch
- Claude Code model/project/session timestamp from `~/.claude/projects/*.jsonl`
- Provider detection from Claude settings, env, API key, or OAuth credential patterns
- Usage limit display with cached values: 5h, All, Sonnet only, Design
- Optional visibility toggles for provider, effort, and usage limits
- RPC modes: Playing, Watching, Listening, Competing
- Optional Discord buttons in Watching mode
- DND mode to clear Discord activity while detection keeps running
- Dark/System/Light settings window
## Download
Use the latest GitHub release:
- `claude-rpc.exe` - portable app
- `Claude RPC_3.0.0_x64-setup.exe` - Windows installer
## Build
Requirements:
- Rust + Cargo
- Node.js only for Tauri CLI during build
- Visual Studio Build Tools on Windows
```powershell
npm install
npm test
npm run build
```
Outputs:
```text
bin\claude-rpc.exe
src-tauri\target\release\bundle\nsis\Claude RPC_3.0.0_x64-setup.exe
```
## Configuration
Settings are stored at:
```text
%USERPROFILE%\.claude-rpc\config.json
```
Example:
```json
{
"logoMode": "url",
"dnd": false,
"showLimits": true,
"showLimit5h": true,
"showLimitAll": true,
"showLimitSonnet": true,
"showLimitDesign": true,
"showProvider": true,
"showEffort": true,
"rpcMode": "watching",
"buttons": [
{ "label": "Claude", "url": "https://claude.ai" },
{ "label": "GitHub Repo", "url": "https://github.com/StealthyLabsHQ/claude-rpc" }
]
}
```
## Detection
| Target | Method |
|---|---|
| Claude Desktop | `claude.exe` process path |
| Claude Desktop mode | `%APPDATA%\Claude\claude_desktop_config.json` + UI Automation |
| Claude Desktop model/effort | UI Automation labels |
| Claude usage limits | UI Automation on Usage page + `.claude-rpc\limits-cache.json` |
| Claude Code | `claude.exe` process path or recent JSONL activity |
| Claude Code model | `~\.claude\settings.json` or JSONL session tail |
| Provider | env/settings/API key/OAuth credential patterns |
## Notes
Claude usage percentages are only available after Claude exposes them on the Usage page. Use `Refresh` in settings to open the Usage page, then Claude RPC caches the latest valid values.
The v3 refactor intentionally removed the legacy Node/Python runtime path. Runtime is now a single lightweight Tauri executable.
## License
ISC