@office-ai/aioncli-core 0.8.1 → 0.18.5
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.ts +8 -2
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/src/agents/codebase-investigator.d.ts +36 -1
- package/dist/src/agents/codebase-investigator.js +93 -34
- package/dist/src/agents/codebase-investigator.js.map +1 -1
- package/dist/src/agents/codebase-investigator.test.d.ts +6 -0
- package/dist/src/agents/codebase-investigator.test.js +35 -0
- package/dist/src/agents/codebase-investigator.test.js.map +1 -0
- package/dist/src/agents/executor.d.ts +37 -11
- package/dist/src/agents/executor.js +512 -150
- package/dist/src/agents/executor.js.map +1 -1
- package/dist/src/agents/executor.test.js +1188 -245
- package/dist/src/agents/executor.test.js.map +1 -1
- package/dist/src/agents/invocation.d.ts +5 -2
- package/dist/src/agents/invocation.js +4 -2
- package/dist/src/agents/invocation.js.map +1 -1
- package/dist/src/agents/invocation.test.js +9 -0
- package/dist/src/agents/invocation.test.js.map +1 -1
- package/dist/src/agents/registry.d.ts +6 -1
- package/dist/src/agents/registry.js +51 -4
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/agents/registry.test.js +30 -16
- package/dist/src/agents/registry.test.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.d.ts +3 -1
- package/dist/src/agents/subagent-tool-wrapper.js +4 -3
- package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.test.js +9 -4
- package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
- package/dist/src/agents/types.d.ts +37 -7
- package/dist/src/agents/types.js +2 -0
- package/dist/src/agents/types.js.map +1 -1
- package/dist/src/code_assist/codeAssist.js +1 -1
- package/dist/src/code_assist/codeAssist.test.d.ts +6 -0
- package/dist/src/code_assist/codeAssist.test.js +99 -0
- package/dist/src/code_assist/codeAssist.test.js.map +1 -0
- package/dist/src/code_assist/converter.d.ts +1 -0
- package/dist/src/code_assist/converter.js +1 -0
- package/dist/src/code_assist/converter.js.map +1 -1
- package/dist/src/code_assist/converter.test.js +19 -0
- package/dist/src/code_assist/converter.test.js.map +1 -1
- package/dist/src/code_assist/experiments/client_metadata.d.ts +12 -0
- package/dist/src/code_assist/experiments/client_metadata.js +50 -0
- package/dist/src/code_assist/experiments/client_metadata.js.map +1 -0
- package/dist/src/code_assist/experiments/client_metadata.test.d.ts +6 -0
- package/dist/src/code_assist/experiments/client_metadata.test.js +99 -0
- package/dist/src/code_assist/experiments/client_metadata.test.js.map +1 -0
- package/dist/src/code_assist/experiments/experiments.d.ts +17 -0
- package/dist/src/code_assist/experiments/experiments.js +36 -0
- package/dist/src/code_assist/experiments/experiments.js.map +1 -0
- package/dist/src/code_assist/experiments/experiments.test.d.ts +6 -0
- package/dist/src/code_assist/experiments/experiments.test.js +92 -0
- package/dist/src/code_assist/experiments/experiments.test.js.map +1 -0
- package/dist/src/code_assist/experiments/flagNames.d.ts +13 -0
- package/dist/src/code_assist/experiments/flagNames.js +13 -0
- package/dist/src/code_assist/experiments/flagNames.js.map +1 -0
- package/dist/src/code_assist/experiments/types.d.ts +35 -0
- package/dist/src/code_assist/experiments/types.js +7 -0
- package/dist/src/code_assist/experiments/types.js.map +1 -0
- package/dist/src/code_assist/oauth-credential-storage.js +6 -5
- package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
- package/dist/src/code_assist/oauth-credential-storage.test.js +65 -3
- package/dist/src/code_assist/oauth-credential-storage.test.js.map +1 -1
- package/dist/src/code_assist/oauth2.d.ts +2 -2
- package/dist/src/code_assist/oauth2.js +161 -93
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +103 -57
- package/dist/src/code_assist/oauth2.test.js.map +1 -1
- package/dist/src/code_assist/server.d.ts +6 -4
- package/dist/src/code_assist/server.js +16 -8
- package/dist/src/code_assist/server.js.map +1 -1
- package/dist/src/code_assist/server.test.js +126 -28
- package/dist/src/code_assist/server.test.js.map +1 -1
- package/dist/src/code_assist/setup.d.ts +2 -2
- package/dist/src/code_assist/setup.js +4 -2
- package/dist/src/code_assist/setup.js.map +1 -1
- package/dist/src/code_assist/types.d.ts +1 -1
- package/dist/src/code_assist/types.js.map +1 -1
- package/dist/src/commands/extensions.d.ts +7 -0
- package/dist/src/commands/extensions.js +9 -0
- package/dist/src/commands/extensions.js.map +1 -0
- package/dist/src/commands/extensions.test.d.ts +6 -0
- package/dist/src/commands/extensions.test.js +19 -0
- package/dist/src/commands/extensions.test.js.map +1 -0
- package/dist/src/config/config.d.ts +169 -43
- package/dist/src/config/config.js +418 -79
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +684 -49
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.d.ts +7 -0
- package/dist/src/config/defaultModelConfigs.js +185 -0
- package/dist/src/config/defaultModelConfigs.js.map +1 -0
- package/dist/src/config/models.d.ts +23 -2
- package/dist/src/config/models.js +50 -7
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +71 -10
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/config/storage.d.ts +3 -1
- package/dist/src/config/storage.js +22 -2
- package/dist/src/config/storage.js.map +1 -1
- package/dist/src/config/storage.test.js +7 -6
- package/dist/src/config/storage.test.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.d.ts +3 -2
- package/dist/src/confirmation-bus/message-bus.js +9 -3
- package/dist/src/confirmation-bus/message-bus.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.test.js +30 -24
- package/dist/src/confirmation-bus/message-bus.test.js.map +1 -1
- package/dist/src/confirmation-bus/types.d.ts +13 -2
- package/dist/src/confirmation-bus/types.js +1 -0
- package/dist/src/confirmation-bus/types.js.map +1 -1
- package/dist/src/core/apiKeyCredentialStorage.d.ts +17 -0
- package/dist/src/core/apiKeyCredentialStorage.js +64 -0
- package/dist/src/core/apiKeyCredentialStorage.js.map +1 -0
- package/dist/src/core/apiKeyCredentialStorage.test.d.ts +6 -0
- package/dist/src/core/apiKeyCredentialStorage.test.js +71 -0
- package/dist/src/core/apiKeyCredentialStorage.test.js.map +1 -0
- package/dist/src/core/baseLlmClient.d.ts +4 -8
- package/dist/src/core/baseLlmClient.js +6 -11
- package/dist/src/core/baseLlmClient.js.map +1 -1
- package/dist/src/core/baseLlmClient.test.js +22 -27
- package/dist/src/core/baseLlmClient.test.js.map +1 -1
- package/dist/src/core/client.d.ts +12 -19
- package/dist/src/core/client.js +104 -206
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +329 -452
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.d.ts +3 -2
- package/dist/src/core/contentGenerator.js +56 -41
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +49 -1
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +8 -4
- package/dist/src/core/coreToolScheduler.js +348 -179
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +575 -219
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/fakeContentGenerator.d.ts +33 -0
- package/dist/src/core/fakeContentGenerator.js +58 -0
- package/dist/src/core/fakeContentGenerator.js.map +1 -0
- package/dist/src/core/fakeContentGenerator.test.d.ts +6 -0
- package/dist/src/core/fakeContentGenerator.test.js +127 -0
- package/dist/src/core/fakeContentGenerator.test.js.map +1 -0
- package/dist/src/core/geminiChat.d.ts +23 -18
- package/dist/src/core/geminiChat.js +186 -108
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +581 -270
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/logger.d.ts +7 -2
- package/dist/src/core/logger.js +35 -27
- package/dist/src/core/logger.js.map +1 -1
- package/dist/src/core/logger.test.js +45 -29
- package/dist/src/core/logger.test.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.d.ts +1 -0
- package/dist/src/core/loggingContentGenerator.js +113 -33
- package/dist/src/core/loggingContentGenerator.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.test.d.ts +6 -0
- package/dist/src/core/loggingContentGenerator.test.js +180 -0
- package/dist/src/core/loggingContentGenerator.test.js.map +1 -0
- package/dist/src/core/nonInteractiveToolExecutor.d.ts +3 -2
- package/dist/src/core/nonInteractiveToolExecutor.js +12 -7
- package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
- package/dist/src/core/nonInteractiveToolExecutor.test.js +12 -8
- package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
- package/dist/src/core/openaiContentGenerator.d.ts +15 -1
- package/dist/src/core/openaiContentGenerator.js +139 -22
- package/dist/src/core/openaiContentGenerator.js.map +1 -1
- package/dist/src/core/prompts.d.ts +2 -1
- package/dist/src/core/prompts.js +135 -154
- package/dist/src/core/prompts.js.map +1 -1
- package/dist/src/core/prompts.test.js +128 -189
- package/dist/src/core/prompts.test.js.map +1 -1
- package/dist/src/core/recordingContentGenerator.d.ts +18 -0
- package/dist/src/core/recordingContentGenerator.js +77 -0
- package/dist/src/core/recordingContentGenerator.js.map +1 -0
- package/dist/src/core/recordingContentGenerator.test.d.ts +6 -0
- package/dist/src/core/recordingContentGenerator.test.js +101 -0
- package/dist/src/core/recordingContentGenerator.test.js.map +1 -0
- package/dist/src/core/tokenLimits.test.d.ts +6 -0
- package/dist/src/core/tokenLimits.test.js +26 -0
- package/dist/src/core/tokenLimits.test.js.map +1 -0
- package/dist/src/core/turn.d.ts +23 -3
- package/dist/src/core/turn.js +18 -9
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/core/turn.test.js +98 -104
- package/dist/src/core/turn.test.js.map +1 -1
- package/dist/src/fallback/handler.js +60 -8
- package/dist/src/fallback/handler.js.map +1 -1
- package/dist/src/fallback/handler.test.js +132 -17
- package/dist/src/fallback/handler.test.js.map +1 -1
- package/dist/src/fallback/types.d.ts +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/hooks/hookAggregator.d.ts +68 -0
- package/dist/src/hooks/hookAggregator.js +262 -0
- package/dist/src/hooks/hookAggregator.js.map +1 -0
- package/dist/src/hooks/hookAggregator.test.d.ts +6 -0
- package/dist/src/hooks/hookAggregator.test.js +387 -0
- package/dist/src/hooks/hookAggregator.test.js.map +1 -0
- package/dist/src/hooks/hookPlanner.d.ts +46 -0
- package/dist/src/hooks/hookPlanner.js +108 -0
- package/dist/src/hooks/hookPlanner.js.map +1 -0
- package/dist/src/hooks/hookPlanner.test.d.ts +6 -0
- package/dist/src/hooks/hookPlanner.test.js +255 -0
- package/dist/src/hooks/hookPlanner.test.js.map +1 -0
- package/dist/src/hooks/hookRegistry.d.ts +87 -0
- package/dist/src/hooks/hookRegistry.js +198 -0
- package/dist/src/hooks/hookRegistry.js.map +1 -0
- package/dist/src/hooks/hookRegistry.test.d.ts +6 -0
- package/dist/src/hooks/hookRegistry.test.js +341 -0
- package/dist/src/hooks/hookRegistry.test.js.map +1 -0
- package/dist/src/hooks/hookRunner.d.ts +42 -0
- package/dist/src/hooks/hookRunner.js +272 -0
- package/dist/src/hooks/hookRunner.js.map +1 -0
- package/dist/src/hooks/hookRunner.test.d.ts +6 -0
- package/dist/src/hooks/hookRunner.test.js +468 -0
- package/dist/src/hooks/hookRunner.test.js.map +1 -0
- package/dist/src/hooks/hookTranslator.d.ts +113 -0
- package/dist/src/hooks/hookTranslator.js +232 -0
- package/dist/src/hooks/hookTranslator.js.map +1 -0
- package/dist/src/hooks/hookTranslator.test.d.ts +6 -0
- package/dist/src/hooks/hookTranslator.test.js +192 -0
- package/dist/src/hooks/hookTranslator.test.js.map +1 -0
- package/dist/src/hooks/types.d.ts +384 -0
- package/dist/src/hooks/types.js +284 -0
- package/dist/src/hooks/types.js.map +1 -0
- package/dist/src/hooks/types.test.d.ts +6 -0
- package/dist/src/hooks/types.test.js +313 -0
- package/dist/src/hooks/types.test.js.map +1 -0
- package/dist/src/ide/detect-ide.d.ts +4 -0
- package/dist/src/ide/detect-ide.js +6 -1
- package/dist/src/ide/detect-ide.js.map +1 -1
- package/dist/src/ide/detect-ide.test.js +16 -0
- package/dist/src/ide/detect-ide.test.js.map +1 -1
- package/dist/src/ide/ide-client.d.ts +3 -1
- package/dist/src/ide/ide-client.js +12 -10
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-client.test.js +163 -4
- package/dist/src/ide/ide-client.test.js.map +1 -1
- package/dist/src/ide/ide-installer.js +66 -21
- package/dist/src/ide/ide-installer.js.map +1 -1
- package/dist/src/ide/ide-installer.test.js +54 -1
- package/dist/src/ide/ide-installer.test.js.map +1 -1
- package/dist/src/ide/process-utils.js +85 -75
- package/dist/src/ide/process-utils.js.map +1 -1
- package/dist/src/ide/process-utils.test.js +83 -90
- package/dist/src/ide/process-utils.test.js.map +1 -1
- package/dist/src/ide/types.d.ts +5 -5
- package/dist/src/ide/types.js +1 -1
- package/dist/src/index.d.ts +21 -0
- package/dist/src/index.js +24 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.d.ts +2 -0
- package/dist/src/mcp/google-auth-provider.js +21 -3
- package/dist/src/mcp/google-auth-provider.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.test.js +42 -9
- package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
- package/dist/src/mcp/oauth-provider.d.ts +8 -5
- package/dist/src/mcp/oauth-provider.js +140 -55
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-provider.test.js +369 -2
- package/dist/src/mcp/oauth-provider.test.js.map +1 -1
- package/dist/src/mcp/oauth-token-storage.js +5 -4
- package/dist/src/mcp/oauth-token-storage.js.map +1 -1
- package/dist/src/mcp/oauth-token-storage.test.js +17 -11
- package/dist/src/mcp/oauth-token-storage.test.js.map +1 -1
- package/dist/src/mcp/oauth-utils.d.ts +7 -0
- package/dist/src/mcp/oauth-utils.js +28 -8
- package/dist/src/mcp/oauth-utils.js.map +1 -1
- package/dist/src/mcp/oauth-utils.test.js +45 -2
- package/dist/src/mcp/oauth-utils.test.js.map +1 -1
- package/dist/src/mcp/sa-impersonation-provider.d.ts +0 -6
- package/dist/src/mcp/sa-impersonation-provider.js +6 -23
- package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
- package/dist/src/mcp/token-storage/base-token-storage.test.js +75 -84
- package/dist/src/mcp/token-storage/base-token-storage.test.js.map +1 -1
- package/dist/src/mcp/token-storage/file-token-storage.js +3 -2
- package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
- package/dist/src/mcp/token-storage/file-token-storage.test.js +11 -8
- package/dist/src/mcp/token-storage/file-token-storage.test.js.map +1 -1
- package/dist/src/mcp/token-storage/keychain-token-storage.d.ts +6 -2
- package/dist/src/mcp/token-storage/keychain-token-storage.js +63 -7
- package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
- package/dist/src/mcp/token-storage/keychain-token-storage.test.js +54 -3
- package/dist/src/mcp/token-storage/keychain-token-storage.test.js.map +1 -1
- package/dist/src/mcp/token-storage/types.d.ts +6 -0
- package/dist/src/mcp/token-storage/types.js.map +1 -1
- package/dist/src/output/stream-json-formatter.d.ts +32 -0
- package/dist/src/output/stream-json-formatter.js +52 -0
- package/dist/src/output/stream-json-formatter.js.map +1 -0
- package/dist/src/output/stream-json-formatter.test.d.ts +6 -0
- package/dist/src/output/stream-json-formatter.test.js +479 -0
- package/dist/src/output/stream-json-formatter.test.js.map +1 -0
- package/dist/src/output/types.d.ts +63 -1
- package/dist/src/output/types.js +11 -0
- package/dist/src/output/types.js.map +1 -1
- package/dist/src/policy/config.d.ts +31 -0
- package/dist/src/policy/config.js +199 -0
- package/dist/src/policy/config.js.map +1 -0
- package/dist/src/policy/config.test.d.ts +6 -0
- package/dist/src/policy/config.test.js +538 -0
- package/dist/src/policy/config.test.js.map +1 -0
- package/dist/src/policy/index.d.ts +2 -0
- package/dist/src/policy/index.js +2 -0
- package/dist/src/policy/index.js.map +1 -1
- package/dist/src/policy/policies/discovered.toml +8 -0
- package/dist/src/policy/policies/read-only.toml +56 -0
- package/dist/src/policy/policies/write.toml +73 -0
- package/dist/src/policy/policies/yolo.toml +31 -0
- package/dist/src/policy/policy-engine.d.ts +12 -3
- package/dist/src/policy/policy-engine.js +74 -8
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +460 -76
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/policy/toml-loader.d.ts +47 -0
- package/dist/src/policy/toml-loader.js +411 -0
- package/dist/src/policy/toml-loader.js.map +1 -0
- package/dist/src/policy/toml-loader.test.d.ts +6 -0
- package/dist/src/policy/toml-loader.test.js +376 -0
- package/dist/src/policy/toml-loader.test.js.map +1 -0
- package/dist/src/policy/types.d.ts +83 -0
- package/dist/src/policy/types.js +10 -0
- package/dist/src/policy/types.js.map +1 -1
- package/dist/src/prompts/mcp-prompts.test.d.ts +6 -0
- package/dist/src/prompts/mcp-prompts.test.js +39 -0
- package/dist/src/prompts/mcp-prompts.test.js.map +1 -0
- package/dist/src/prompts/prompt-registry.js +2 -1
- package/dist/src/prompts/prompt-registry.js.map +1 -1
- package/dist/src/prompts/prompt-registry.test.d.ts +6 -0
- package/dist/src/prompts/prompt-registry.test.js +96 -0
- package/dist/src/prompts/prompt-registry.test.js.map +1 -0
- package/dist/src/routing/modelRouterService.js +15 -0
- package/dist/src/routing/modelRouterService.js.map +1 -1
- package/dist/src/routing/modelRouterService.test.js +62 -0
- package/dist/src/routing/modelRouterService.test.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.d.ts +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js +9 -16
- package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.test.js +17 -13
- package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.test.js +4 -0
- package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js +2 -2
- package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.test.js +3 -0
- package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -1
- package/dist/src/safety/built-in.d.ts +21 -0
- package/dist/src/safety/built-in.js +106 -0
- package/dist/src/safety/built-in.js.map +1 -0
- package/dist/src/safety/built-in.test.d.ts +6 -0
- package/dist/src/safety/built-in.test.js +199 -0
- package/dist/src/safety/built-in.test.js.map +1 -0
- package/dist/src/safety/checker-runner.d.ts +48 -0
- package/dist/src/safety/checker-runner.js +208 -0
- package/dist/src/safety/checker-runner.js.map +1 -0
- package/dist/src/safety/checker-runner.test.d.ts +6 -0
- package/dist/src/safety/checker-runner.test.js +238 -0
- package/dist/src/safety/checker-runner.test.js.map +1 -0
- package/dist/src/safety/context-builder.d.ts +23 -0
- package/dist/src/safety/context-builder.js +47 -0
- package/dist/src/safety/context-builder.js.map +1 -0
- package/dist/src/safety/context-builder.test.d.ts +6 -0
- package/dist/src/safety/context-builder.test.js +49 -0
- package/dist/src/safety/context-builder.test.js.map +1 -0
- package/dist/src/safety/protocol.d.ts +88 -0
- package/dist/src/safety/protocol.js +15 -0
- package/dist/src/safety/protocol.js.map +1 -0
- package/dist/src/safety/registry.d.ts +26 -0
- package/dist/src/safety/registry.js +65 -0
- package/dist/src/safety/registry.js.map +1 -0
- package/dist/src/safety/registry.test.d.ts +6 -0
- package/dist/src/safety/registry.test.js +31 -0
- package/dist/src/safety/registry.test.js.map +1 -0
- package/dist/src/services/chatCompressionService.d.ts +32 -0
- package/dist/src/services/chatCompressionService.js +162 -0
- package/dist/src/services/chatCompressionService.js.map +1 -0
- package/dist/src/services/chatCompressionService.test.d.ts +6 -0
- package/dist/src/services/chatCompressionService.test.js +210 -0
- package/dist/src/services/chatCompressionService.test.js.map +1 -0
- package/dist/src/services/chatRecordingService.d.ts +3 -2
- package/dist/src/services/chatRecordingService.js +11 -9
- package/dist/src/services/chatRecordingService.js.map +1 -1
- package/dist/src/services/fileDiscoveryService.d.ts +2 -14
- package/dist/src/services/fileDiscoveryService.js +19 -55
- package/dist/src/services/fileDiscoveryService.js.map +1 -1
- package/dist/src/services/fileDiscoveryService.test.js +91 -11
- package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
- package/dist/src/services/loopDetectionService.d.ts +4 -1
- package/dist/src/services/loopDetectionService.js +95 -42
- package/dist/src/services/loopDetectionService.js.map +1 -1
- package/dist/src/services/loopDetectionService.test.js +220 -12
- package/dist/src/services/loopDetectionService.test.js.map +1 -1
- package/dist/src/services/modelConfig.golden.test.d.ts +6 -0
- package/dist/src/services/modelConfig.golden.test.js +42 -0
- package/dist/src/services/modelConfig.golden.test.js.map +1 -0
- package/dist/src/services/modelConfig.integration.test.d.ts +6 -0
- package/dist/src/services/modelConfig.integration.test.js +247 -0
- package/dist/src/services/modelConfig.integration.test.js.map +1 -0
- package/dist/src/services/modelConfigService.d.ts +48 -0
- package/dist/src/services/modelConfigService.js +151 -0
- package/dist/src/services/modelConfigService.js.map +1 -0
- package/dist/src/services/modelConfigService.test.d.ts +6 -0
- package/dist/src/services/modelConfigService.test.js +531 -0
- package/dist/src/services/modelConfigService.test.js.map +1 -0
- package/dist/src/services/shellExecutionService.d.ts +1 -0
- package/dist/src/services/shellExecutionService.js +195 -92
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +137 -14
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/services/test-data/resolved-aliases.golden.json +202 -0
- package/dist/src/telemetry/activity-monitor.d.ts +116 -0
- package/dist/src/telemetry/activity-monitor.js +209 -0
- package/dist/src/telemetry/activity-monitor.js.map +1 -0
- package/dist/src/telemetry/activity-monitor.test.d.ts +6 -0
- package/dist/src/telemetry/activity-monitor.test.js +251 -0
- package/dist/src/telemetry/activity-monitor.test.js.map +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +25 -7
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +294 -76
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +192 -66
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +25 -3
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +59 -5
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/constants.d.ts +0 -28
- package/dist/src/telemetry/constants.js +0 -29
- package/dist/src/telemetry/constants.js.map +1 -1
- package/dist/src/telemetry/gcp-exporters.js +0 -1
- package/dist/src/telemetry/gcp-exporters.js.map +1 -1
- package/dist/src/telemetry/gcp-exporters.test.js +1 -1
- package/dist/src/telemetry/gcp-exporters.test.js.map +1 -1
- package/dist/src/telemetry/index.d.ts +7 -3
- package/dist/src/telemetry/index.js +13 -4
- package/dist/src/telemetry/index.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +14 -7
- package/dist/src/telemetry/loggers.js +197 -320
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.circular.js +0 -1
- package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +460 -59
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/memory-monitor.d.ts +149 -0
- package/dist/src/telemetry/memory-monitor.js +335 -0
- package/dist/src/telemetry/memory-monitor.js.map +1 -0
- package/dist/src/telemetry/memory-monitor.test.d.ts +6 -0
- package/dist/src/telemetry/memory-monitor.test.js +472 -0
- package/dist/src/telemetry/memory-monitor.test.js.map +1 -0
- package/dist/src/telemetry/metrics.d.ts +180 -4
- package/dist/src/telemetry/metrics.js +270 -6
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +502 -184
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/sdk.js +3 -2
- package/dist/src/telemetry/sdk.js.map +1 -1
- package/dist/src/telemetry/semantic.d.ts +82 -0
- package/dist/src/telemetry/semantic.js +269 -0
- package/dist/src/telemetry/semantic.js.map +1 -0
- package/dist/src/telemetry/semantic.test.d.ts +6 -0
- package/dist/src/telemetry/semantic.test.js +387 -0
- package/dist/src/telemetry/semantic.test.js.map +1 -0
- package/dist/src/telemetry/telemetry-utils.test.js +29 -28
- package/dist/src/telemetry/telemetry-utils.test.js.map +1 -1
- package/dist/src/telemetry/telemetryAttributes.d.ts +8 -0
- package/dist/src/telemetry/telemetryAttributes.js +19 -0
- package/dist/src/telemetry/telemetryAttributes.js.map +1 -0
- package/dist/src/telemetry/trace.d.ts +46 -0
- package/dist/src/telemetry/trace.js +121 -0
- package/dist/src/telemetry/trace.js.map +1 -0
- package/dist/src/telemetry/types.d.ts +227 -29
- package/dist/src/telemetry/types.js +858 -72
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.d.ts +1 -1
- package/dist/src/telemetry/uiTelemetry.js +7 -7
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.test.js +89 -67
- package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
- package/dist/src/test-utils/config.d.ts +1 -1
- package/dist/src/test-utils/config.js +1 -1
- package/dist/src/tools/base-tool-invocation.test.d.ts +6 -0
- package/dist/src/tools/base-tool-invocation.test.js +85 -0
- package/dist/src/tools/base-tool-invocation.test.js.map +1 -0
- package/dist/src/tools/edit.d.ts +4 -3
- package/dist/src/tools/edit.js +50 -47
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +306 -216
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/glob.d.ts +4 -3
- package/dist/src/tools/glob.js +24 -27
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/glob.test.js +212 -205
- package/dist/src/tools/glob.test.js.map +1 -1
- package/dist/src/tools/grep.d.ts +4 -3
- package/dist/src/tools/grep.js +31 -25
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/grep.test.js +15 -12
- package/dist/src/tools/grep.test.js.map +1 -1
- package/dist/src/tools/ls.d.ts +4 -3
- package/dist/src/tools/ls.js +29 -35
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +34 -42
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.d.ts +49 -11
- package/dist/src/tools/mcp-client-manager.js +191 -31
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +132 -25
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +12 -5
- package/dist/src/tools/mcp-client.js +287 -267
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +352 -45
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +6 -2
- package/dist/src/tools/mcp-tool.js +19 -8
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/mcp-tool.test.js +186 -273
- package/dist/src/tools/mcp-tool.test.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +7 -5
- package/dist/src/tools/memoryTool.js +14 -12
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/memoryTool.test.js +10 -9
- package/dist/src/tools/memoryTool.test.js.map +1 -1
- package/dist/src/tools/message-bus-integration.test.js +14 -1
- package/dist/src/tools/message-bus-integration.test.js.map +1 -1
- package/dist/src/tools/modifiable-tool.d.ts +5 -1
- package/dist/src/tools/modifiable-tool.js +38 -16
- package/dist/src/tools/modifiable-tool.js.map +1 -1
- package/dist/src/tools/modifiable-tool.test.js +66 -31
- package/dist/src/tools/modifiable-tool.test.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +6 -5
- package/dist/src/tools/read-file.js +26 -32
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +68 -33
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/read-many-files.d.ts +6 -12
- package/dist/src/tools/read-many-files.js +28 -57
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +37 -36
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/ripGrep.d.ts +28 -10
- package/dist/src/tools/ripGrep.js +195 -193
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/ripGrep.test.js +533 -204
- package/dist/src/tools/ripGrep.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +8 -6
- package/dist/src/tools/shell.js +64 -38
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +134 -43
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/smart-edit.d.ts +10 -23
- package/dist/src/tools/smart-edit.js +100 -85
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/smart-edit.test.js +229 -179
- package/dist/src/tools/smart-edit.test.js.map +1 -1
- package/dist/src/tools/tool-error.d.ts +21 -0
- package/dist/src/tools/tool-error.js +27 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-names.d.ts +17 -0
- package/dist/src/tools/tool-names.js +21 -0
- package/dist/src/tools/tool-names.js.map +1 -0
- package/dist/src/tools/tool-registry.d.ts +32 -20
- package/dist/src/tools/tool-registry.js +122 -78
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +167 -90
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +23 -8
- package/dist/src/tools/tools.js +69 -37
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.d.ts +11 -3
- package/dist/src/tools/web-fetch.js +80 -38
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +338 -9
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/tools/web-search.d.ts +4 -3
- package/dist/src/tools/web-search.js +11 -9
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/web-search.test.js +6 -0
- package/dist/src/tools/web-search.test.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +3 -2
- package/dist/src/tools/write-file.js +41 -40
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.test.js +130 -123
- package/dist/src/tools/write-file.test.js.map +1 -1
- package/dist/src/tools/write-todos.d.ts +34 -9
- package/dist/src/tools/write-todos.js +54 -11
- package/dist/src/tools/write-todos.js.map +1 -1
- package/dist/src/tools/write-todos.test.js +2 -2
- package/dist/src/tools/write-todos.test.js.map +1 -1
- package/dist/src/utils/bfsFileSearch.js +3 -2
- package/dist/src/utils/bfsFileSearch.js.map +1 -1
- package/dist/src/utils/channel.d.ts +19 -0
- package/dist/src/utils/channel.js +49 -0
- package/dist/src/utils/channel.js.map +1 -0
- package/dist/src/utils/channel.test.d.ts +6 -0
- package/dist/src/utils/channel.test.js +170 -0
- package/dist/src/utils/channel.test.js.map +1 -0
- package/dist/src/utils/debugLogger.d.ts +25 -0
- package/dist/src/utils/debugLogger.js +33 -0
- package/dist/src/utils/debugLogger.js.map +1 -0
- package/dist/src/utils/debugLogger.test.d.ts +6 -0
- package/dist/src/utils/debugLogger.test.js +69 -0
- package/dist/src/utils/debugLogger.test.js.map +1 -0
- package/dist/src/utils/delay.d.ts +16 -0
- package/dist/src/utils/delay.js +43 -0
- package/dist/src/utils/delay.js.map +1 -0
- package/dist/src/utils/delay.test.d.ts +6 -0
- package/dist/src/utils/delay.test.js +88 -0
- package/dist/src/utils/delay.test.js.map +1 -0
- package/dist/src/utils/editCorrector.js +10 -25
- package/dist/src/utils/editCorrector.js.map +1 -1
- package/dist/src/utils/editCorrector.test.js +19 -5
- package/dist/src/utils/editCorrector.test.js.map +1 -1
- package/dist/src/utils/editor.d.ts +4 -2
- package/dist/src/utils/editor.js +53 -39
- package/dist/src/utils/editor.js.map +1 -1
- package/dist/src/utils/editor.test.js +18 -45
- package/dist/src/utils/editor.test.js.map +1 -1
- package/dist/src/utils/environmentContext.d.ts +2 -1
- package/dist/src/utils/environmentContext.js +20 -33
- package/dist/src/utils/environmentContext.js.map +1 -1
- package/dist/src/utils/environmentContext.test.js +6 -34
- package/dist/src/utils/environmentContext.test.js.map +1 -1
- package/dist/src/utils/errorParsing.d.ts +1 -1
- package/dist/src/utils/errorParsing.js +5 -33
- package/dist/src/utils/errorParsing.js.map +1 -1
- package/dist/src/utils/errorParsing.test.js +0 -88
- package/dist/src/utils/errorParsing.test.js.map +1 -1
- package/dist/src/utils/errors.d.ts +3 -0
- package/dist/src/utils/errors.js +6 -0
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/events.d.ts +121 -0
- package/dist/src/utils/events.js +84 -0
- package/dist/src/utils/events.js.map +1 -0
- package/dist/src/utils/events.test.d.ts +6 -0
- package/dist/src/utils/events.test.js +212 -0
- package/dist/src/utils/events.test.js.map +1 -0
- package/dist/src/utils/extensionLoader.d.ts +86 -0
- package/dist/src/utils/extensionLoader.js +208 -0
- package/dist/src/utils/extensionLoader.js.map +1 -0
- package/dist/src/utils/extensionLoader.test.d.ts +6 -0
- package/dist/src/utils/extensionLoader.test.js +154 -0
- package/dist/src/utils/extensionLoader.test.js.map +1 -0
- package/dist/src/utils/fetch.d.ts +1 -0
- package/dist/src/utils/fetch.js +4 -0
- package/dist/src/utils/fetch.js.map +1 -1
- package/dist/src/utils/fileUtils.d.ts +4 -0
- package/dist/src/utils/fileUtils.js +34 -2
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/fileUtils.test.js +87 -61
- package/dist/src/utils/fileUtils.test.js.map +1 -1
- package/dist/src/utils/filesearch/fileSearch.js +1 -1
- package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
- package/dist/src/utils/flashFallback.test.js +28 -47
- package/dist/src/utils/flashFallback.test.js.map +1 -1
- package/dist/src/utils/formatters.d.ts +1 -0
- package/dist/src/utils/formatters.js +2 -1
- package/dist/src/utils/formatters.js.map +1 -1
- package/dist/src/utils/formatters.test.d.ts +6 -0
- package/dist/src/utils/formatters.test.js +26 -0
- package/dist/src/utils/formatters.test.js.map +1 -0
- package/dist/src/utils/getFolderStructure.js +9 -17
- package/dist/src/utils/getFolderStructure.js.map +1 -1
- package/dist/src/utils/getFolderStructure.test.js +7 -6
- package/dist/src/utils/getFolderStructure.test.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.d.ts +4 -1
- package/dist/src/utils/gitIgnoreParser.js +28 -10
- package/dist/src/utils/gitIgnoreParser.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.test.js +58 -0
- package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
- package/dist/src/utils/googleErrors.d.ts +104 -0
- package/dist/src/utils/googleErrors.js +152 -0
- package/dist/src/utils/googleErrors.js.map +1 -0
- package/dist/src/utils/googleErrors.test.d.ts +6 -0
- package/dist/src/utils/googleErrors.test.js +301 -0
- package/dist/src/utils/googleErrors.test.js.map +1 -0
- package/dist/src/utils/googleQuotaErrors.d.ts +37 -0
- package/dist/src/utils/googleQuotaErrors.js +157 -0
- package/dist/src/utils/googleQuotaErrors.js.map +1 -0
- package/dist/src/utils/googleQuotaErrors.test.d.ts +6 -0
- package/dist/src/utils/googleQuotaErrors.test.js +311 -0
- package/dist/src/utils/googleQuotaErrors.test.js.map +1 -0
- package/dist/src/utils/httpErrors.d.ts +18 -0
- package/dist/src/utils/httpErrors.js +36 -0
- package/dist/src/utils/httpErrors.js.map +1 -0
- package/dist/src/utils/ignorePatterns.test.js +26 -30
- package/dist/src/utils/ignorePatterns.test.js.map +1 -1
- package/dist/src/utils/installationManager.js +2 -1
- package/dist/src/utils/installationManager.js.map +1 -1
- package/dist/src/utils/installationManager.test.js +6 -4
- package/dist/src/utils/installationManager.test.js.map +1 -1
- package/dist/src/utils/llm-edit-fixer.d.ts +1 -1
- package/dist/src/utils/llm-edit-fixer.js +33 -9
- package/dist/src/utils/llm-edit-fixer.js.map +1 -1
- package/dist/src/utils/llm-edit-fixer.test.js +38 -1
- package/dist/src/utils/llm-edit-fixer.test.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.d.ts +20 -1
- package/dist/src/utils/memoryDiscovery.js +176 -12
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.test.js +299 -40
- package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
- package/dist/src/utils/memoryImportProcessor.js +4 -3
- package/dist/src/utils/memoryImportProcessor.js.map +1 -1
- package/dist/src/utils/memoryImportProcessor.test.js +8 -14
- package/dist/src/utils/memoryImportProcessor.test.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.js +3 -3
- package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.test.js +13 -5
- package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
- package/dist/src/utils/package.d.ts +12 -0
- package/dist/src/utils/package.js +15 -0
- package/dist/src/utils/package.js.map +1 -0
- package/dist/src/utils/pathCorrector.d.ts +25 -0
- package/dist/src/utils/pathCorrector.js +33 -0
- package/dist/src/utils/pathCorrector.js.map +1 -0
- package/dist/src/utils/pathCorrector.test.d.ts +6 -0
- package/dist/src/utils/pathCorrector.test.js +83 -0
- package/dist/src/utils/pathCorrector.test.js.map +1 -0
- package/dist/src/utils/pathReader.js +4 -4
- package/dist/src/utils/pathReader.js.map +1 -1
- package/dist/src/utils/pathReader.test.js +44 -1
- package/dist/src/utils/pathReader.test.js.map +1 -1
- package/dist/src/utils/paths.d.ts +1 -1
- package/dist/src/utils/paths.js +131 -29
- package/dist/src/utils/paths.js.map +1 -1
- package/dist/src/utils/paths.test.js +200 -68
- package/dist/src/utils/paths.test.js.map +1 -1
- package/dist/src/utils/quotaErrorDetection.d.ts +0 -2
- package/dist/src/utils/quotaErrorDetection.js +0 -46
- package/dist/src/utils/quotaErrorDetection.js.map +1 -1
- package/dist/src/utils/retry.d.ts +3 -10
- package/dist/src/utils/retry.js +97 -195
- package/dist/src/utils/retry.js.map +1 -1
- package/dist/src/utils/retry.test.js +179 -145
- package/dist/src/utils/retry.test.js.map +1 -1
- package/dist/src/utils/safeJsonStringify.d.ts +4 -4
- package/dist/src/utils/safeJsonStringify.js +31 -7
- package/dist/src/utils/safeJsonStringify.js.map +1 -1
- package/dist/src/utils/shell-utils.d.ts +15 -2
- package/dist/src/utils/shell-utils.js +387 -140
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +244 -62
- package/dist/src/utils/shell-utils.test.js.map +1 -1
- package/dist/src/utils/stdio.d.ts +32 -0
- package/dist/src/utils/stdio.js +85 -0
- package/dist/src/utils/stdio.js.map +1 -0
- package/dist/src/utils/stdio.test.d.ts +6 -0
- package/dist/src/utils/stdio.test.js +47 -0
- package/dist/src/utils/stdio.test.js.map +1 -0
- package/dist/src/utils/summarizer.d.ts +4 -2
- package/dist/src/utils/summarizer.js +8 -9
- package/dist/src/utils/summarizer.js.map +1 -1
- package/dist/src/utils/summarizer.test.js +32 -12
- package/dist/src/utils/summarizer.test.js.map +1 -1
- package/dist/src/utils/systemEncoding.js +5 -4
- package/dist/src/utils/systemEncoding.js.map +1 -1
- package/dist/src/utils/systemEncoding.test.js +2 -1
- package/dist/src/utils/systemEncoding.test.js.map +1 -1
- package/dist/src/utils/terminal.d.ts +14 -0
- package/dist/src/utils/terminal.js +38 -0
- package/dist/src/utils/terminal.js.map +1 -0
- package/dist/src/utils/tool-utils.d.ts +2 -2
- package/dist/src/utils/tool-utils.js +15 -6
- package/dist/src/utils/tool-utils.js.map +1 -1
- package/dist/src/utils/tool-utils.test.js +8 -0
- package/dist/src/utils/tool-utils.test.js.map +1 -1
- package/dist/src/utils/userAccountManager.js +5 -4
- package/dist/src/utils/userAccountManager.js.map +1 -1
- package/dist/src/utils/userAccountManager.test.js +9 -7
- package/dist/src/utils/userAccountManager.test.js.map +1 -1
- package/dist/src/utils/workspaceContext.d.ts +4 -3
- package/dist/src/utils/workspaceContext.js +13 -13
- package/dist/src/utils/workspaceContext.js.map +1 -1
- package/dist/src/utils/workspaceContext.test.js +8 -7
- package/dist/src/utils/workspaceContext.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -7
|
@@ -5,13 +5,15 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { Attributes, Meter, Counter, Histogram } from '@opentelemetry/api';
|
|
7
7
|
import { ValueType } from '@opentelemetry/api';
|
|
8
|
-
import { EVENT_CHAT_COMPRESSION } from './constants.js';
|
|
9
8
|
import type { Config } from '../config/config.js';
|
|
10
|
-
import type { ModelRoutingEvent, ModelSlashCommandEvent } from './types.js';
|
|
9
|
+
import type { ModelRoutingEvent, ModelSlashCommandEvent, AgentFinishEvent, RecoveryAttemptEvent } from './types.js';
|
|
10
|
+
declare const EVENT_CHAT_COMPRESSION = "gemini_cli.chat_compression";
|
|
11
11
|
declare const TOOL_CALL_COUNT = "gemini_cli.tool.call.count";
|
|
12
12
|
declare const API_REQUEST_COUNT = "gemini_cli.api.request.count";
|
|
13
13
|
declare const TOKEN_USAGE = "gemini_cli.token.usage";
|
|
14
14
|
declare const FILE_OPERATION_COUNT = "gemini_cli.file.operation.count";
|
|
15
|
+
declare const GEN_AI_CLIENT_TOKEN_USAGE = "gen_ai.client.token.usage";
|
|
16
|
+
declare const GEN_AI_CLIENT_OPERATION_DURATION = "gen_ai.client.operation.duration";
|
|
15
17
|
declare const STARTUP_TIME = "gemini_cli.startup.duration";
|
|
16
18
|
declare const MEMORY_USAGE = "gemini_cli.memory.usage";
|
|
17
19
|
declare const CPU_USAGE = "gemini_cli.cpu.usage";
|
|
@@ -70,6 +72,15 @@ declare const COUNTER_DEFINITIONS: {
|
|
|
70
72
|
programming_language?: string;
|
|
71
73
|
};
|
|
72
74
|
};
|
|
75
|
+
readonly "gemini_cli.lines.changed": {
|
|
76
|
+
readonly description: "Number of lines changed (from file diffs).";
|
|
77
|
+
readonly valueType: ValueType.INT;
|
|
78
|
+
readonly assign: (c: Counter) => Counter<Attributes>;
|
|
79
|
+
readonly attributes: {
|
|
80
|
+
function_name?: string;
|
|
81
|
+
type: "added" | "removed";
|
|
82
|
+
};
|
|
83
|
+
};
|
|
73
84
|
readonly "gemini_cli.chat.invalid_chunk.count": {
|
|
74
85
|
readonly description: "Counts invalid chunks received from a stream.";
|
|
75
86
|
readonly valueType: ValueType.INT;
|
|
@@ -114,6 +125,37 @@ declare const COUNTER_DEFINITIONS: {
|
|
|
114
125
|
tokens_after: number;
|
|
115
126
|
};
|
|
116
127
|
};
|
|
128
|
+
readonly "gemini_cli.agent.run.count": {
|
|
129
|
+
readonly description: "Counts agent runs, tagged by name and termination reason.";
|
|
130
|
+
readonly valueType: ValueType.INT;
|
|
131
|
+
readonly assign: (c: Counter) => Counter<Attributes>;
|
|
132
|
+
readonly attributes: {
|
|
133
|
+
agent_name: string;
|
|
134
|
+
terminate_reason: string;
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
readonly "gemini_cli.agent.recovery_attempt.count": {
|
|
138
|
+
readonly description: "Counts agent recovery attempts.";
|
|
139
|
+
readonly valueType: ValueType.INT;
|
|
140
|
+
readonly assign: (c: Counter) => Counter<Attributes>;
|
|
141
|
+
readonly attributes: {
|
|
142
|
+
agent_name: string;
|
|
143
|
+
reason: string;
|
|
144
|
+
success: boolean;
|
|
145
|
+
};
|
|
146
|
+
};
|
|
147
|
+
readonly "gemini_cli.ui.flicker.count": {
|
|
148
|
+
readonly description: "Counts UI frames that flicker (render taller than the terminal).";
|
|
149
|
+
readonly valueType: ValueType.INT;
|
|
150
|
+
readonly assign: (c: Counter) => Counter<Attributes>;
|
|
151
|
+
readonly attributes: Record<string, never>;
|
|
152
|
+
};
|
|
153
|
+
readonly "gemini_cli.exit.fail.count": {
|
|
154
|
+
readonly description: "Counts CLI exit failures.";
|
|
155
|
+
readonly valueType: ValueType.INT;
|
|
156
|
+
readonly assign: (c: Counter) => Counter<Attributes>;
|
|
157
|
+
readonly attributes: Record<string, never>;
|
|
158
|
+
};
|
|
117
159
|
};
|
|
118
160
|
declare const HISTOGRAM_DEFINITIONS: {
|
|
119
161
|
readonly "gemini_cli.tool.call.latency": {
|
|
@@ -144,6 +186,70 @@ declare const HISTOGRAM_DEFINITIONS: {
|
|
|
144
186
|
"routing.decision_source": string;
|
|
145
187
|
};
|
|
146
188
|
};
|
|
189
|
+
readonly "gemini_cli.agent.duration": {
|
|
190
|
+
readonly description: "Duration of agent runs in milliseconds.";
|
|
191
|
+
readonly unit: "ms";
|
|
192
|
+
readonly valueType: ValueType.INT;
|
|
193
|
+
readonly assign: (h: Histogram) => Histogram<Attributes>;
|
|
194
|
+
readonly attributes: {
|
|
195
|
+
agent_name: string;
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
readonly "gemini_cli.ui.slow_render.latency": {
|
|
199
|
+
readonly description: "Counts UI frames that take too long to render.";
|
|
200
|
+
readonly unit: "ms";
|
|
201
|
+
readonly valueType: ValueType.INT;
|
|
202
|
+
readonly assign: (h: Histogram) => Histogram<Attributes>;
|
|
203
|
+
readonly attributes: Record<string, never>;
|
|
204
|
+
};
|
|
205
|
+
readonly "gemini_cli.agent.turns": {
|
|
206
|
+
readonly description: "Number of turns taken by agents.";
|
|
207
|
+
readonly unit: "turns";
|
|
208
|
+
readonly valueType: ValueType.INT;
|
|
209
|
+
readonly assign: (h: Histogram) => Histogram<Attributes>;
|
|
210
|
+
readonly attributes: {
|
|
211
|
+
agent_name: string;
|
|
212
|
+
};
|
|
213
|
+
};
|
|
214
|
+
readonly "gemini_cli.agent.recovery_attempt.duration": {
|
|
215
|
+
readonly description: "Duration of agent recovery attempts in milliseconds.";
|
|
216
|
+
readonly unit: "ms";
|
|
217
|
+
readonly valueType: ValueType.INT;
|
|
218
|
+
readonly assign: (h: Histogram) => Histogram<Attributes>;
|
|
219
|
+
readonly attributes: {
|
|
220
|
+
agent_name: string;
|
|
221
|
+
};
|
|
222
|
+
};
|
|
223
|
+
readonly "gen_ai.client.token.usage": {
|
|
224
|
+
readonly description: "Number of input and output tokens used.";
|
|
225
|
+
readonly unit: "token";
|
|
226
|
+
readonly valueType: ValueType.INT;
|
|
227
|
+
readonly assign: (h: Histogram) => Histogram<Attributes>;
|
|
228
|
+
readonly attributes: {
|
|
229
|
+
"gen_ai.operation.name": string;
|
|
230
|
+
"gen_ai.provider.name": string;
|
|
231
|
+
"gen_ai.token.type": "input" | "output";
|
|
232
|
+
"gen_ai.request.model"?: string;
|
|
233
|
+
"gen_ai.response.model"?: string;
|
|
234
|
+
"server.address"?: string;
|
|
235
|
+
"server.port"?: number;
|
|
236
|
+
};
|
|
237
|
+
};
|
|
238
|
+
readonly "gen_ai.client.operation.duration": {
|
|
239
|
+
readonly description: "GenAI operation duration.";
|
|
240
|
+
readonly unit: "s";
|
|
241
|
+
readonly valueType: ValueType.DOUBLE;
|
|
242
|
+
readonly assign: (h: Histogram) => Histogram<Attributes>;
|
|
243
|
+
readonly attributes: {
|
|
244
|
+
"gen_ai.operation.name": string;
|
|
245
|
+
"gen_ai.provider.name": string;
|
|
246
|
+
"gen_ai.request.model"?: string;
|
|
247
|
+
"gen_ai.response.model"?: string;
|
|
248
|
+
"server.address"?: string;
|
|
249
|
+
"server.port"?: number;
|
|
250
|
+
"error.type"?: string;
|
|
251
|
+
};
|
|
252
|
+
};
|
|
147
253
|
};
|
|
148
254
|
declare const PERFORMANCE_COUNTER_DEFINITIONS: {
|
|
149
255
|
readonly "gemini_cli.performance.regression": {
|
|
@@ -298,14 +404,40 @@ export declare enum ApiRequestPhase {
|
|
|
298
404
|
RESPONSE_PROCESSING = "response_processing",
|
|
299
405
|
TOKEN_PROCESSING = "token_processing"
|
|
300
406
|
}
|
|
407
|
+
export declare enum GenAiOperationName {
|
|
408
|
+
GENERATE_CONTENT = "generate_content"
|
|
409
|
+
}
|
|
410
|
+
export declare enum GenAiProviderName {
|
|
411
|
+
GCP_GEN_AI = "gcp.gen_ai",
|
|
412
|
+
GCP_VERTEX_AI = "gcp.vertex_ai"
|
|
413
|
+
}
|
|
414
|
+
export declare enum GenAiTokenType {
|
|
415
|
+
INPUT = "input",
|
|
416
|
+
OUTPUT = "output"
|
|
417
|
+
}
|
|
301
418
|
export declare function getMeter(): Meter | undefined;
|
|
302
419
|
export declare function initializeMetrics(config: Config): void;
|
|
303
420
|
export declare function recordChatCompressionMetrics(config: Config, attributes: MetricDefinitions[typeof EVENT_CHAT_COMPRESSION]['attributes']): void;
|
|
304
421
|
export declare function recordToolCallMetrics(config: Config, durationMs: number, attributes: MetricDefinitions[typeof TOOL_CALL_COUNT]['attributes']): void;
|
|
305
|
-
export declare function
|
|
306
|
-
export declare function
|
|
422
|
+
export declare function recordCustomTokenUsageMetrics(config: Config, tokenCount: number, attributes: MetricDefinitions[typeof TOKEN_USAGE]['attributes']): void;
|
|
423
|
+
export declare function recordCustomApiResponseMetrics(config: Config, durationMs: number, attributes: MetricDefinitions[typeof API_REQUEST_COUNT]['attributes']): void;
|
|
307
424
|
export declare function recordApiErrorMetrics(config: Config, durationMs: number, attributes: MetricDefinitions[typeof API_REQUEST_COUNT]['attributes']): void;
|
|
308
425
|
export declare function recordFileOperationMetric(config: Config, attributes: MetricDefinitions[typeof FILE_OPERATION_COUNT]['attributes']): void;
|
|
426
|
+
export declare function recordLinesChanged(config: Config, lines: number, changeType: 'added' | 'removed', attributes?: {
|
|
427
|
+
function_name?: string;
|
|
428
|
+
}): void;
|
|
429
|
+
/**
|
|
430
|
+
* Records a metric for when a UI frame flickers.
|
|
431
|
+
*/
|
|
432
|
+
export declare function recordFlickerFrame(config: Config): void;
|
|
433
|
+
/**
|
|
434
|
+
* Records a metric for when user failed to exit
|
|
435
|
+
*/
|
|
436
|
+
export declare function recordExitFail(config: Config): void;
|
|
437
|
+
/**
|
|
438
|
+
* Records a metric for when a UI frame is slow in rendering
|
|
439
|
+
*/
|
|
440
|
+
export declare function recordSlowRender(config: Config, renderLatency: number): void;
|
|
309
441
|
/**
|
|
310
442
|
* Records a metric for when an invalid chunk is received from a stream.
|
|
311
443
|
*/
|
|
@@ -320,6 +452,19 @@ export declare function recordContentRetry(config: Config): void;
|
|
|
320
452
|
export declare function recordContentRetryFailure(config: Config): void;
|
|
321
453
|
export declare function recordModelSlashCommand(config: Config, event: ModelSlashCommandEvent): void;
|
|
322
454
|
export declare function recordModelRoutingMetrics(config: Config, event: ModelRoutingEvent): void;
|
|
455
|
+
export declare function recordAgentRunMetrics(config: Config, event: AgentFinishEvent): void;
|
|
456
|
+
export declare function recordRecoveryAttemptMetrics(config: Config, event: RecoveryAttemptEvent): void;
|
|
457
|
+
export declare function recordGenAiClientTokenUsage(config: Config, tokenCount: number, attributes: MetricDefinitions[typeof GEN_AI_CLIENT_TOKEN_USAGE]['attributes']): void;
|
|
458
|
+
export declare function recordGenAiClientOperationDuration(config: Config, durationSeconds: number, attributes: MetricDefinitions[typeof GEN_AI_CLIENT_OPERATION_DURATION]['attributes']): void;
|
|
459
|
+
export declare function getConventionAttributes(event: {
|
|
460
|
+
model: string;
|
|
461
|
+
auth_type?: string;
|
|
462
|
+
}): {
|
|
463
|
+
'gen_ai.operation.name': GenAiOperationName;
|
|
464
|
+
'gen_ai.provider.name': GenAiProviderName;
|
|
465
|
+
'gen_ai.request.model': string;
|
|
466
|
+
'gen_ai.response.model': string;
|
|
467
|
+
};
|
|
323
468
|
export declare function initializePerformanceMonitoring(config: Config): void;
|
|
324
469
|
export declare function recordStartupPerformance(config: Config, durationMs: number, attributes: MetricDefinitions[typeof STARTUP_TIME]['attributes']): void;
|
|
325
470
|
export declare function recordMemoryUsage(config: Config, bytes: number, attributes: MetricDefinitions[typeof MEMORY_USAGE]['attributes']): void;
|
|
@@ -332,4 +477,35 @@ export declare function recordPerformanceScore(config: Config, score: number, at
|
|
|
332
477
|
export declare function recordPerformanceRegression(config: Config, attributes: MetricDefinitions[typeof REGRESSION_DETECTION]['attributes']): void;
|
|
333
478
|
export declare function recordBaselineComparison(config: Config, attributes: MetricDefinitions[typeof BASELINE_COMPARISON]['attributes']): void;
|
|
334
479
|
export declare function isPerformanceMonitoringActive(): boolean;
|
|
480
|
+
/**
|
|
481
|
+
* Token usage recording that emits both custom and convention metrics.
|
|
482
|
+
*/
|
|
483
|
+
export declare function recordTokenUsageMetrics(config: Config, tokenCount: number, attributes: {
|
|
484
|
+
model: string;
|
|
485
|
+
type: 'input' | 'output' | 'thought' | 'cache' | 'tool';
|
|
486
|
+
genAiAttributes?: {
|
|
487
|
+
'gen_ai.operation.name': string;
|
|
488
|
+
'gen_ai.provider.name': string;
|
|
489
|
+
'gen_ai.request.model'?: string;
|
|
490
|
+
'gen_ai.response.model'?: string;
|
|
491
|
+
'server.address'?: string;
|
|
492
|
+
'server.port'?: number;
|
|
493
|
+
};
|
|
494
|
+
}): void;
|
|
495
|
+
/**
|
|
496
|
+
* Operation latency recording that emits both custom and convention metrics.
|
|
497
|
+
*/
|
|
498
|
+
export declare function recordApiResponseMetrics(config: Config, durationMs: number, attributes: {
|
|
499
|
+
model: string;
|
|
500
|
+
status_code?: number | string;
|
|
501
|
+
genAiAttributes?: {
|
|
502
|
+
'gen_ai.operation.name': string;
|
|
503
|
+
'gen_ai.provider.name': string;
|
|
504
|
+
'gen_ai.request.model'?: string;
|
|
505
|
+
'gen_ai.response.model'?: string;
|
|
506
|
+
'server.address'?: string;
|
|
507
|
+
'server.port'?: number;
|
|
508
|
+
'error.type'?: string;
|
|
509
|
+
};
|
|
510
|
+
}): void;
|
|
335
511
|
export {};
|
|
@@ -4,7 +4,10 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { diag, metrics, ValueType } from '@opentelemetry/api';
|
|
7
|
-
import { SERVICE_NAME
|
|
7
|
+
import { SERVICE_NAME } from './constants.js';
|
|
8
|
+
import { AuthType } from '../core/contentGenerator.js';
|
|
9
|
+
import { getCommonAttributes } from './telemetryAttributes.js';
|
|
10
|
+
const EVENT_CHAT_COMPRESSION = 'gemini_cli.chat_compression';
|
|
8
11
|
const TOOL_CALL_COUNT = 'gemini_cli.tool.call.count';
|
|
9
12
|
const TOOL_CALL_LATENCY = 'gemini_cli.tool.call.latency';
|
|
10
13
|
const API_REQUEST_COUNT = 'gemini_cli.api.request.count';
|
|
@@ -12,12 +15,22 @@ const API_REQUEST_LATENCY = 'gemini_cli.api.request.latency';
|
|
|
12
15
|
const TOKEN_USAGE = 'gemini_cli.token.usage';
|
|
13
16
|
const SESSION_COUNT = 'gemini_cli.session.count';
|
|
14
17
|
const FILE_OPERATION_COUNT = 'gemini_cli.file.operation.count';
|
|
18
|
+
const LINES_CHANGED = 'gemini_cli.lines.changed';
|
|
15
19
|
const INVALID_CHUNK_COUNT = 'gemini_cli.chat.invalid_chunk.count';
|
|
16
20
|
const CONTENT_RETRY_COUNT = 'gemini_cli.chat.content_retry.count';
|
|
17
21
|
const CONTENT_RETRY_FAILURE_COUNT = 'gemini_cli.chat.content_retry_failure.count';
|
|
18
22
|
const MODEL_ROUTING_LATENCY = 'gemini_cli.model_routing.latency';
|
|
19
23
|
const MODEL_ROUTING_FAILURE_COUNT = 'gemini_cli.model_routing.failure.count';
|
|
20
24
|
const MODEL_SLASH_COMMAND_CALL_COUNT = 'gemini_cli.slash_command.model.call_count';
|
|
25
|
+
// Agent Metrics
|
|
26
|
+
const AGENT_RUN_COUNT = 'gemini_cli.agent.run.count';
|
|
27
|
+
const AGENT_DURATION_MS = 'gemini_cli.agent.duration';
|
|
28
|
+
const AGENT_TURNS = 'gemini_cli.agent.turns';
|
|
29
|
+
const AGENT_RECOVERY_ATTEMPT_COUNT = 'gemini_cli.agent.recovery_attempt.count';
|
|
30
|
+
const AGENT_RECOVERY_ATTEMPT_DURATION = 'gemini_cli.agent.recovery_attempt.duration';
|
|
31
|
+
// OpenTelemetry GenAI Semantic Convention Metrics
|
|
32
|
+
const GEN_AI_CLIENT_TOKEN_USAGE = 'gen_ai.client.token.usage';
|
|
33
|
+
const GEN_AI_CLIENT_OPERATION_DURATION = 'gen_ai.client.operation.duration';
|
|
21
34
|
// Performance Monitoring Metrics
|
|
22
35
|
const STARTUP_TIME = 'gemini_cli.startup.duration';
|
|
23
36
|
const MEMORY_USAGE = 'gemini_cli.memory.usage';
|
|
@@ -30,10 +43,11 @@ const PERFORMANCE_SCORE = 'gemini_cli.performance.score';
|
|
|
30
43
|
const REGRESSION_DETECTION = 'gemini_cli.performance.regression';
|
|
31
44
|
const REGRESSION_PERCENTAGE_CHANGE = 'gemini_cli.performance.regression.percentage_change';
|
|
32
45
|
const BASELINE_COMPARISON = 'gemini_cli.performance.baseline.comparison';
|
|
46
|
+
const FLICKER_FRAME_COUNT = 'gemini_cli.ui.flicker.count';
|
|
47
|
+
const SLOW_RENDER_LATENCY = 'gemini_cli.ui.slow_render.latency';
|
|
48
|
+
const EXIT_FAIL_COUNT = 'gemini_cli.exit.fail.count';
|
|
33
49
|
const baseMetricDefinition = {
|
|
34
|
-
getCommonAttributes
|
|
35
|
-
'session.id': config.getSessionId(),
|
|
36
|
-
}),
|
|
50
|
+
getCommonAttributes,
|
|
37
51
|
};
|
|
38
52
|
const COUNTER_DEFINITIONS = {
|
|
39
53
|
[TOOL_CALL_COUNT]: {
|
|
@@ -66,6 +80,12 @@ const COUNTER_DEFINITIONS = {
|
|
|
66
80
|
assign: (c) => (fileOperationCounter = c),
|
|
67
81
|
attributes: {},
|
|
68
82
|
},
|
|
83
|
+
[LINES_CHANGED]: {
|
|
84
|
+
description: 'Number of lines changed (from file diffs).',
|
|
85
|
+
valueType: ValueType.INT,
|
|
86
|
+
assign: (c) => (linesChangedCounter = c),
|
|
87
|
+
attributes: {},
|
|
88
|
+
},
|
|
69
89
|
[INVALID_CHUNK_COUNT]: {
|
|
70
90
|
description: 'Counts invalid chunks received from a stream.',
|
|
71
91
|
valueType: ValueType.INT,
|
|
@@ -102,6 +122,30 @@ const COUNTER_DEFINITIONS = {
|
|
|
102
122
|
assign: (c) => (chatCompressionCounter = c),
|
|
103
123
|
attributes: {},
|
|
104
124
|
},
|
|
125
|
+
[AGENT_RUN_COUNT]: {
|
|
126
|
+
description: 'Counts agent runs, tagged by name and termination reason.',
|
|
127
|
+
valueType: ValueType.INT,
|
|
128
|
+
assign: (c) => (agentRunCounter = c),
|
|
129
|
+
attributes: {},
|
|
130
|
+
},
|
|
131
|
+
[AGENT_RECOVERY_ATTEMPT_COUNT]: {
|
|
132
|
+
description: 'Counts agent recovery attempts.',
|
|
133
|
+
valueType: ValueType.INT,
|
|
134
|
+
assign: (c) => (agentRecoveryAttemptCounter = c),
|
|
135
|
+
attributes: {},
|
|
136
|
+
},
|
|
137
|
+
[FLICKER_FRAME_COUNT]: {
|
|
138
|
+
description: 'Counts UI frames that flicker (render taller than the terminal).',
|
|
139
|
+
valueType: ValueType.INT,
|
|
140
|
+
assign: (c) => (flickerFrameCounter = c),
|
|
141
|
+
attributes: {},
|
|
142
|
+
},
|
|
143
|
+
[EXIT_FAIL_COUNT]: {
|
|
144
|
+
description: 'Counts CLI exit failures.',
|
|
145
|
+
valueType: ValueType.INT,
|
|
146
|
+
assign: (c) => (exitFailCounter = c),
|
|
147
|
+
attributes: {},
|
|
148
|
+
},
|
|
105
149
|
};
|
|
106
150
|
const HISTOGRAM_DEFINITIONS = {
|
|
107
151
|
[TOOL_CALL_LATENCY]: {
|
|
@@ -125,6 +169,48 @@ const HISTOGRAM_DEFINITIONS = {
|
|
|
125
169
|
assign: (h) => (modelRoutingLatencyHistogram = h),
|
|
126
170
|
attributes: {},
|
|
127
171
|
},
|
|
172
|
+
[AGENT_DURATION_MS]: {
|
|
173
|
+
description: 'Duration of agent runs in milliseconds.',
|
|
174
|
+
unit: 'ms',
|
|
175
|
+
valueType: ValueType.INT,
|
|
176
|
+
assign: (h) => (agentDurationHistogram = h),
|
|
177
|
+
attributes: {},
|
|
178
|
+
},
|
|
179
|
+
[SLOW_RENDER_LATENCY]: {
|
|
180
|
+
description: 'Counts UI frames that take too long to render.',
|
|
181
|
+
unit: 'ms',
|
|
182
|
+
valueType: ValueType.INT,
|
|
183
|
+
assign: (h) => (slowRenderHistogram = h),
|
|
184
|
+
attributes: {},
|
|
185
|
+
},
|
|
186
|
+
[AGENT_TURNS]: {
|
|
187
|
+
description: 'Number of turns taken by agents.',
|
|
188
|
+
unit: 'turns',
|
|
189
|
+
valueType: ValueType.INT,
|
|
190
|
+
assign: (h) => (agentTurnsHistogram = h),
|
|
191
|
+
attributes: {},
|
|
192
|
+
},
|
|
193
|
+
[AGENT_RECOVERY_ATTEMPT_DURATION]: {
|
|
194
|
+
description: 'Duration of agent recovery attempts in milliseconds.',
|
|
195
|
+
unit: 'ms',
|
|
196
|
+
valueType: ValueType.INT,
|
|
197
|
+
assign: (h) => (agentRecoveryAttemptDurationHistogram = h),
|
|
198
|
+
attributes: {},
|
|
199
|
+
},
|
|
200
|
+
[GEN_AI_CLIENT_TOKEN_USAGE]: {
|
|
201
|
+
description: 'Number of input and output tokens used.',
|
|
202
|
+
unit: 'token',
|
|
203
|
+
valueType: ValueType.INT,
|
|
204
|
+
assign: (h) => (genAiClientTokenUsageHistogram = h),
|
|
205
|
+
attributes: {},
|
|
206
|
+
},
|
|
207
|
+
[GEN_AI_CLIENT_OPERATION_DURATION]: {
|
|
208
|
+
description: 'GenAI operation duration.',
|
|
209
|
+
unit: 's',
|
|
210
|
+
valueType: ValueType.DOUBLE,
|
|
211
|
+
assign: (h) => (genAiClientOperationDurationHistogram = h),
|
|
212
|
+
attributes: {},
|
|
213
|
+
},
|
|
128
214
|
};
|
|
129
215
|
const PERFORMANCE_COUNTER_DEFINITIONS = {
|
|
130
216
|
[REGRESSION_DETECTION]: {
|
|
@@ -242,6 +328,20 @@ export var ApiRequestPhase;
|
|
|
242
328
|
ApiRequestPhase["RESPONSE_PROCESSING"] = "response_processing";
|
|
243
329
|
ApiRequestPhase["TOKEN_PROCESSING"] = "token_processing";
|
|
244
330
|
})(ApiRequestPhase || (ApiRequestPhase = {}));
|
|
331
|
+
export var GenAiOperationName;
|
|
332
|
+
(function (GenAiOperationName) {
|
|
333
|
+
GenAiOperationName["GENERATE_CONTENT"] = "generate_content";
|
|
334
|
+
})(GenAiOperationName || (GenAiOperationName = {}));
|
|
335
|
+
export var GenAiProviderName;
|
|
336
|
+
(function (GenAiProviderName) {
|
|
337
|
+
GenAiProviderName["GCP_GEN_AI"] = "gcp.gen_ai";
|
|
338
|
+
GenAiProviderName["GCP_VERTEX_AI"] = "gcp.vertex_ai";
|
|
339
|
+
})(GenAiProviderName || (GenAiProviderName = {}));
|
|
340
|
+
export var GenAiTokenType;
|
|
341
|
+
(function (GenAiTokenType) {
|
|
342
|
+
GenAiTokenType["INPUT"] = "input";
|
|
343
|
+
GenAiTokenType["OUTPUT"] = "output";
|
|
344
|
+
})(GenAiTokenType || (GenAiTokenType = {}));
|
|
245
345
|
let cliMeter;
|
|
246
346
|
let toolCallCounter;
|
|
247
347
|
let toolCallLatencyHistogram;
|
|
@@ -250,6 +350,7 @@ let apiRequestLatencyHistogram;
|
|
|
250
350
|
let tokenUsageCounter;
|
|
251
351
|
let sessionCounter;
|
|
252
352
|
let fileOperationCounter;
|
|
353
|
+
let linesChangedCounter;
|
|
253
354
|
let chatCompressionCounter;
|
|
254
355
|
let invalidChunkCounter;
|
|
255
356
|
let contentRetryCounter;
|
|
@@ -257,6 +358,17 @@ let contentRetryFailureCounter;
|
|
|
257
358
|
let modelRoutingLatencyHistogram;
|
|
258
359
|
let modelRoutingFailureCounter;
|
|
259
360
|
let modelSlashCommandCallCounter;
|
|
361
|
+
let agentRunCounter;
|
|
362
|
+
let agentDurationHistogram;
|
|
363
|
+
let agentTurnsHistogram;
|
|
364
|
+
let agentRecoveryAttemptCounter;
|
|
365
|
+
let agentRecoveryAttemptDurationHistogram;
|
|
366
|
+
let flickerFrameCounter;
|
|
367
|
+
let exitFailCounter;
|
|
368
|
+
let slowRenderHistogram;
|
|
369
|
+
// OpenTelemetry GenAI Semantic Convention Metrics
|
|
370
|
+
let genAiClientTokenUsageHistogram;
|
|
371
|
+
let genAiClientOperationDurationHistogram;
|
|
260
372
|
// Performance Monitoring Metrics
|
|
261
373
|
let startupTimeHistogram;
|
|
262
374
|
let memoryUsageGauge; // Using Histogram until ObservableGauge is available
|
|
@@ -317,7 +429,7 @@ export function recordToolCallMetrics(config, durationMs, attributes) {
|
|
|
317
429
|
function_name: attributes.function_name,
|
|
318
430
|
});
|
|
319
431
|
}
|
|
320
|
-
export function
|
|
432
|
+
export function recordCustomTokenUsageMetrics(config, tokenCount, attributes) {
|
|
321
433
|
if (!tokenUsageCounter || !isMetricsInitialized)
|
|
322
434
|
return;
|
|
323
435
|
tokenUsageCounter.add(tokenCount, {
|
|
@@ -325,7 +437,7 @@ export function recordTokenUsageMetrics(config, tokenCount, attributes) {
|
|
|
325
437
|
...attributes,
|
|
326
438
|
});
|
|
327
439
|
}
|
|
328
|
-
export function
|
|
440
|
+
export function recordCustomApiResponseMetrics(config, durationMs, attributes) {
|
|
329
441
|
if (!apiRequestCounter ||
|
|
330
442
|
!apiRequestLatencyHistogram ||
|
|
331
443
|
!isMetricsInitialized)
|
|
@@ -366,7 +478,44 @@ export function recordFileOperationMetric(config, attributes) {
|
|
|
366
478
|
...attributes,
|
|
367
479
|
});
|
|
368
480
|
}
|
|
481
|
+
export function recordLinesChanged(config, lines, changeType, attributes) {
|
|
482
|
+
if (!linesChangedCounter || !isMetricsInitialized)
|
|
483
|
+
return;
|
|
484
|
+
if (!Number.isFinite(lines) || lines <= 0)
|
|
485
|
+
return;
|
|
486
|
+
linesChangedCounter.add(lines, {
|
|
487
|
+
...baseMetricDefinition.getCommonAttributes(config),
|
|
488
|
+
type: changeType,
|
|
489
|
+
...(attributes ?? {}),
|
|
490
|
+
});
|
|
491
|
+
}
|
|
369
492
|
// --- New Metric Recording Functions ---
|
|
493
|
+
/**
|
|
494
|
+
* Records a metric for when a UI frame flickers.
|
|
495
|
+
*/
|
|
496
|
+
export function recordFlickerFrame(config) {
|
|
497
|
+
if (!flickerFrameCounter || !isMetricsInitialized)
|
|
498
|
+
return;
|
|
499
|
+
flickerFrameCounter.add(1, baseMetricDefinition.getCommonAttributes(config));
|
|
500
|
+
}
|
|
501
|
+
/**
|
|
502
|
+
* Records a metric for when user failed to exit
|
|
503
|
+
*/
|
|
504
|
+
export function recordExitFail(config) {
|
|
505
|
+
if (!exitFailCounter || !isMetricsInitialized)
|
|
506
|
+
return;
|
|
507
|
+
exitFailCounter.add(1, baseMetricDefinition.getCommonAttributes(config));
|
|
508
|
+
}
|
|
509
|
+
/**
|
|
510
|
+
* Records a metric for when a UI frame is slow in rendering
|
|
511
|
+
*/
|
|
512
|
+
export function recordSlowRender(config, renderLatency) {
|
|
513
|
+
if (!slowRenderHistogram || !isMetricsInitialized)
|
|
514
|
+
return;
|
|
515
|
+
slowRenderHistogram.record(renderLatency, {
|
|
516
|
+
...baseMetricDefinition.getCommonAttributes(config),
|
|
517
|
+
});
|
|
518
|
+
}
|
|
370
519
|
/**
|
|
371
520
|
* Records a metric for when an invalid chunk is received from a stream.
|
|
372
521
|
*/
|
|
@@ -417,6 +566,90 @@ export function recordModelRoutingMetrics(config, event) {
|
|
|
417
566
|
});
|
|
418
567
|
}
|
|
419
568
|
}
|
|
569
|
+
export function recordAgentRunMetrics(config, event) {
|
|
570
|
+
if (!agentRunCounter ||
|
|
571
|
+
!agentDurationHistogram ||
|
|
572
|
+
!agentTurnsHistogram ||
|
|
573
|
+
!isMetricsInitialized)
|
|
574
|
+
return;
|
|
575
|
+
const commonAttributes = baseMetricDefinition.getCommonAttributes(config);
|
|
576
|
+
agentRunCounter.add(1, {
|
|
577
|
+
...commonAttributes,
|
|
578
|
+
agent_name: event.agent_name,
|
|
579
|
+
terminate_reason: event.terminate_reason,
|
|
580
|
+
});
|
|
581
|
+
agentDurationHistogram.record(event.duration_ms, {
|
|
582
|
+
...commonAttributes,
|
|
583
|
+
agent_name: event.agent_name,
|
|
584
|
+
});
|
|
585
|
+
agentTurnsHistogram.record(event.turn_count, {
|
|
586
|
+
...commonAttributes,
|
|
587
|
+
agent_name: event.agent_name,
|
|
588
|
+
});
|
|
589
|
+
}
|
|
590
|
+
export function recordRecoveryAttemptMetrics(config, event) {
|
|
591
|
+
if (!agentRecoveryAttemptCounter ||
|
|
592
|
+
!agentRecoveryAttemptDurationHistogram ||
|
|
593
|
+
!isMetricsInitialized)
|
|
594
|
+
return;
|
|
595
|
+
const commonAttributes = baseMetricDefinition.getCommonAttributes(config);
|
|
596
|
+
agentRecoveryAttemptCounter.add(1, {
|
|
597
|
+
...commonAttributes,
|
|
598
|
+
agent_name: event.agent_name,
|
|
599
|
+
reason: event.reason,
|
|
600
|
+
success: event.success,
|
|
601
|
+
});
|
|
602
|
+
agentRecoveryAttemptDurationHistogram.record(event.duration_ms, {
|
|
603
|
+
...commonAttributes,
|
|
604
|
+
agent_name: event.agent_name,
|
|
605
|
+
});
|
|
606
|
+
}
|
|
607
|
+
// OpenTelemetry GenAI Semantic Convention Recording Functions
|
|
608
|
+
export function recordGenAiClientTokenUsage(config, tokenCount, attributes) {
|
|
609
|
+
if (!genAiClientTokenUsageHistogram || !isMetricsInitialized)
|
|
610
|
+
return;
|
|
611
|
+
const metricAttributes = {
|
|
612
|
+
...baseMetricDefinition.getCommonAttributes(config),
|
|
613
|
+
...attributes,
|
|
614
|
+
};
|
|
615
|
+
genAiClientTokenUsageHistogram.record(tokenCount, metricAttributes);
|
|
616
|
+
}
|
|
617
|
+
export function recordGenAiClientOperationDuration(config, durationSeconds, attributes) {
|
|
618
|
+
if (!genAiClientOperationDurationHistogram || !isMetricsInitialized)
|
|
619
|
+
return;
|
|
620
|
+
const metricAttributes = {
|
|
621
|
+
...baseMetricDefinition.getCommonAttributes(config),
|
|
622
|
+
...attributes,
|
|
623
|
+
};
|
|
624
|
+
genAiClientOperationDurationHistogram.record(durationSeconds, metricAttributes);
|
|
625
|
+
}
|
|
626
|
+
export function getConventionAttributes(event) {
|
|
627
|
+
const operationName = getGenAiOperationName();
|
|
628
|
+
const provider = getGenAiProvider(event.auth_type);
|
|
629
|
+
return {
|
|
630
|
+
'gen_ai.operation.name': operationName,
|
|
631
|
+
'gen_ai.provider.name': provider,
|
|
632
|
+
'gen_ai.request.model': event.model,
|
|
633
|
+
'gen_ai.response.model': event.model,
|
|
634
|
+
};
|
|
635
|
+
}
|
|
636
|
+
/**
|
|
637
|
+
* Maps authentication type to GenAI provider name following OpenTelemetry conventions
|
|
638
|
+
*/
|
|
639
|
+
function getGenAiProvider(authType) {
|
|
640
|
+
switch (authType) {
|
|
641
|
+
case AuthType.USE_VERTEX_AI:
|
|
642
|
+
case AuthType.COMPUTE_ADC:
|
|
643
|
+
case AuthType.LOGIN_WITH_GOOGLE:
|
|
644
|
+
return GenAiProviderName.GCP_VERTEX_AI;
|
|
645
|
+
case AuthType.USE_GEMINI:
|
|
646
|
+
default:
|
|
647
|
+
return GenAiProviderName.GCP_GEN_AI;
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
function getGenAiOperationName() {
|
|
651
|
+
return GenAiOperationName.GENERATE_CONTENT;
|
|
652
|
+
}
|
|
420
653
|
// Performance Monitoring Functions
|
|
421
654
|
export function initializePerformanceMonitoring(config) {
|
|
422
655
|
const meter = getMeter();
|
|
@@ -542,4 +775,35 @@ export function recordBaselineComparison(config, attributes) {
|
|
|
542
775
|
export function isPerformanceMonitoringActive() {
|
|
543
776
|
return isPerformanceMonitoringEnabled && isMetricsInitialized;
|
|
544
777
|
}
|
|
778
|
+
/**
|
|
779
|
+
* Token usage recording that emits both custom and convention metrics.
|
|
780
|
+
*/
|
|
781
|
+
export function recordTokenUsageMetrics(config, tokenCount, attributes) {
|
|
782
|
+
recordCustomTokenUsageMetrics(config, tokenCount, {
|
|
783
|
+
model: attributes.model,
|
|
784
|
+
type: attributes.type,
|
|
785
|
+
});
|
|
786
|
+
if ((attributes.type === 'input' || attributes.type === 'output') &&
|
|
787
|
+
attributes.genAiAttributes) {
|
|
788
|
+
recordGenAiClientTokenUsage(config, tokenCount, {
|
|
789
|
+
...attributes.genAiAttributes,
|
|
790
|
+
'gen_ai.token.type': attributes.type,
|
|
791
|
+
});
|
|
792
|
+
}
|
|
793
|
+
}
|
|
794
|
+
/**
|
|
795
|
+
* Operation latency recording that emits both custom and convention metrics.
|
|
796
|
+
*/
|
|
797
|
+
export function recordApiResponseMetrics(config, durationMs, attributes) {
|
|
798
|
+
recordCustomApiResponseMetrics(config, durationMs, {
|
|
799
|
+
model: attributes.model,
|
|
800
|
+
status_code: attributes.status_code,
|
|
801
|
+
});
|
|
802
|
+
if (attributes.genAiAttributes) {
|
|
803
|
+
const durationSeconds = durationMs / 1000;
|
|
804
|
+
recordGenAiClientOperationDuration(config, durationSeconds, {
|
|
805
|
+
...attributes.genAiAttributes,
|
|
806
|
+
});
|
|
807
|
+
}
|
|
808
|
+
}
|
|
545
809
|
//# sourceMappingURL=metrics.js.map
|