원클릭으로
omcustom-monitoring-setup
Enable/disable OpenTelemetry console monitoring for Claude Code usage tracking
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Enable/disable OpenTelemetry console monitoring for Claude Code usage tracking
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Invoke and resume YAML-defined pipelines by name — /pipeline auto-dev runs the full release pipeline
Full Self Driving — autonomous release loop that processes all auto-dev-eligible GitHub issues until none remain, by repeatedly running /pipeline auto-dev then /homework.
On explicit /homework invocation, analyze the current and linked previous sessions, extract mistakes (찐빠), and report them via omcustom-feedback with a confirmation gate. Auto-activation on session cleanup/session-end signals is OPT-IN (default OFF) — requires an explicit project/user directive. Use when explicitly auditing recent work for harness gaps.
hada.io RSS feed monitoring for AI agent/harness articles with automated /scout analysis
Pre-action boundary checking — validates agent tool calls against declared capabilities and task contracts
Auto-detect project context and optimize harness — deactivate unused agents/skills, suggest missing experts, generate project profile
| name | omcustom:monitoring-setup |
| description | Enable/disable OpenTelemetry console monitoring for Claude Code usage tracking |
| scope | package |
| argument-hint | [enable|disable|status] |
| user-invocable | true |
Enable or disable OpenTelemetry console monitoring. When enabled, Claude Code outputs usage metrics (cost, tokens, sessions, LOC, commits, PRs, active time) and events (tool results, API requests) to the terminal.
This skill activates when the user mentions any of:
.claude/settings.local.json (create if not exists)env field with:
{
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1",
"OTEL_METRICS_EXPORTER": "console",
"OTEL_LOGS_EXPORTER": "console"
}
}
[Done] OpenTelemetry Console Monitoring enabled
Configured in: .claude/settings.local.json
Metrics: sessions, cost, tokens, LOC, commits, PRs, active time
Events: tool results, API requests, tool decisions
Note: Takes effect on next `claude` session restart.
To disable: /monitoring-setup disable
.claude/settings.local.jsonenv:
CLAUDE_CODE_ENABLE_TELEMETRYOTEL_METRICS_EXPORTEROTEL_LOGS_EXPORTERenv object becomes empty, remove env field entirely[Done] OpenTelemetry Monitoring disabled
Removed from: .claude/settings.local.json
Takes effect on next session restart.
.claude/settings.local.json[Monitoring Status]
├── Enabled: Yes/No
├── Metrics exporter: console / otlp / none
├── Logs exporter: console / otlp / none
└── Config: .claude/settings.local.json
settings.local.json is NOT git-tracked (local to user)| Metric | Description | Unit |
|---|---|---|
claude_code.session.count | CLI sessions started | count |
claude_code.cost.usage | Session cost | USD |
claude_code.token.usage | Tokens used (input/output/cache) | tokens |
claude_code.lines_of_code.count | Code lines modified (added/removed) | count |
claude_code.commit.count | Git commits created | count |
claude_code.pull_request.count | Pull requests created | count |
claude_code.active_time.total | Active usage time | seconds |
| Event | Description |
|---|---|
claude_code.tool_result | Tool execution results with duration |
claude_code.api_request | API request details with cost/tokens |
claude_code.api_error | API error details |
claude_code.tool_decision | Tool accept/reject decisions |
claude_code.user_prompt | User prompt metadata (content redacted by default) |
For production monitoring, upgrade from console to OTLP:
# In settings.local.json env:
OTEL_METRICS_EXPORTER=otlp
OTEL_LOGS_EXPORTER=otlp
OTEL_EXPORTER_OTLP_PROTOCOL=grpc
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
| Metric | Description | Unit |
|---|---|---|
code_edit_tool.decision | Edit tool accept/reject decisions | count |
{
"env": {
"OTEL_METRICS_EXPORTER": "otlp",
"OTEL_LOGS_EXPORTER": "otlp",
"OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",
"OTEL_EXPORTER_OTLP_ENDPOINT": "http://localhost:4317",
"OTEL_RESOURCE_ATTRIBUTES": "service.name=claude-code,service.version=2.1.85"
}
}
| Variable | Description | Default |
|---|---|---|
OTEL_LOG_TOOL_DETAILS | Include tool input/output in logs | false |
OTEL_METRICS_INCLUDE_TOOL_NAME | Include tool name dimension | true |
OTEL_METRICS_INCLUDE_MODEL | Include model dimension | true |
# Send metrics to both console and OTLP
OTEL_METRICS_EXPORTER=console,otlp
OTEL_LOGS_EXPORTER=console,otlp
OTEL_METRICS_EXPORTER=prometheus
OTEL_EXPORTER_PROMETHEUS_PORT=9464
Environment variables to control data collection and telemetry:
| Variable | Description |
|---|---|
DISABLE_TELEMETRY | Disable all telemetry collection |
DISABLE_ERROR_REPORTING | Disable error reporting to Anthropic |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | Disable non-essential network traffic |
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY | Disable feedback survey prompts |
DO_NOT_TRACK | Standard DNT signal |
{
"env": {
"DISABLE_TELEMETRY": "1",
"DISABLE_ERROR_REPORTING": "1",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
}
}
For deeper payload-level debugging beyond aggregated metrics, Claude Inspector provides MITM proxy inspection of Claude Code HTTP traffic.
| Aspect | OTel Monitoring (this skill) | Claude Inspector |
|---|---|---|
| Layer | Application (hooks, stdout) | HTTP (MITM proxy) |
| Metrics | Aggregated (cost, tokens, duration) | Per-request payload breakdown |
| Cache visibility | Not available | Prompt Cache hit/miss rates |
| Sub-agent view | Summary via hooks | Full parent vs sub-agent context comparison |
| Setup | Built-in (hooks + statusline) | External tool (Homebrew on macOS) |
# macOS
brew install kangraemin/tap/claude-inspector
# Run proxy
claude-inspector
Claude Inspector is external to oh-my-customcode and does not require any project configuration changes.