Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
{
"name": "claude-code-ai-observability",
"description": "Realtime Sentry traces with per-turn tokens, cost, subagent and error instrumentation, and rich auto-tagging (session / git / host). Forked from sergical/claude-code-sentry-monitor (MIT).",
"version": "0.2.4",
"version": "0.2.5",
"author": {
"name": "Joshkop"
},
Expand Down
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "claude-code-ai-observability",
"description": "Comprehensive AI Agent Observability plugin for Claude Code — realtime Sentry traces with per-turn tokens, cost, subagent and error instrumentation, and rich auto-tagging (session / git / host). Forked from sergical/claude-code-sentry-monitor (MIT).",
"version": "0.2.4",
"version": "0.2.5",
"author": {
"name": "Joshkop"
},
Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

## [0.2.5] - 2026-05-20

### Fixed

- **Sentry AI Agents → Conversations view now populates.** 0.2.2 added `gen_ai.conversation.id` on every span in a turn's call tree, but the view stayed empty because Sentry's Conversations data pipeline only ingests `gen_ai.*` spans when the SDK's `streamGenAiSpans` option is enabled. That option was introduced in `@sentry/node` 10.53.0 (PR getsentry/sentry-javascript#20785). Bumped `@sentry/node` from `^9.0.0` to `^10.53.1` and enabled the flag.

### Changed

- **`@sentry/node` upgraded from 9.x to 10.x.** Spans emitted to Sentry are unchanged in shape from a plugin perspective (`gen_ai.invoke_agent`, `gen_ai.chat`, `gen_ai.execute_tool` with the same attributes). No user-facing config changes.

## [0.2.4] - 2026-05-20

### Changed
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "claude-code-ai-observability",
"version": "0.2.4",
"version": "0.2.5",
"description": "Comprehensive AI Agent Observability plugin for Claude Code — realtime Sentry traces with per-turn tokens, cost, subagent and error instrumentation, and rich auto-tagging (session / git / host).",
"type": "module",
"scripts": {
Expand All @@ -27,7 +27,7 @@
"url": "https://github.com/Joshkop/claude-code-ai-observability"
},
"dependencies": {
"@sentry/node": "^9.0.0"
"@sentry/node": "^10.53.1"
},
"devDependencies": {
"@types/node": "^22.13.10",
Expand Down
680 changes: 308 additions & 372 deletions pnpm-lock.yaml

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions scripts/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,12 @@ async function startCollector(config) {
environment: config.environment,
release: config.release,
debug: config.debug,
// Required for Sentry's AI Agents → Conversations view to populate.
// Without this flag the SDK still emits gen_ai.conversation.id on
// spans (so traces / span detail work), but Sentry's Conversations
// data pipeline never receives them and the view stays empty. Added
// in @sentry/node 10.53.0; see PR getsentry/sentry-javascript#20785.
streamGenAiSpans: true,
});
// Promote user-configured tags (e.g. `developer`) to the isolation scope
// BEFORE any spans are created, so they propagate to every child span
Expand Down
2 changes: 1 addition & 1 deletion scripts/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"type": "module",
"description": "Runtime dependencies for claude-code-sentry-monitor hooks",
"dependencies": {
"@sentry/node": "^9.0.0",
"@sentry/node": "^10.53.1",
"strip-json-comments": "^5.0.1"
},
"packageManager": "pnpm@10.9.0"
Expand Down
684 changes: 310 additions & 374 deletions scripts/pnpm-lock.yaml

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,12 @@ async function startCollector(config: ResolvedPluginConfig): Promise<void> {
environment: config.environment,
release: config.release,
debug: config.debug,
// Required for Sentry's AI Agents → Conversations view to populate.
// Without this flag the SDK still emits gen_ai.conversation.id on
// spans (so traces / span detail work), but Sentry's Conversations
// data pipeline never receives them and the view stays empty. Added
// in @sentry/node 10.53.0; see PR getsentry/sentry-javascript#20785.
streamGenAiSpans: true,
});
// Promote user-configured tags (e.g. `developer`) to the isolation scope
// BEFORE any spans are created, so they propagate to every child span
Expand Down
Loading