Try the hosted version for free at rudel.ai
Analytics for Claude Code and Codex. Rudel gives you a dashboard with insights on your coding sessions — token usage, session duration, activity patterns, model usage, and more.
- Bun runtime installed
- Create an account at app.rudel.ai
- Install the CLI and connect it to your account:
npm install -g rudel
rudel login # authenticate via your browser
rudel enable # auto-upload sessions when Claude Code / Codex exits- Invite teammates (optional): go to Settings → Organization in the dashboard, enter their email, and share the generated invite link with them.
That's it. Your Claude Code / Codex sessions will now be uploaded automatically.
Already have past sessions? Upload them in one go:
rudel upload # interactive picker for batch uploadSee the CLI documentation for all available commands.
- You install the CLI and run
rudel enable - This registers Claude Code / Codex hooks that run when a session ends
- The hook redacts known secret patterns and uploads the session transcript to Rudel
- Transcripts are stored in ClickHouse and processed into analytics
Each uploaded session includes:
- Session ID & timestamps (start, last interaction)
- User ID & organization ID
- Project path & package name
- Git context (repository, branch, SHA, remote)
- Session transcript (full prompt & response content)
- Sub-agent usage
Rudel is designed to ingest full coding-agent session data for analytics. That means uploaded transcripts and related metadata may contain sensitive material, including source code, prompts, tool output, file contents, command output, URLs, and secrets that appeared during a session.
The current CLI redacts known secret patterns from the main transcript and sub-agent transcripts before upload, and the API reapplies the same deterministic filter before storage. Matched values are removed in full; uploads are stopped if known-pattern redaction exceeds 20% of the transcript or the bounded filter cannot establish a stable result. This reduces exposure but does not catch DB_PASSWORD=hunter2, bare custom tokens without a distinguishing prefix, secrets split across lines, base64-encoded or paraphrased secrets, credentials in screenshots, or double-escaped JSON embedded inside another JSON string. Seven of the 18 selected rules also require a restricted trailing delimiter, so ordinary punctuation immediately after a secret can prevent a match. Do not treat the filter as a substitute for keeping secrets out of coding-agent sessions.
Only enable Rudel on projects and environments where you are comfortable uploading that data. Review the Rudel Privacy Policy before enabling uploads for yourself or your team.
We also use limited product analytics on the hosted service to understand whether core workflows work, diagnose failures, and improve the product. This is explicit event tracking for account and authentication flows, CLI login and enable flows, session upload outcomes, dashboard views and interactions, organization management actions, and a small set of utility interactions such as theme toggle or sidebar collapse.
This product analytics layer is intentionally limited. It does not enable blanket click autocapture, session replay, or surveys by default. It is designed to capture product events and operational context like page name, action name, date range, normalized error codes, and organization or user identifiers where needed. It should not include raw transcript content, source code, prompts, tool output, command output, or file contents from your sessions. By using the hosted app, you agree to this limited analytics processing as part of the service.
See CONTRIBUTING.md for local setup, development commands, and PR guidelines.
For self-hosting your own instance, see docs/self-hosting.md.
To report a vulnerability, see SECURITY.md. Do not open public issues for security concerns.