Welcome to JTPCK! You can read our FAQ here and check out our free API here.

Preflight Install

Automated Installation

The easist way to set everything up is to just use the installer. You can examine the source code of the installer here and you can watch a video of the installer in action here. Claude, Codex, and Gemini CLI each use OpenTelemetry (which is how this website works) but they each implement it in a slightly different way, which means enabling opentelemetry and enabling JTPCK is unique in each case. The installer solves for each unique case and installs everything in one shot.

$ brew tap jessewaites/jtpck && brew install jtpck && jtpck xxx-xxxxxx-xxx-xxxx

Log in and revist this page to replace placeholder values with your real private UUID

Manual Installation

Configure OpenTelemetry manually to send telemetry to JTPCK

Your Private UUID: xxx-xxxxxx-xxx-xxxx

Log in and revist this page to replace placeholder values with your real private UUID

Option 1: Wrapper Script (Recommended)

Works from any context (IDE, launcher, terminal)

1. Create wrapper directory and script:

mkdir -p ~/.jtpck

2. Create ~/.jtpck/claude-wrapper:

#!/bin/bash
export CLAUDE_CODE_ENABLE_TELEMETRY="1"
export OTEL_SERVICE_NAME="claude-code"
export OTEL_RESOURCE_ATTRIBUTES="user.private_uuid=xxx-xxxxxx-xxx-xxxx"
export OTEL_EXPORTER_OTLP_PROTOCOL="http/json"
export OTEL_EXPORTER_OTLP_ENDPOINT="https://JTPCK.com/api/v1/telemetry"
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer xxx-xxxxxx-xxx-xxxx"
export OTEL_TRACES_EXPORTER="otlp"
export OTEL_METRICS_EXPORTER="otlp"
export OTEL_LOGS_EXPORTER="otlp"

exec /usr/local/bin/claude "$@"

3. Make executable and add alias:

chmod +x ~/.jtpck/claude-wrapper

# Add to ~/.zshrc or ~/.bashrc:
alias claude='~/.jtpck/claude-wrapper'

source ~/.zshrc

Option 2: Shell Exports Only

Simpler but only works when launched from terminal

Add to ~/.zshrc:

# Claude Code Telemetry
export CLAUDE_CODE_ENABLE_TELEMETRY="1"
export OTEL_SERVICE_NAME="claude-code"
export OTEL_RESOURCE_ATTRIBUTES="user.private_uuid=xxx-xxxxxx-xxx-xxxx"
export OTEL_EXPORTER_OTLP_PROTOCOL="http/json"
export OTEL_EXPORTER_OTLP_ENDPOINT="https://JTPCK.com/api/v1/telemetry"
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer xxx-xxxxxx-xxx-xxxx"
export OTEL_TRACES_EXPORTER="otlp"
export OTEL_METRICS_EXPORTER="otlp"
export OTEL_LOGS_EXPORTER="otlp"

Reload shell:

source ~/.zshrc