sentry 0.31.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -39,6 +39,146 @@ export default createSentrySDK;
39
39
 
40
40
  // --- Return types (derived from __jsonSchema) ---
41
41
 
42
+ export type ReplayListResult = {
43
+ /** Replay activity score */
44
+ activity?: number | null;
45
+ /** Browser metadata */
46
+ browser?: Record<string, unknown> | null;
47
+ /** Dead click count */
48
+ count_dead_clicks?: number | null;
49
+ /** Associated error count */
50
+ count_errors?: number | null;
51
+ /** Info event count */
52
+ count_infos?: number | null;
53
+ /** Rage click count */
54
+ count_rage_clicks?: number | null;
55
+ /** Recording segment count */
56
+ count_segments?: number | null;
57
+ /** Visited URL count */
58
+ count_urls?: number | null;
59
+ /** Warning event count */
60
+ count_warnings?: number | null;
61
+ /** Device metadata */
62
+ device?: Record<string, unknown> | null;
63
+ /** Distribution */
64
+ dist?: string | null;
65
+ /** Replay duration in seconds */
66
+ duration?: number | null;
67
+ /** Environment */
68
+ environment?: string | null;
69
+ /** Linked error IDs */
70
+ error_ids: unknown[];
71
+ /** Replay finish timestamp */
72
+ finished_at?: string | null;
73
+ /** Whether the current user has viewed the replay */
74
+ has_viewed?: boolean | null;
75
+ /** Replay ID */
76
+ id: string;
77
+ /** Linked info event IDs */
78
+ info_ids: unknown[];
79
+ /** Archived flag */
80
+ is_archived?: boolean | null;
81
+ /** Operating system metadata */
82
+ os?: Record<string, unknown> | null;
83
+ /** OTA update metadata */
84
+ ota_updates?: Record<string, unknown> | null;
85
+ /** Platform */
86
+ platform?: string | null;
87
+ /** Numeric project ID */
88
+ project_id?: string | null;
89
+ /** Associated releases */
90
+ releases: unknown[];
91
+ /** SDK metadata */
92
+ sdk?: Record<string, unknown> | null;
93
+ /** Replay start timestamp */
94
+ started_at?: string | null;
95
+ /** Replay tags */
96
+ tags: Record<string, unknown>;
97
+ /** Linked trace IDs */
98
+ trace_ids: unknown[];
99
+ /** Visited URLs */
100
+ urls: unknown[];
101
+ /** User metadata */
102
+ user?: Record<string, unknown> | null;
103
+ /** Linked warning event IDs */
104
+ warning_ids: unknown[];
105
+ };
106
+
107
+ export type ReplayViewResult = {
108
+ /** Summarized replay activity */
109
+ activity: unknown[];
110
+ /** Browser metadata */
111
+ browser?: Record<string, unknown> | null;
112
+ /** Dead click count */
113
+ count_dead_clicks?: number | null;
114
+ /** Associated error count */
115
+ count_errors?: number | null;
116
+ /** Info event count */
117
+ count_infos?: number | null;
118
+ /** Rage click count */
119
+ count_rage_clicks?: number | null;
120
+ /** Recording segment count */
121
+ count_segments?: number | null;
122
+ /** Visited URL count */
123
+ count_urls?: number | null;
124
+ /** Warning event count */
125
+ count_warnings?: number | null;
126
+ /** Device metadata */
127
+ device?: Record<string, unknown> | null;
128
+ /** Distribution */
129
+ dist?: string | null;
130
+ /** Replay duration in seconds */
131
+ duration?: number | null;
132
+ /** Environment */
133
+ environment?: string | null;
134
+ /** Linked error IDs */
135
+ error_ids: unknown[];
136
+ /** Replay finish timestamp */
137
+ finished_at?: string | null;
138
+ /** Whether the current user has viewed the replay */
139
+ has_viewed?: boolean | null;
140
+ /** Replay ID */
141
+ id: string;
142
+ /** Linked info event IDs */
143
+ info_ids: unknown[];
144
+ /** Archived flag */
145
+ is_archived?: boolean | null;
146
+ /** Operating system metadata */
147
+ os?: Record<string, unknown> | null;
148
+ /** OTA update metadata */
149
+ ota_updates?: Record<string, unknown> | null;
150
+ /** Platform */
151
+ platform?: string | null;
152
+ /** Numeric project ID */
153
+ project_id?: string | null;
154
+ /** Associated releases */
155
+ releases: unknown[];
156
+ /** SDK metadata */
157
+ sdk?: Record<string, unknown> | null;
158
+ /** Replay start timestamp */
159
+ started_at?: string | null;
160
+ /** Replay tags */
161
+ tags: Record<string, unknown>;
162
+ /** Linked trace IDs */
163
+ trace_ids: unknown[];
164
+ /** Visited URLs */
165
+ urls: unknown[];
166
+ /** User metadata */
167
+ user?: Record<string, unknown> | null;
168
+ /** Linked warning event IDs */
169
+ warning_ids: unknown[];
170
+ /** Replay click summaries */
171
+ clicks?: unknown[];
172
+ /** Replay type */
173
+ replay_type?: string | null;
174
+ /** Organization slug */
175
+ org: string;
176
+ /** Replay-related issues */
177
+ relatedIssues: unknown[];
178
+ /** Replay-related traces */
179
+ relatedTraces: unknown[];
180
+ };
181
+
42
182
  export type RepoListResult = {
43
183
  /** Repository ID */
44
184
  id: string;
@@ -68,7 +208,7 @@ export type TeamListResult = {
68
208
  /** Team name */
69
209
  name: string;
70
210
  /** Creation date (ISO 8601) */
71
- dateCreated?: string;
211
+ dateCreated?: string | null;
72
212
  /** Whether you are a member */
73
213
  isMember?: boolean;
74
214
  /** Your role in the team */
@@ -91,17 +231,13 @@ export type IssueListResult = {
91
231
  /** Number of affected users */
92
232
  userCount?: number;
93
233
  /** First occurrence (ISO 8601) */
94
- firstSeen?: string | null;
234
+ firstSeen?: string;
95
235
  /** Most recent occurrence (ISO 8601) */
96
- lastSeen?: string | null;
236
+ lastSeen?: string;
97
237
  /** Severity level */
98
238
  level?: string;
99
239
  /** Issue status */
100
240
  status?: string;
101
- /** Triage priority */
102
- priority?: string;
103
- /** Platform */
104
- platform?: string;
105
241
  /** URL to the issue in Sentry */
106
242
  permalink?: string;
107
243
  /** Project info */
@@ -109,7 +245,11 @@ export type IssueListResult = {
109
245
  /** Issue metadata */
110
246
  metadata?: Record<string, unknown>;
111
247
  /** Assigned user or team */
112
- assignedTo?: unknown | null;
248
+ assignedTo?: Record<string, unknown> | null;
249
+ /** Triage priority */
250
+ priority?: string;
251
+ /** Platform */
252
+ platform?: string;
113
253
  /** Issue substatus */
114
254
  substatus?: string | null;
115
255
  /** Whether the issue is unhandled */
@@ -124,31 +264,31 @@ export type IssueEventsResult = {
124
264
  /** Event type (error, default, transaction) */
125
265
  "event.type": string;
126
266
  /** Group (issue) ID */
127
- groupID: string | null;
267
+ groupID?: string | null;
128
268
  /** UUID-format event ID */
129
269
  eventID: string;
130
270
  /** Project ID */
131
- projectID: string;
271
+ projectID?: string;
132
272
  /** Event message */
133
- message: string;
273
+ message?: string;
134
274
  /** Event title */
135
- title: string;
275
+ title?: string;
136
276
  /** Source location (file:line) */
137
- location: string | null;
277
+ location?: string | null;
138
278
  /** Culprit function/module */
139
- culprit: string | null;
279
+ culprit?: string | null;
140
280
  /** User context */
141
- user: Record<string, unknown> | null;
281
+ user?: Record<string, unknown> | null;
142
282
  /** Event tags */
143
- tags: unknown[];
283
+ tags?: unknown[];
144
284
  /** Platform (python, javascript, etc.) */
145
- platform: string | null;
285
+ platform?: string | null;
146
286
  /** ISO 8601 creation timestamp */
147
- dateCreated: string;
287
+ dateCreated?: string;
148
288
  /** Crash file URL */
149
- crashFile: string | null;
289
+ crashFile?: string | null;
150
290
  /** Event metadata */
151
- metadata: unknown | null;
291
+ metadata?: Record<string, unknown> | null;
152
292
  };
153
293
 
154
294
  export type EventListResult = {
@@ -157,31 +297,31 @@ export type EventListResult = {
157
297
  /** Event type (error, default, transaction) */
158
298
  "event.type": string;
159
299
  /** Group (issue) ID */
160
- groupID: string | null;
300
+ groupID?: string | null;
161
301
  /** UUID-format event ID */
162
302
  eventID: string;
163
303
  /** Project ID */
164
- projectID: string;
304
+ projectID?: string;
165
305
  /** Event message */
166
- message: string;
306
+ message?: string;
167
307
  /** Event title */
168
- title: string;
308
+ title?: string;
169
309
  /** Source location (file:line) */
170
- location: string | null;
310
+ location?: string | null;
171
311
  /** Culprit function/module */
172
- culprit: string | null;
312
+ culprit?: string | null;
173
313
  /** User context */
174
- user: Record<string, unknown> | null;
314
+ user?: Record<string, unknown> | null;
175
315
  /** Event tags */
176
- tags: unknown[];
316
+ tags?: unknown[];
177
317
  /** Platform (python, javascript, etc.) */
178
- platform: string | null;
318
+ platform?: string | null;
179
319
  /** ISO 8601 creation timestamp */
180
- dateCreated: string;
320
+ dateCreated?: string;
181
321
  /** Crash file URL */
182
- crashFile: string | null;
322
+ crashFile?: string | null;
183
323
  /** Event metadata */
184
- metadata: unknown | null;
324
+ metadata?: Record<string, unknown> | null;
185
325
  };
186
326
 
187
327
  export type LogListResult = {
@@ -448,6 +588,23 @@ export type ProjectViewParams = {
448
588
  orgProject?: string;
449
589
  };
450
590
 
591
+ export type ReplayListParams = {
592
+ /** Positional argument */
593
+ orgProject?: string;
594
+ /** Number of replays (1-1000) */
595
+ limit?: number;
596
+ /** Search query (Sentry replay search syntax) */
597
+ query?: string;
598
+ /** Filter by environment (repeatable, comma-separated) */
599
+ environment?: string;
600
+ /** Sort by: date, oldest, duration, errors, activity, or a raw replay sort field */
601
+ sort?: string;
602
+ /** Time range: "7d", "2026-04-01..2026-05-01", ">=2026-04-01" */
603
+ period?: string;
604
+ /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
605
+ cursor?: string;
606
+ };
607
+
451
608
  export type ReleaseListParams = {
452
609
  /** Positional argument */
453
610
  orgProject?: string;
@@ -608,7 +765,7 @@ export type IssueUnresolveParams = {
608
765
  export type IssueArchiveParams = {
609
766
  /** Positional argument */
610
767
  issue?: string;
611
- /** Condition for unarchival: auto, 30m, 10x, 10u, 10x/5m, etc. */
768
+ /** Condition for unarchival: forever, auto, 30m, 10x, 10u, 10x/5m, etc. */
612
769
  until?: string;
613
770
  };
614
771
 
@@ -642,12 +799,14 @@ export type ExploreParams = {
642
799
  target?: string;
643
800
  /** API field or aggregate (repeatable). E.g., title, "count()", "p50(transaction.duration)" */
644
801
  field?: string;
645
- /** Dataset to query (errors, spans, metrics, logs) */
802
+ /** Dataset to query (errors, spans, metrics, logs, replays) */
646
803
  dataset?: string;
647
804
  /** Search query (Sentry search syntax) */
648
805
  query?: string;
649
806
  /** Sort field (prefix with - for desc, e.g., "-count()") */
650
807
  sort?: string;
808
+ /** Replay environment filter for --dataset replays (repeatable, comma-separated) */
809
+ environment?: string;
651
810
  /** Number of rows (1-1000) */
652
811
  limit?: number;
653
812
  /** Time range: "7d", "2026-04-01..2026-05-01", ">=2026-04-01" */
@@ -773,14 +932,16 @@ export type TrialStartParams = {
773
932
  export type InitParams = {
774
933
  /** Positional argument */
775
934
  targetDirectory?: string;
776
- /** Non-interactive mode (accept defaults) */
935
+ /** Accept non-interactive defaults (requires --features outside a TTY) */
777
936
  yes?: boolean;
778
937
  /** Show what would happen without making changes */
779
938
  dryRun?: boolean;
780
- /** Features to enable: errors,tracing,logs,replay,profiling,ai-monitoring,user-feedback */
939
+ /** Features to enable: errors,tracing,logs,replay,metrics,profiling,sourcemaps,crons,ai-monitoring,user-feedback */
781
940
  features?: string;
782
941
  /** Team slug to create the project under */
783
942
  team?: string;
943
+ /** Use the Ink-based interactive UI (default on the Bun binary). Pass --no-tui to fall back to plain log output. */
944
+ tui?: boolean;
784
945
  };
785
946
 
786
947
  export type ApiParams = {
@@ -835,7 +996,7 @@ export type SentrySDK = {
835
996
  status(params?: AuthStatusParams): Promise<unknown>;
836
997
  /** Print the stored authentication token */
837
998
  token(): Promise<unknown>;
838
- /** Show the currently authenticated user */
999
+ /** Show the currently authenticated identity */
839
1000
  whoami(): Promise<unknown>;
840
1001
  };
841
1002
  cli: {
@@ -885,6 +1046,12 @@ export type SentrySDK = {
885
1046
  /** View details of a project */
886
1047
  view(params?: ProjectViewParams): Promise<unknown>;
887
1048
  };
1049
+ replay: {
1050
+ /** List recent Session Replays */
1051
+ list(params?: ReplayListParams): Promise<ReplayListResult>;
1052
+ /** View a Session Replay */
1053
+ view(...positional: string[]): Promise<ReplayViewResult>;
1054
+ };
888
1055
  release: {
889
1056
  /** List releases with adoption and health metrics */
890
1057
  list(params?: ReleaseListParams): Promise<unknown>;
@@ -934,7 +1101,7 @@ export type SentrySDK = {
934
1101
  merge(params?: IssueMergeParams, ...positional: string[]): Promise<unknown>;
935
1102
  };
936
1103
  event: {
937
- /** View details of a specific event */
1104
+ /** View details of one or more events */
938
1105
  view(params?: EventViewParams, ...positional: string[]): Promise<unknown>;
939
1106
  /** List events for an issue */
940
1107
  list(params?: EventListParams): Promise<EventListResult>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sentry",
3
- "version": "0.31.0",
3
+ "version": "0.32.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/getsentry/cli.git"
@@ -9,9 +9,8 @@
9
9
  "devDependencies": {
10
10
  "@anthropic-ai/sdk": "^0.39.0",
11
11
  "@biomejs/biome": "2.3.8",
12
- "@clack/prompts": "^0.11.0",
13
12
  "@mastra/client-js": "^1.4.0",
14
- "@sentry/api": "^0.113.0",
13
+ "@sentry/api": "^0.141.0",
15
14
  "@sentry/node-core": "10.50.0",
16
15
  "@sentry/sqlish": "^1.0.0",
17
16
  "@stricli/auto-complete": "^1.2.4",
@@ -21,6 +20,7 @@
21
20
  "@types/node": "^22",
22
21
  "@types/picomatch": "^4.0.3",
23
22
  "@types/qrcode-terminal": "^0.12.2",
23
+ "@types/react": "^19.2.14",
24
24
  "@types/semver": "^7.7.1",
25
25
  "binpunch": "^1.0.0",
26
26
  "chalk": "^5.6.2",
@@ -30,12 +30,16 @@
30
30
  "fast-check": "^4.5.3",
31
31
  "http-cache-semantics": "^4.2.0",
32
32
  "ignore": "^7.0.5",
33
+ "ink": "^7.0.1",
34
+ "ink-spinner": "^5.0.0",
33
35
  "marked": "^15",
34
36
  "p-limit": "^7.2.0",
35
37
  "peggy": "^5.1.0",
36
38
  "picomatch": "^4.0.3",
37
39
  "pretty-ms": "^9.3.0",
38
40
  "qrcode-terminal": "^0.12.0",
41
+ "react": "^19.2.5",
42
+ "react-devtools-core": "^7.0.1",
39
43
  "semver": "^7.7.3",
40
44
  "string-width": "^8.2.0",
41
45
  "tinyglobby": "^0.2.15",
@@ -72,6 +76,7 @@
72
76
  "@sentry/core@10.50.0": "patches/@sentry%2Fcore@10.50.0.patch"
73
77
  },
74
78
  "scripts": {
79
+ "cli": "bun run src/bin.ts",
75
80
  "dev": "bun run generate:schema && bun run generate:docs && bun run generate:sdk && bun run src/bin.ts",
76
81
  "build": "bun run generate:schema && bun run generate:docs && bun run generate:sdk && bun run script/build.ts --single",
77
82
  "build:all": "bun run generate:schema && bun run generate:docs && bun run generate:sdk && bun run script/build.ts",