@google/gemini-cli-core 0.12.0-nightly.20251027.cb0947c5 → 0.12.0-preview.10

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.
Files changed (148) hide show
  1. package/README.md +7 -5
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/code_assist/oauth2.js +8 -9
  6. package/dist/src/code_assist/oauth2.js.map +1 -1
  7. package/dist/src/code_assist/oauth2.test.js +32 -32
  8. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  9. package/dist/src/config/config.d.ts +14 -11
  10. package/dist/src/config/config.js +36 -14
  11. package/dist/src/config/config.js.map +1 -1
  12. package/dist/src/config/config.test.js +79 -11
  13. package/dist/src/config/config.test.js.map +1 -1
  14. package/dist/src/config/models.d.ts +1 -1
  15. package/dist/src/config/models.js +2 -2
  16. package/dist/src/config/models.js.map +1 -1
  17. package/dist/src/config/storage.d.ts +1 -0
  18. package/dist/src/config/storage.js +3 -0
  19. package/dist/src/config/storage.js.map +1 -1
  20. package/dist/src/core/contentGenerator.js +38 -31
  21. package/dist/src/core/contentGenerator.js.map +1 -1
  22. package/dist/src/core/contentGenerator.test.js +13 -0
  23. package/dist/src/core/contentGenerator.test.js.map +1 -1
  24. package/dist/src/core/coreToolScheduler.js +109 -96
  25. package/dist/src/core/coreToolScheduler.js.map +1 -1
  26. package/dist/src/core/fakeContentGenerator.d.ts +20 -13
  27. package/dist/src/core/fakeContentGenerator.js +21 -24
  28. package/dist/src/core/fakeContentGenerator.js.map +1 -1
  29. package/dist/src/core/fakeContentGenerator.test.js +71 -84
  30. package/dist/src/core/fakeContentGenerator.test.js.map +1 -1
  31. package/dist/src/core/loggingContentGenerator.d.ts +1 -0
  32. package/dist/src/core/loggingContentGenerator.js +113 -33
  33. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  34. package/dist/src/core/recordingContentGenerator.d.ts +18 -0
  35. package/dist/src/core/recordingContentGenerator.js +77 -0
  36. package/dist/src/core/recordingContentGenerator.js.map +1 -0
  37. package/dist/src/core/recordingContentGenerator.test.d.ts +6 -0
  38. package/dist/src/core/recordingContentGenerator.test.js +101 -0
  39. package/dist/src/core/recordingContentGenerator.test.js.map +1 -0
  40. package/dist/src/fallback/handler.js +2 -0
  41. package/dist/src/fallback/handler.js.map +1 -1
  42. package/dist/src/generated/git-commit.d.ts +2 -2
  43. package/dist/src/generated/git-commit.js +2 -2
  44. package/dist/src/generated/git-commit.js.map +1 -1
  45. package/dist/src/index.d.ts +2 -0
  46. package/dist/src/index.js +2 -0
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/mcp/google-auth-provider.d.ts +0 -2
  49. package/dist/src/mcp/google-auth-provider.js +6 -40
  50. package/dist/src/mcp/google-auth-provider.js.map +1 -1
  51. package/dist/src/mcp/google-auth-provider.test.js +2 -63
  52. package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
  53. package/dist/src/mcp/oauth-token-storage.js +1 -1
  54. package/dist/src/mcp/oauth-token-storage.js.map +1 -1
  55. package/dist/src/mcp/oauth-token-storage.test.js +2 -2
  56. package/dist/src/mcp/oauth-token-storage.test.js.map +1 -1
  57. package/dist/src/mcp/sa-impersonation-provider.js +3 -2
  58. package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
  59. package/dist/src/mcp/token-storage/keychain-token-storage.d.ts +6 -2
  60. package/dist/src/mcp/token-storage/keychain-token-storage.js +57 -2
  61. package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
  62. package/dist/src/mcp/token-storage/keychain-token-storage.test.js +33 -0
  63. package/dist/src/mcp/token-storage/keychain-token-storage.test.js.map +1 -1
  64. package/dist/src/mcp/token-storage/types.d.ts +6 -0
  65. package/dist/src/mcp/token-storage/types.js.map +1 -1
  66. package/dist/src/policy/policy-engine.js +4 -0
  67. package/dist/src/policy/policy-engine.js.map +1 -1
  68. package/dist/src/services/chatCompressionService.d.ts +3 -3
  69. package/dist/src/services/chatCompressionService.js +4 -5
  70. package/dist/src/services/chatCompressionService.js.map +1 -1
  71. package/dist/src/services/chatCompressionService.test.js +2 -2
  72. package/dist/src/services/chatCompressionService.test.js.map +1 -1
  73. package/dist/src/services/loopDetectionService.js +4 -1
  74. package/dist/src/services/loopDetectionService.js.map +1 -1
  75. package/dist/src/services/loopDetectionService.test.js +10 -0
  76. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  77. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +5 -5
  78. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  79. package/dist/src/telemetry/index.d.ts +1 -0
  80. package/dist/src/telemetry/index.js +1 -0
  81. package/dist/src/telemetry/index.js.map +1 -1
  82. package/dist/src/telemetry/loggers.js +25 -26
  83. package/dist/src/telemetry/loggers.js.map +1 -1
  84. package/dist/src/telemetry/loggers.test.js +177 -34
  85. package/dist/src/telemetry/loggers.test.js.map +1 -1
  86. package/dist/src/telemetry/metrics.d.ts +13 -5
  87. package/dist/src/telemetry/metrics.js +20 -1
  88. package/dist/src/telemetry/metrics.js.map +1 -1
  89. package/dist/src/telemetry/metrics.test.js +45 -0
  90. package/dist/src/telemetry/metrics.test.js.map +1 -1
  91. package/dist/src/telemetry/semantic.d.ts +82 -0
  92. package/dist/src/telemetry/semantic.js +269 -0
  93. package/dist/src/telemetry/semantic.js.map +1 -0
  94. package/dist/src/telemetry/semantic.test.d.ts +6 -0
  95. package/dist/src/telemetry/semantic.test.js +387 -0
  96. package/dist/src/telemetry/semantic.test.js.map +1 -0
  97. package/dist/src/telemetry/trace.d.ts +46 -0
  98. package/dist/src/telemetry/trace.js +121 -0
  99. package/dist/src/telemetry/trace.js.map +1 -0
  100. package/dist/src/telemetry/types.d.ts +37 -18
  101. package/dist/src/telemetry/types.js +107 -36
  102. package/dist/src/telemetry/types.js.map +1 -1
  103. package/dist/src/telemetry/uiTelemetry.js +6 -6
  104. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  105. package/dist/src/telemetry/uiTelemetry.test.js +88 -66
  106. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  107. package/dist/src/tools/glob.test.js +203 -199
  108. package/dist/src/tools/glob.test.js.map +1 -1
  109. package/dist/src/tools/mcp-client-manager.js +2 -1
  110. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  111. package/dist/src/tools/mcp-client.d.ts +4 -1
  112. package/dist/src/tools/mcp-client.js +71 -92
  113. package/dist/src/tools/mcp-client.js.map +1 -1
  114. package/dist/src/tools/mcp-client.test.js +16 -6
  115. package/dist/src/tools/mcp-client.test.js.map +1 -1
  116. package/dist/src/tools/mcp-tool.d.ts +1 -1
  117. package/dist/src/tools/mcp-tool.js +11 -9
  118. package/dist/src/tools/mcp-tool.js.map +1 -1
  119. package/dist/src/tools/shell.d.ts +2 -2
  120. package/dist/src/tools/shell.js +4 -4
  121. package/dist/src/tools/shell.js.map +1 -1
  122. package/dist/src/tools/tool-registry.d.ts +3 -0
  123. package/dist/src/tools/tool-registry.js +9 -2
  124. package/dist/src/tools/tool-registry.js.map +1 -1
  125. package/dist/src/tools/tools.d.ts +1 -2
  126. package/dist/src/tools/tools.js +20 -3
  127. package/dist/src/tools/tools.js.map +1 -1
  128. package/dist/src/tools/write-todos.js +4 -1
  129. package/dist/src/tools/write-todos.js.map +1 -1
  130. package/dist/src/utils/events.d.ts +36 -1
  131. package/dist/src/utils/events.js +17 -0
  132. package/dist/src/utils/events.js.map +1 -1
  133. package/dist/src/utils/events.test.js +10 -0
  134. package/dist/src/utils/events.test.js.map +1 -1
  135. package/dist/src/utils/extensionLoader.d.ts +38 -0
  136. package/dist/src/utils/extensionLoader.js +20 -0
  137. package/dist/src/utils/extensionLoader.js.map +1 -0
  138. package/dist/src/utils/googleQuotaErrors.js +2 -2
  139. package/dist/src/utils/googleQuotaErrors.js.map +1 -1
  140. package/dist/src/utils/memoryDiscovery.d.ts +2 -2
  141. package/dist/src/utils/memoryDiscovery.js +3 -2
  142. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  143. package/dist/src/utils/memoryDiscovery.test.js +19 -35
  144. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  145. package/dist/src/utils/workspaceContext.js +1 -1
  146. package/dist/src/utils/workspaceContext.js.map +1 -1
  147. package/dist/tsconfig.tsbuildinfo +1 -1
  148. package/package.json +1 -1
@@ -0,0 +1,46 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { type AttributeValue, type SpanOptions } from '@opentelemetry/api';
7
+ /**
8
+ * Metadata for a span.
9
+ */
10
+ export interface SpanMetadata {
11
+ /** The name of the span. */
12
+ name: string;
13
+ /** The input to the span. */
14
+ input?: unknown;
15
+ /** The output of the span. */
16
+ output?: unknown;
17
+ error?: unknown;
18
+ /** Additional attributes for the span. */
19
+ attributes: Record<string, AttributeValue>;
20
+ }
21
+ /**
22
+ * Runs a function in a new OpenTelemetry span.
23
+ *
24
+ * The `meta` object will be automatically used to set the span's status and attributes upon completion.
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * runInDevTraceSpan({ name: 'my-operation' }, ({ metadata }) => {
29
+ * metadata.input = { foo: 'bar' };
30
+ * // ... do work ...
31
+ * metadata.output = { result: 'baz' };
32
+ * metadata.attributes['my.custom.attribute'] = 'some-value';
33
+ * });
34
+ * ```
35
+ *
36
+ * @param opts The options for the span.
37
+ * @param fn The function to run in the span.
38
+ * @returns The result of the function.
39
+ */
40
+ export declare function runInDevTraceSpan<R>(opts: SpanOptions & {
41
+ name: string;
42
+ noAutoEnd?: boolean;
43
+ }, fn: ({ metadata, }: {
44
+ metadata: SpanMetadata;
45
+ endSpan: () => void;
46
+ }) => Promise<R>): Promise<R>;
@@ -0,0 +1,121 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { diag, SpanStatusCode, trace, } from '@opentelemetry/api';
7
+ import { safeJsonStringify } from '../utils/safeJsonStringify.js';
8
+ const TRACER_NAME = 'gemini-cli';
9
+ const TRACER_VERSION = 'v1';
10
+ /**
11
+ * Runs a function in a new OpenTelemetry span.
12
+ *
13
+ * The `meta` object will be automatically used to set the span's status and attributes upon completion.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * runInDevTraceSpan({ name: 'my-operation' }, ({ metadata }) => {
18
+ * metadata.input = { foo: 'bar' };
19
+ * // ... do work ...
20
+ * metadata.output = { result: 'baz' };
21
+ * metadata.attributes['my.custom.attribute'] = 'some-value';
22
+ * });
23
+ * ```
24
+ *
25
+ * @param opts The options for the span.
26
+ * @param fn The function to run in the span.
27
+ * @returns The result of the function.
28
+ */
29
+ export async function runInDevTraceSpan(opts, fn) {
30
+ const { name: spanName, noAutoEnd, ...restOfSpanOpts } = opts;
31
+ if (process.env['GEMINI_DEV_TRACING'] !== 'true') {
32
+ // If GEMINI_DEV_TRACING env var not set, we do not trace.
33
+ return await fn({
34
+ metadata: {
35
+ name: spanName,
36
+ attributes: {},
37
+ },
38
+ endSpan: () => {
39
+ // noop
40
+ },
41
+ });
42
+ }
43
+ const tracer = trace.getTracer(TRACER_NAME, TRACER_VERSION);
44
+ return await tracer.startActiveSpan(opts.name, restOfSpanOpts, async (span) => {
45
+ const meta = {
46
+ name: spanName,
47
+ attributes: {},
48
+ };
49
+ const endSpan = () => {
50
+ try {
51
+ if (meta.input !== undefined) {
52
+ span.setAttribute('input-json', safeJsonStringify(meta.input));
53
+ }
54
+ if (meta.output !== undefined) {
55
+ span.setAttribute('output-json', safeJsonStringify(meta.output));
56
+ }
57
+ for (const [key, value] of Object.entries(meta.attributes)) {
58
+ span.setAttribute(key, value);
59
+ }
60
+ if (meta.error) {
61
+ span.setStatus({
62
+ code: SpanStatusCode.ERROR,
63
+ message: getErrorMessage(meta.error),
64
+ });
65
+ if (meta.error instanceof Error) {
66
+ span.recordException(meta.error);
67
+ }
68
+ }
69
+ else {
70
+ span.setStatus({ code: SpanStatusCode.OK });
71
+ }
72
+ }
73
+ catch (e) {
74
+ // Log the error but don't rethrow, to ensure span.end() is called.
75
+ diag.error('Error setting span attributes in endSpan', e);
76
+ span.setStatus({
77
+ code: SpanStatusCode.ERROR,
78
+ message: `Error in endSpan: ${getErrorMessage(e)}`,
79
+ });
80
+ }
81
+ finally {
82
+ span.end();
83
+ }
84
+ };
85
+ try {
86
+ return await fn({ metadata: meta, endSpan });
87
+ }
88
+ catch (e) {
89
+ meta.error = e;
90
+ if (noAutoEnd) {
91
+ // For streaming operations, the delegated endSpan call will not be reached
92
+ // on an exception, so we must end the span here to prevent a leak.
93
+ endSpan();
94
+ }
95
+ throw e;
96
+ }
97
+ finally {
98
+ if (!noAutoEnd) {
99
+ // For non-streaming operations, this ensures the span is always closed,
100
+ // and if an error occurred, it will be recorded correctly by endSpan.
101
+ endSpan();
102
+ }
103
+ }
104
+ });
105
+ }
106
+ /**
107
+ * Gets the error message from an error object.
108
+ *
109
+ * @param e The error object.
110
+ * @returns The error message.
111
+ */
112
+ function getErrorMessage(e) {
113
+ if (e instanceof Error) {
114
+ return e.message;
115
+ }
116
+ if (typeof e === 'string') {
117
+ return e;
118
+ }
119
+ return safeJsonStringify(e);
120
+ }
121
+ //# sourceMappingURL=trace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace.js","sourceRoot":"","sources":["../../../src/telemetry/trace.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,IAAI,EACJ,cAAc,EACd,KAAK,GAGN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,cAAc,GAAG,IAAI,CAAC;AAiB5B;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAyD,EACzD,EAKgB;IAEhB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,GAAG,IAAI,CAAC;IAC9D,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,KAAK,MAAM,EAAE,CAAC;QACjD,0DAA0D;QAC1D,OAAO,MAAM,EAAE,CAAC;YACd,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE;aACf;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,OAAO;YACT,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5D,OAAO,MAAM,MAAM,CAAC,eAAe,CACjC,IAAI,CAAC,IAAI,EACT,cAAc,EACd,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,IAAI,GAAiB;YACzB,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf,CAAC;QACF,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC7B,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjE,CAAC;gBACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACnE,CAAC;gBACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC3D,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,KAAuB,CAAC,CAAC;gBAClD,CAAC;gBACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE,cAAc,CAAC,KAAK;wBAC1B,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;qBACrC,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,KAAK,YAAY,KAAK,EAAE,CAAC;wBAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,mEAAmE;gBACnE,IAAI,CAAC,KAAK,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;gBAC1D,IAAI,CAAC,SAAS,CAAC;oBACb,IAAI,EAAE,cAAc,CAAC,KAAK;oBAC1B,OAAO,EAAE,qBAAqB,eAAe,CAAC,CAAC,CAAC,EAAE;iBACnD,CAAC,CAAC;YACL,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACf,IAAI,SAAS,EAAE,CAAC;gBACd,2EAA2E;gBAC3E,mEAAmE;gBACnE,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,wEAAwE;gBACxE,sEAAsE;gBACtE,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,CAAU;IACjC,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;QACvB,OAAO,CAAC,CAAC,OAAO,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC"}
@@ -3,13 +3,13 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { GenerateContentResponseUsageMetadata } from '@google/genai';
6
+ import type { Candidate, Content, GenerateContentConfig, GenerateContentResponseUsageMetadata } from '@google/genai';
7
7
  import type { Config } from '../config/config.js';
8
8
  import type { ApprovalMode } from '../config/config.js';
9
9
  import type { CompletedToolCall } from '../core/coreToolScheduler.js';
10
- import type { LogAttributes } from '@opentelemetry/api-logs';
10
+ import type { LogAttributes, LogRecord } from '@opentelemetry/api-logs';
11
11
  import { ToolCallDecision } from './tool-call-decision.js';
12
- import type { FileOperation } from './metrics.js';
12
+ import { type FileOperation } from './metrics.js';
13
13
  export { ToolCallDecision };
14
14
  import type { ToolRegistry } from '../tools/tool-registry.js';
15
15
  import type { OutputFormat } from '../output/types.js';
@@ -104,35 +104,54 @@ export declare class ApiErrorEvent implements BaseTelemetryEvent {
104
104
  'event.name': 'api_error';
105
105
  'event.timestamp': string;
106
106
  model: string;
107
+ prompt: GenAIPromptDetails;
107
108
  error: string;
108
109
  error_type?: string;
109
110
  status_code?: number | string;
110
111
  duration_ms: number;
111
- prompt_id: string;
112
112
  auth_type?: string;
113
- constructor(model: string, error: string, duration_ms: number, prompt_id: string, auth_type?: string, error_type?: string, status_code?: number | string);
114
- toOpenTelemetryAttributes(config: Config): LogAttributes;
115
- toLogBody(): string;
113
+ constructor(model: string, error: string, duration_ms: number, prompt_details: GenAIPromptDetails, auth_type?: string, error_type?: string, status_code?: number | string);
114
+ toLogRecord(config: Config): LogRecord;
115
+ toSemanticLogRecord(config: Config): LogRecord;
116
116
  }
117
- export declare const EVENT_API_RESPONSE = "gemini_cli.api_response";
118
- export declare class ApiResponseEvent implements BaseTelemetryEvent {
119
- 'event.name': 'api_response';
120
- 'event.timestamp': string;
121
- model: string;
122
- status_code?: number | string;
123
- duration_ms: number;
117
+ export interface ServerDetails {
118
+ address: string;
119
+ port: number;
120
+ }
121
+ export interface GenAIPromptDetails {
122
+ prompt_id: string;
123
+ contents: Content[];
124
+ generate_content_config?: GenerateContentConfig;
125
+ server?: ServerDetails;
126
+ }
127
+ export interface GenAIResponseDetails {
128
+ response_id?: string;
129
+ candidates?: Candidate[];
130
+ }
131
+ export interface GenAIUsageDetails {
124
132
  input_token_count: number;
125
133
  output_token_count: number;
126
134
  cached_content_token_count: number;
127
135
  thoughts_token_count: number;
128
136
  tool_token_count: number;
129
137
  total_token_count: number;
138
+ }
139
+ export declare const EVENT_API_RESPONSE = "gemini_cli.api_response";
140
+ export declare const EVENT_GEN_AI_OPERATION_DETAILS = "gen_ai.client.inference.operation.details";
141
+ export declare class ApiResponseEvent implements BaseTelemetryEvent {
142
+ 'event.name': 'api_response';
143
+ 'event.timestamp': string;
144
+ status_code?: number | string;
145
+ duration_ms: number;
130
146
  response_text?: string;
131
- prompt_id: string;
132
147
  auth_type?: string;
133
- constructor(model: string, duration_ms: number, prompt_id: string, auth_type?: string, usage_data?: GenerateContentResponseUsageMetadata, response_text?: string);
134
- toOpenTelemetryAttributes(config: Config): LogAttributes;
135
- toLogBody(): string;
148
+ model: string;
149
+ prompt: GenAIPromptDetails;
150
+ response: GenAIResponseDetails;
151
+ usage: GenAIUsageDetails;
152
+ constructor(model: string, duration_ms: number, prompt_details: GenAIPromptDetails, response_details: GenAIResponseDetails, auth_type?: string, usage_data?: GenerateContentResponseUsageMetadata, response_text?: string);
153
+ toLogRecord(config: Config): LogRecord;
154
+ toSemanticLogRecord(config: Config): LogRecord;
136
155
  }
137
156
  export declare const EVENT_FLASH_FALLBACK = "gemini_cli.flash_fallback";
138
157
  export declare class FlashFallbackEvent implements BaseTelemetryEvent {
@@ -6,10 +6,12 @@
6
6
  import { DiscoveredMCPTool } from '../tools/mcp-tool.js';
7
7
  import { AuthType } from '../core/contentGenerator.js';
8
8
  import { getDecisionFromOutcome, ToolCallDecision, } from './tool-call-decision.js';
9
+ import { getConventionAttributes } from './metrics.js';
9
10
  export { ToolCallDecision };
10
11
  import { getCommonAttributes } from './telemetryAttributes.js';
11
12
  import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
12
13
  import { safeJsonStringify } from '../utils/safeJsonStringify.js';
14
+ import { toInputMessages, toOutputMessages, toFinishReasons, toOutputType, toSystemInstruction, } from './semantic.js';
13
15
  export const EVENT_CLI_CONFIG = 'gemini_cli.config';
14
16
  export class StartSessionEvent {
15
17
  'event.name';
@@ -282,13 +284,13 @@ export class ApiErrorEvent {
282
284
  'event.name';
283
285
  'event.timestamp';
284
286
  model;
287
+ prompt;
285
288
  error;
286
289
  error_type;
287
290
  status_code;
288
291
  duration_ms;
289
- prompt_id;
290
292
  auth_type;
291
- constructor(model, error, duration_ms, prompt_id, auth_type, error_type, status_code) {
293
+ constructor(model, error, duration_ms, prompt_details, auth_type, error_type, status_code) {
292
294
  this['event.name'] = 'api_error';
293
295
  this['event.timestamp'] = new Date().toISOString();
294
296
  this.model = model;
@@ -296,10 +298,10 @@ export class ApiErrorEvent {
296
298
  this.error_type = error_type;
297
299
  this.status_code = status_code;
298
300
  this.duration_ms = duration_ms;
299
- this.prompt_id = prompt_id;
301
+ this.prompt = prompt_details;
300
302
  this.auth_type = auth_type;
301
303
  }
302
- toOpenTelemetryAttributes(config) {
304
+ toLogRecord(config) {
303
305
  const attributes = {
304
306
  ...getCommonAttributes(config),
305
307
  'event.name': EVENT_API_ERROR,
@@ -311,7 +313,7 @@ export class ApiErrorEvent {
311
313
  error: this.error,
312
314
  status_code: this.status_code,
313
315
  duration_ms: this.duration_ms,
314
- prompt_id: this.prompt_id,
316
+ prompt_id: this.prompt.prompt_id,
315
317
  auth_type: this.auth_type,
316
318
  };
317
319
  if (this.error_type) {
@@ -320,58 +322,98 @@ export class ApiErrorEvent {
320
322
  if (typeof this.status_code === 'number') {
321
323
  attributes[SemanticAttributes.HTTP_STATUS_CODE] = this.status_code;
322
324
  }
323
- return attributes;
325
+ const logRecord = {
326
+ body: `API error for ${this.model}. Error: ${this.error}. Duration: ${this.duration_ms}ms.`,
327
+ attributes,
328
+ };
329
+ return logRecord;
324
330
  }
325
- toLogBody() {
326
- return `API error for ${this.model}. Error: ${this.error}. Duration: ${this.duration_ms}ms.`;
331
+ toSemanticLogRecord(config) {
332
+ const attributes = {
333
+ ...getCommonAttributes(config),
334
+ 'event.name': EVENT_GEN_AI_OPERATION_DETAILS,
335
+ 'event.timestamp': this['event.timestamp'],
336
+ ...toGenerateContentConfigAttributes(this.prompt.generate_content_config),
337
+ ...getConventionAttributes(this),
338
+ };
339
+ if (this.prompt.server) {
340
+ attributes['server.address'] = this.prompt.server.address;
341
+ attributes['server.port'] = this.prompt.server.port;
342
+ }
343
+ if (config.getTelemetryLogPromptsEnabled() && this.prompt.contents) {
344
+ attributes['gen_ai.input.messages'] = JSON.stringify(toInputMessages(this.prompt.contents));
345
+ }
346
+ const logRecord = {
347
+ body: `GenAI operation error details from ${this.model}. Error: ${this.error}. Duration: ${this.duration_ms}ms.`,
348
+ attributes,
349
+ };
350
+ return logRecord;
327
351
  }
328
352
  }
329
353
  export const EVENT_API_RESPONSE = 'gemini_cli.api_response';
354
+ export const EVENT_GEN_AI_OPERATION_DETAILS = 'gen_ai.client.inference.operation.details';
355
+ function toGenerateContentConfigAttributes(config) {
356
+ if (!config) {
357
+ return {};
358
+ }
359
+ return {
360
+ 'gen_ai.request.temperature': config.temperature,
361
+ 'gen_ai.request.top_p': config.topP,
362
+ 'gen_ai.request.top_k': config.topK,
363
+ 'gen_ai.request.choice.count': config.candidateCount,
364
+ 'gen_ai.request.seed': config.seed,
365
+ 'gen_ai.request.frequency_penalty': config.frequencyPenalty,
366
+ 'gen_ai.request.presence_penalty': config.presencePenalty,
367
+ 'gen_ai.request.max_tokens': config.maxOutputTokens,
368
+ 'gen_ai.output.type': toOutputType(config.responseMimeType),
369
+ 'gen_ai.request.stop_sequences': config.stopSequences,
370
+ 'gen_ai.system_instructions': JSON.stringify(toSystemInstruction(config.systemInstruction)),
371
+ };
372
+ }
330
373
  export class ApiResponseEvent {
331
374
  'event.name';
332
375
  'event.timestamp';
333
- model;
334
376
  status_code;
335
377
  duration_ms;
336
- input_token_count;
337
- output_token_count;
338
- cached_content_token_count;
339
- thoughts_token_count;
340
- tool_token_count;
341
- total_token_count;
342
378
  response_text;
343
- prompt_id;
344
379
  auth_type;
345
- constructor(model, duration_ms, prompt_id, auth_type, usage_data, response_text) {
380
+ model;
381
+ prompt;
382
+ response;
383
+ usage;
384
+ constructor(model, duration_ms, prompt_details, response_details, auth_type, usage_data, response_text) {
346
385
  this['event.name'] = 'api_response';
347
386
  this['event.timestamp'] = new Date().toISOString();
348
- this.model = model;
349
387
  this.duration_ms = duration_ms;
350
388
  this.status_code = 200;
351
- this.input_token_count = usage_data?.promptTokenCount ?? 0;
352
- this.output_token_count = usage_data?.candidatesTokenCount ?? 0;
353
- this.cached_content_token_count = usage_data?.cachedContentTokenCount ?? 0;
354
- this.thoughts_token_count = usage_data?.thoughtsTokenCount ?? 0;
355
- this.tool_token_count = usage_data?.toolUsePromptTokenCount ?? 0;
356
- this.total_token_count = usage_data?.totalTokenCount ?? 0;
357
389
  this.response_text = response_text;
358
- this.prompt_id = prompt_id;
359
390
  this.auth_type = auth_type;
391
+ this.model = model;
392
+ this.prompt = prompt_details;
393
+ this.response = response_details;
394
+ this.usage = {
395
+ input_token_count: usage_data?.promptTokenCount ?? 0,
396
+ output_token_count: usage_data?.candidatesTokenCount ?? 0,
397
+ cached_content_token_count: usage_data?.cachedContentTokenCount ?? 0,
398
+ thoughts_token_count: usage_data?.thoughtsTokenCount ?? 0,
399
+ tool_token_count: usage_data?.toolUsePromptTokenCount ?? 0,
400
+ total_token_count: usage_data?.totalTokenCount ?? 0,
401
+ };
360
402
  }
361
- toOpenTelemetryAttributes(config) {
403
+ toLogRecord(config) {
362
404
  const attributes = {
363
405
  ...getCommonAttributes(config),
364
406
  'event.name': EVENT_API_RESPONSE,
365
407
  'event.timestamp': this['event.timestamp'],
366
408
  model: this.model,
367
409
  duration_ms: this.duration_ms,
368
- input_token_count: this.input_token_count,
369
- output_token_count: this.output_token_count,
370
- cached_content_token_count: this.cached_content_token_count,
371
- thoughts_token_count: this.thoughts_token_count,
372
- tool_token_count: this.tool_token_count,
373
- total_token_count: this.total_token_count,
374
- prompt_id: this.prompt_id,
410
+ input_token_count: this.usage.input_token_count,
411
+ output_token_count: this.usage.output_token_count,
412
+ cached_content_token_count: this.usage.cached_content_token_count,
413
+ thoughts_token_count: this.usage.thoughts_token_count,
414
+ tool_token_count: this.usage.tool_token_count,
415
+ total_token_count: this.usage.total_token_count,
416
+ prompt_id: this.prompt.prompt_id,
375
417
  auth_type: this.auth_type,
376
418
  status_code: this.status_code,
377
419
  };
@@ -383,10 +425,39 @@ export class ApiResponseEvent {
383
425
  attributes[SemanticAttributes.HTTP_STATUS_CODE] = this.status_code;
384
426
  }
385
427
  }
386
- return attributes;
428
+ const logRecord = {
429
+ body: `API response from ${this.model}. Status: ${this.status_code || 'N/A'}. Duration: ${this.duration_ms}ms.`,
430
+ attributes,
431
+ };
432
+ return logRecord;
387
433
  }
388
- toLogBody() {
389
- return `API response from ${this.model}. Status: ${this.status_code || 'N/A'}. Duration: ${this.duration_ms}ms.`;
434
+ toSemanticLogRecord(config) {
435
+ const attributes = {
436
+ ...getCommonAttributes(config),
437
+ 'event.name': EVENT_GEN_AI_OPERATION_DETAILS,
438
+ 'event.timestamp': this['event.timestamp'],
439
+ 'gen_ai.response.id': this.response.response_id,
440
+ 'gen_ai.response.finish_reasons': toFinishReasons(this.response.candidates),
441
+ 'gen_ai.output.messages': JSON.stringify(toOutputMessages(this.response.candidates)),
442
+ ...toGenerateContentConfigAttributes(this.prompt.generate_content_config),
443
+ ...getConventionAttributes(this),
444
+ };
445
+ if (this.prompt.server) {
446
+ attributes['server.address'] = this.prompt.server.address;
447
+ attributes['server.port'] = this.prompt.server.port;
448
+ }
449
+ if (config.getTelemetryLogPromptsEnabled() && this.prompt.contents) {
450
+ attributes['gen_ai.input.messages'] = JSON.stringify(toInputMessages(this.prompt.contents));
451
+ }
452
+ if (this.usage) {
453
+ attributes['gen_ai.usage.input_tokens'] = this.usage.input_token_count;
454
+ attributes['gen_ai.usage.output_tokens'] = this.usage.output_token_count;
455
+ }
456
+ const logRecord = {
457
+ body: `GenAI operation details from ${this.model}. Status: ${this.status_code || 'N/A'}. Duration: ${this.duration_ms}ms.`,
458
+ attributes,
459
+ };
460
+ return logRecord;
390
461
  }
391
462
  }
392
463
  export const EVENT_FLASH_FALLBACK = 'gemini_cli.flash_fallback';
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/telemetry/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/telemetry/types.ts"],"names":[],"mappings":"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"}