Skip to Content
Rius

How do I track the prompts developers send in Claude Code?

Rius records the prompts developers send in Claude Code once each developer runs /rius:enable-content-here in a folder. Every prompt then appears in that session’s trace, under the turn it started. A folder enabled with /rius:enable-here sends structure only, with no prompts. Prompts show in the trace list, and each developer shows on the Users page under their sign-in email.

How it works

One Claude Code session is one trace. Each prompt starts a turn, a span that holds the prompt and everything it caused: the model calls, tool calls and subagents. With content on, the turn carries the prompt text and Claude’s reply.

  • Content is a per-folder choice. /rius:enable-content-here sends prompts and replies, tool inputs and outputs, file contents, command output and the error details of failed tool calls. /rius:enable-here sends only the span tree, models, tokens, cost, timing, tool names and error types.
  • Each developer decides. Only the developer can run these commands. Claude can’t run them, and a repository’s settings can’t turn tracing on. Tracing is off everywhere until a folder is enabled.
  • Secrets are redacted before export. The plugin replaces the secrets it recognizes, such as cloud keys, tokens, private keys and password= style values, with a marker like [redacted:aws-key]. This is best effort, so a secret in a format the plugin doesn’t know is sent. Each captured value is capped at 32 KB.
  • Capture is decided on the developer’s machine, before anything is sent.
  • System turns are marked. Turns that Claude Code injected itself, such as a slash command’s output or a background task’s report, are kept but marked as system turns, so you can tell them from what the developer typed.

Everyone with access to the workspace can read what is sent, so agree as a team which repos send content. The full list is in the Claude Code plugin guide.

Set it up

  1. Install the plugin. Each developer runs this in a terminal. The plugin needs Python 3.9 or newer on the PATH.

    claude plugin marketplace add glassflow/rius-coding-agents && claude plugin install rius@rius-coding-agents
  2. Sign in. Run /rius:login, pick the team workspace in the browser and click Connect. This stores a key that sends traces for that machine and workspace.

  3. Enable content in the folders you want. In each repo where prompts should be tracked, run:

    /rius:enable-content-here

    A session that is already open is traced from its start, so earlier prompts in it are sent too. To trace only from now on, start a new session after enabling.

  4. Check the state. Run /rius:status. The first line reads Rius tracing: on, and the Content: line reads prompts, replies, file contents and command output. If it reads none (structure only), the folder was enabled with /rius:enable-here.

  5. Keep sensitive folders out. Run /rius:disable-here in a folder to stop tracing it. A disabled folder wins at any depth, so you can enable ~/code and keep a subfolder out.

  6. Optional: turn content off everywhere. Set RIUS_CAPTURE_CONTENT to false in the env block of ~/.claude/settings.json. The variable can only lower capture, and true is ignored.

    { "env": { "RIUS_CAPTURE_CONTENT": "false" } }

To roll this out across a team, follow Track Claude Code usage and cost across a team.

What you get

  • Prompts in the trace. Open a session in the trace list and the waterfall shows each turn with its prompt, then the model calls, tool calls and subagents that followed. With content on, the trace is named after the session, using the name from /rename or --name, or the title Claude Code generates from the first prompt. A structure-only session is named claude-code session.
  • Prompts tied to cost. Each model call carries its tokens and cost, so you can go from an expensive session to the prompt that started it. Subagents get their own spans with their own tokens.
  • Per-developer view. With plugin 0.6.2 or later, each session is recorded under the developer’s sign-in email as user.id. The Users page lists each developer with traces, failed traces and cost, and the Sent by column in the trace list names the owner of the key.
  • Agents page. Claude Code shows as an agent named claude-code, with each open session as a live instance.
  • Questions from the terminal. Run /mcp, pick rius and sign in once, then ask Claude about your sessions in plain language.

What Claude Code does not report here:

  • Claude’s thinking is never sent, even with content on.
  • Model-call durations are approximate, because the transcript records when a reply finished but not when the request went out. Tool durations are exact.
  • The Users and Agents figures count a session once it has ended. A session that crashed or was killed is never counted there, though the trace list shows it while it runs.
  • Sessions sent with a key you stored yourself carry no developer and land in the anonymous row.
  • Turning capture off applies from then on. Traces already in the workspace keep their content.

When something else fits

If you only need who ran what, with tokens, cost and tool calls, /rius:enable-here gives all of that without storing any prompt text. For other coding agents, see Coding agents to compare how each one sends prompts and what it reports.

Still stuck? Get help

Last updated on