What Carbon receives
- Model — the model id each call used
- Token usage — input, output, and cached token counts
- Cost — the USD cost Carbon derives from usage
- Timing & status — duration, timestamps, and success/error
- Correlation keys — the session and turn ids that group a run’s events
- Source — which app produced it (Claude Code or Codex)
What Carbon never receives
- Your prompts and instructions
- The model’s responses
- Tool input/output text — the arguments to and results from tool calls
- File contents, diffs, or any of your code
@carbon-js/connect enables only that signal — never traces. There is no transcript parsing and no separate uploader: the app exports straight to Carbon, authenticated with your API key.
This is the same canonical event the Carbon SDK produces — so coding-app usage sits
in the same dashboard, sliced by model, cost, and source, as the rest of your space.