@office-ai/aioncli-core 0.18.6 → 0.24.0-preview.1
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/docs/CONTRIBUTING.md +546 -0
- package/dist/docs/architecture.md +80 -0
- package/dist/docs/assets/connected_devtools.png +0 -0
- package/dist/docs/assets/gemini-screenshot.png +0 -0
- package/dist/docs/assets/release_patch.png +0 -0
- package/dist/docs/assets/theme-ansi-light.png +0 -0
- package/dist/docs/assets/theme-ansi.png +0 -0
- package/dist/docs/assets/theme-atom-one.png +0 -0
- package/dist/docs/assets/theme-ayu-light.png +0 -0
- package/dist/docs/assets/theme-ayu.png +0 -0
- package/dist/docs/assets/theme-custom.png +0 -0
- package/dist/docs/assets/theme-default-light.png +0 -0
- package/dist/docs/assets/theme-default.png +0 -0
- package/dist/docs/assets/theme-dracula.png +0 -0
- package/dist/docs/assets/theme-github-light.png +0 -0
- package/dist/docs/assets/theme-github.png +0 -0
- package/dist/docs/assets/theme-google-light.png +0 -0
- package/dist/docs/assets/theme-xcode-light.png +0 -0
- package/dist/docs/changelogs/index.md +592 -0
- package/dist/docs/changelogs/latest.md +225 -0
- package/dist/docs/changelogs/preview.md +129 -0
- package/dist/docs/changelogs/releases.md +896 -0
- package/dist/docs/cli/authentication.md +3 -0
- package/dist/docs/cli/checkpointing.md +94 -0
- package/dist/docs/cli/commands.md +354 -0
- package/dist/docs/cli/configuration.md +780 -0
- package/dist/docs/cli/custom-commands.md +315 -0
- package/dist/docs/cli/enterprise.md +565 -0
- package/dist/docs/cli/gemini-ignore.md +71 -0
- package/dist/docs/cli/gemini-md.md +108 -0
- package/dist/docs/cli/generation-settings.md +210 -0
- package/dist/docs/cli/headless.md +388 -0
- package/dist/docs/cli/index.md +63 -0
- package/dist/docs/cli/keyboard-shortcuts.md +143 -0
- package/dist/docs/cli/model-routing.md +37 -0
- package/dist/docs/cli/model.md +62 -0
- package/dist/docs/cli/sandbox.md +171 -0
- package/dist/docs/cli/session-management.md +158 -0
- package/dist/docs/cli/settings.md +114 -0
- package/dist/docs/cli/skills.md +156 -0
- package/dist/docs/cli/system-prompt.md +93 -0
- package/dist/docs/cli/telemetry.md +791 -0
- package/dist/docs/cli/themes.md +237 -0
- package/dist/docs/cli/token-caching.md +20 -0
- package/dist/docs/cli/trusted-folders.md +95 -0
- package/dist/docs/cli/tutorials/skills-getting-started.md +124 -0
- package/dist/docs/cli/tutorials.md +87 -0
- package/dist/docs/cli/uninstall.md +47 -0
- package/dist/docs/core/index.md +101 -0
- package/dist/docs/core/memport.md +244 -0
- package/dist/docs/core/policy-engine.md +267 -0
- package/dist/docs/core/tools-api.md +131 -0
- package/dist/docs/examples/proxy-script.md +83 -0
- package/dist/docs/extension.md +160 -0
- package/dist/docs/extensions/extension-releasing.md +183 -0
- package/dist/docs/extensions/getting-started-extensions.md +245 -0
- package/dist/docs/extensions/index.md +293 -0
- package/dist/docs/faq.md +154 -0
- package/dist/docs/get-started/authentication.md +321 -0
- package/dist/docs/get-started/configuration-v1.md +888 -0
- package/dist/docs/get-started/configuration.md +1536 -0
- package/dist/docs/get-started/deployment.md +143 -0
- package/dist/docs/get-started/examples.md +219 -0
- package/dist/docs/get-started/gemini-3.md +116 -0
- package/dist/docs/get-started/index.md +71 -0
- package/dist/docs/get-started/installation.md +141 -0
- package/dist/docs/hooks/best-practices.md +856 -0
- package/dist/docs/hooks/index.md +687 -0
- package/dist/docs/hooks/reference.md +168 -0
- package/dist/docs/hooks/writing-hooks.md +1026 -0
- package/dist/docs/ide-integration/ide-companion-spec.md +267 -0
- package/dist/docs/ide-integration/index.md +202 -0
- package/dist/docs/index.md +147 -0
- package/dist/docs/integration-tests.md +211 -0
- package/dist/docs/issue-and-pr-automation.md +134 -0
- package/dist/docs/local-development.md +128 -0
- package/dist/docs/mermaid/context.mmd +103 -0
- package/dist/docs/mermaid/render-path.mmd +64 -0
- package/dist/docs/npm.md +62 -0
- package/dist/docs/quota-and-pricing.md +158 -0
- package/dist/docs/release-confidence.md +164 -0
- package/dist/docs/releases.md +540 -0
- package/dist/docs/sidebar.json +301 -0
- package/dist/docs/tools/file-system.md +217 -0
- package/dist/docs/tools/index.md +95 -0
- package/dist/docs/tools/mcp-server.md +1044 -0
- package/dist/docs/tools/memory.md +54 -0
- package/dist/docs/tools/shell.md +260 -0
- package/dist/docs/tools/todos.md +57 -0
- package/dist/docs/tools/web-fetch.md +59 -0
- package/dist/docs/tools/web-search.md +42 -0
- package/dist/docs/tos-privacy.md +96 -0
- package/dist/docs/troubleshooting.md +158 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/src/agents/a2a-client-manager.d.ts +78 -0
- package/dist/src/agents/a2a-client-manager.js +295 -0
- package/dist/src/agents/a2a-client-manager.js.map +1 -0
- package/dist/src/agents/a2a-client-manager.test.d.ts +6 -0
- package/dist/src/agents/a2a-client-manager.test.js +237 -0
- package/dist/src/agents/a2a-client-manager.test.js.map +1 -0
- package/dist/src/agents/a2aUtils.d.ts +28 -0
- package/dist/src/agents/a2aUtils.js +111 -0
- package/dist/src/agents/a2aUtils.js.map +1 -0
- package/dist/src/agents/a2aUtils.test.d.ts +6 -0
- package/dist/src/agents/a2aUtils.test.js +147 -0
- package/dist/src/agents/a2aUtils.test.js.map +1 -0
- package/dist/src/agents/codebase-investigator.d.ts +2 -2
- package/dist/src/agents/codebase-investigator.js +5 -4
- package/dist/src/agents/codebase-investigator.js.map +1 -1
- package/dist/src/agents/delegate-to-agent-tool.d.ts +19 -0
- package/dist/src/agents/delegate-to-agent-tool.js +115 -0
- package/dist/src/agents/delegate-to-agent-tool.js.map +1 -0
- package/dist/src/agents/delegate-to-agent-tool.test.d.ts +6 -0
- package/dist/src/agents/delegate-to-agent-tool.test.js +165 -0
- package/dist/src/agents/delegate-to-agent-tool.test.js.map +1 -0
- package/dist/src/agents/introspection-agent.d.ts +23 -0
- package/dist/src/agents/introspection-agent.js +72 -0
- package/dist/src/agents/introspection-agent.js.map +1 -0
- package/dist/src/agents/introspection-agent.test.d.ts +6 -0
- package/dist/src/agents/introspection-agent.test.js +47 -0
- package/dist/src/agents/introspection-agent.test.js.map +1 -0
- package/dist/src/agents/local-executor.d.ts +108 -0
- package/dist/src/agents/local-executor.js +801 -0
- package/dist/src/agents/local-executor.js.map +1 -0
- package/dist/src/agents/local-executor.test.d.ts +6 -0
- package/dist/src/agents/local-executor.test.js +1380 -0
- package/dist/src/agents/local-executor.test.js.map +1 -0
- package/dist/src/agents/local-invocation.d.ts +45 -0
- package/dist/src/agents/local-invocation.js +101 -0
- package/dist/src/agents/local-invocation.js.map +1 -0
- package/dist/src/agents/local-invocation.test.d.ts +6 -0
- package/dist/src/agents/local-invocation.test.js +218 -0
- package/dist/src/agents/local-invocation.test.js.map +1 -0
- package/dist/src/agents/registry.d.ts +25 -1
- package/dist/src/agents/registry.js +149 -5
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/agents/registry.test.js +247 -25
- package/dist/src/agents/registry.test.js.map +1 -1
- package/dist/src/agents/remote-invocation.d.ts +35 -0
- package/dist/src/agents/remote-invocation.js +129 -0
- package/dist/src/agents/remote-invocation.js.map +1 -0
- package/dist/src/agents/remote-invocation.test.d.ts +6 -0
- package/dist/src/agents/remote-invocation.test.js +201 -0
- package/dist/src/agents/remote-invocation.test.js.map +1 -0
- package/dist/src/agents/subagent-tool-wrapper.d.ts +2 -2
- package/dist/src/agents/subagent-tool-wrapper.js +11 -6
- package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.test.js +25 -17
- package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
- package/dist/src/agents/toml-loader.d.ts +74 -0
- package/dist/src/agents/toml-loader.js +248 -0
- package/dist/src/agents/toml-loader.js.map +1 -0
- package/dist/src/agents/toml-loader.test.d.ts +6 -0
- package/dist/src/agents/toml-loader.test.js +309 -0
- package/dist/src/agents/toml-loader.test.js.map +1 -0
- package/dist/src/agents/types.d.ts +18 -4
- package/dist/src/availability/errorClassification.d.ts +7 -0
- package/dist/src/availability/errorClassification.js +20 -0
- package/dist/src/availability/errorClassification.js.map +1 -0
- package/dist/src/availability/modelAvailabilityService.d.ts +36 -0
- package/dist/src/availability/modelAvailabilityService.js +87 -0
- package/dist/src/availability/modelAvailabilityService.js.map +1 -0
- package/dist/src/availability/modelAvailabilityService.test.d.ts +6 -0
- package/dist/src/availability/modelAvailabilityService.test.js +140 -0
- package/dist/src/availability/modelAvailabilityService.test.js.map +1 -0
- package/dist/src/availability/modelPolicy.d.ts +49 -0
- package/dist/src/availability/modelPolicy.js +7 -0
- package/dist/src/availability/modelPolicy.js.map +1 -0
- package/dist/src/availability/policyCatalog.d.ts +23 -0
- package/dist/src/availability/policyCatalog.js +82 -0
- package/dist/src/availability/policyCatalog.js.map +1 -0
- package/dist/src/availability/policyCatalog.test.d.ts +6 -0
- package/dist/src/availability/policyCatalog.test.js +70 -0
- package/dist/src/availability/policyCatalog.test.js.map +1 -0
- package/dist/src/availability/policyHelpers.d.ts +52 -0
- package/dist/src/availability/policyHelpers.js +136 -0
- package/dist/src/availability/policyHelpers.js.map +1 -0
- package/dist/src/availability/policyHelpers.test.d.ts +6 -0
- package/dist/src/availability/policyHelpers.test.js +182 -0
- package/dist/src/availability/policyHelpers.test.js.map +1 -0
- package/dist/src/availability/testUtils.d.ts +10 -0
- package/dist/src/availability/testUtils.js +22 -0
- package/dist/src/availability/testUtils.js.map +1 -0
- package/dist/src/code_assist/experiments/client_metadata.js +3 -2
- package/dist/src/code_assist/experiments/client_metadata.js.map +1 -1
- package/dist/src/code_assist/experiments/client_metadata.test.js +7 -10
- package/dist/src/code_assist/experiments/client_metadata.test.js.map +1 -1
- package/dist/src/code_assist/experiments/experiments.js +2 -2
- package/dist/src/code_assist/experiments/experiments.js.map +1 -1
- package/dist/src/code_assist/oauth2.d.ts +2 -0
- package/dist/src/code_assist/oauth2.js +73 -17
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +195 -18
- package/dist/src/code_assist/oauth2.test.js.map +1 -1
- package/dist/src/code_assist/server.d.ts +10 -1
- package/dist/src/code_assist/server.js +81 -15
- package/dist/src/code_assist/server.js.map +1 -1
- package/dist/src/code_assist/server.test.js +221 -25
- package/dist/src/code_assist/server.test.js.map +1 -1
- package/dist/src/code_assist/setup.js +6 -4
- package/dist/src/code_assist/setup.js.map +1 -1
- package/dist/src/code_assist/setup.test.js +63 -0
- package/dist/src/code_assist/setup.test.js.map +1 -1
- package/dist/src/code_assist/telemetry.d.ts +14 -0
- package/dist/src/code_assist/telemetry.js +156 -0
- package/dist/src/code_assist/telemetry.js.map +1 -0
- package/dist/src/code_assist/telemetry.test.d.ts +6 -0
- package/dist/src/code_assist/telemetry.test.js +300 -0
- package/dist/src/code_assist/telemetry.test.js.map +1 -0
- package/dist/src/code_assist/types.d.ts +84 -1
- package/dist/src/code_assist/types.js +21 -0
- package/dist/src/code_assist/types.js.map +1 -1
- package/dist/src/commands/init.d.ts +7 -0
- package/dist/src/commands/init.js +53 -0
- package/dist/src/commands/init.js.map +1 -0
- package/dist/src/commands/init.test.d.ts +6 -0
- package/dist/src/commands/init.test.js +25 -0
- package/dist/src/commands/init.test.js.map +1 -0
- package/dist/src/commands/restore.d.ts +9 -0
- package/dist/src/commands/restore.js +46 -0
- package/dist/src/commands/restore.js.map +1 -0
- package/dist/src/commands/restore.test.d.ts +6 -0
- package/dist/src/commands/restore.test.js +137 -0
- package/dist/src/commands/restore.test.js.map +1 -0
- package/dist/src/commands/types.d.ts +41 -0
- package/dist/src/commands/types.js +7 -0
- package/dist/src/commands/types.js.map +1 -0
- package/dist/src/config/config.d.ts +120 -23
- package/dist/src/config/config.js +336 -116
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +373 -95
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.js +46 -0
- package/dist/src/config/defaultModelConfigs.js.map +1 -1
- package/dist/src/config/flashFallback.test.js +11 -35
- package/dist/src/config/flashFallback.test.js.map +1 -1
- package/dist/src/config/models.d.ts +29 -15
- package/dist/src/config/models.js +78 -28
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +91 -77
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/config/storage.d.ts +4 -0
- package/dist/src/config/storage.js +12 -0
- package/dist/src/config/storage.js.map +1 -1
- package/dist/src/config/storage.test.js +16 -0
- package/dist/src/config/storage.test.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.d.ts +6 -0
- package/dist/src/confirmation-bus/message-bus.js +66 -3
- package/dist/src/confirmation-bus/message-bus.js.map +1 -1
- package/dist/src/confirmation-bus/types.d.ts +29 -2
- package/dist/src/confirmation-bus/types.js +3 -0
- package/dist/src/confirmation-bus/types.js.map +1 -1
- package/dist/src/core/baseLlmClient.d.ts +30 -2
- package/dist/src/core/baseLlmClient.js +107 -49
- package/dist/src/core/baseLlmClient.js.map +1 -1
- package/dist/src/core/baseLlmClient.test.js +271 -13
- package/dist/src/core/baseLlmClient.test.js.map +1 -1
- package/dist/src/core/client.d.ts +5 -1
- package/dist/src/core/client.js +241 -63
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +462 -72
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/clientHookTriggers.d.ts +36 -0
- package/dist/src/core/clientHookTriggers.js +76 -0
- package/dist/src/core/clientHookTriggers.js.map +1 -0
- package/dist/src/core/contentGenerator.js +17 -4
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +132 -3
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/coreToolHookTriggers.d.ts +55 -0
- package/dist/src/core/coreToolHookTriggers.js +304 -0
- package/dist/src/core/coreToolHookTriggers.js.map +1 -0
- package/dist/src/core/coreToolHookTriggers.test.d.ts +6 -0
- package/dist/src/core/coreToolHookTriggers.test.js +191 -0
- package/dist/src/core/coreToolHookTriggers.test.js.map +1 -0
- package/dist/src/core/coreToolScheduler.d.ts +6 -85
- package/dist/src/core/coreToolScheduler.js +69 -267
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +161 -346
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/geminiChat.js +132 -76
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +240 -257
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/geminiChatHookTriggers.d.ts +64 -0
- package/dist/src/core/geminiChatHookTriggers.js +136 -0
- package/dist/src/core/geminiChatHookTriggers.js.map +1 -0
- package/dist/src/core/geminiChat_network_retry.test.d.ts +6 -0
- package/dist/src/core/geminiChat_network_retry.test.js +196 -0
- package/dist/src/core/geminiChat_network_retry.test.js.map +1 -0
- package/dist/src/core/logger.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.js +23 -6
- package/dist/src/core/loggingContentGenerator.js.map +1 -1
- package/dist/src/core/nonInteractiveToolExecutor.test.js +13 -8
- package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
- package/dist/src/core/openaiContentGenerator.d.ts +25 -0
- package/dist/src/core/openaiContentGenerator.js +243 -14
- package/dist/src/core/openaiContentGenerator.js.map +1 -1
- package/dist/src/core/prompts.js +82 -26
- package/dist/src/core/prompts.js.map +1 -1
- package/dist/src/core/prompts.test.js +102 -3
- package/dist/src/core/prompts.test.js.map +1 -1
- package/dist/src/core/sessionHookTriggers.d.ts +29 -0
- package/dist/src/core/sessionHookTriggers.js +75 -0
- package/dist/src/core/sessionHookTriggers.js.map +1 -0
- package/dist/src/core/turn.d.ts +34 -21
- package/dist/src/core/turn.js +33 -13
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/core/turn.test.js +0 -5
- package/dist/src/core/turn.test.js.map +1 -1
- package/dist/src/fallback/handler.js +101 -93
- package/dist/src/fallback/handler.js.map +1 -1
- package/dist/src/fallback/handler.test.js +186 -173
- package/dist/src/fallback/handler.test.js.map +1 -1
- package/dist/src/fallback/types.d.ts +8 -0
- package/dist/src/generated/git-commit.d.ts +3 -3
- package/dist/src/generated/git-commit.js +3 -3
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/hooks/hookAggregator.js +7 -0
- package/dist/src/hooks/hookAggregator.js.map +1 -1
- package/dist/src/hooks/hookEventHandler.d.ts +113 -0
- package/dist/src/hooks/hookEventHandler.js +571 -0
- package/dist/src/hooks/hookEventHandler.js.map +1 -0
- package/dist/src/hooks/hookEventHandler.test.d.ts +6 -0
- package/dist/src/hooks/hookEventHandler.test.js +461 -0
- package/dist/src/hooks/hookEventHandler.test.js.map +1 -0
- package/dist/src/hooks/hookPlanner.d.ts +1 -5
- package/dist/src/hooks/hookPlanner.js +2 -7
- package/dist/src/hooks/hookPlanner.js.map +1 -1
- package/dist/src/hooks/hookPlanner.test.js +62 -2
- package/dist/src/hooks/hookPlanner.test.js.map +1 -1
- package/dist/src/hooks/hookRegistry.d.ts +6 -18
- package/dist/src/hooks/hookRegistry.js +49 -35
- package/dist/src/hooks/hookRegistry.js.map +1 -1
- package/dist/src/hooks/hookRegistry.test.js +167 -8
- package/dist/src/hooks/hookRegistry.test.js.map +1 -1
- package/dist/src/hooks/hookRunner.d.ts +5 -3
- package/dist/src/hooks/hookRunner.js +74 -18
- package/dist/src/hooks/hookRunner.js.map +1 -1
- package/dist/src/hooks/hookRunner.test.js +174 -36
- package/dist/src/hooks/hookRunner.test.js.map +1 -1
- package/dist/src/hooks/hookSystem.d.ts +40 -0
- package/dist/src/hooks/hookSystem.js +65 -0
- package/dist/src/hooks/hookSystem.js.map +1 -0
- package/dist/src/hooks/hookSystem.test.d.ts +6 -0
- package/dist/src/hooks/hookSystem.test.js +319 -0
- package/dist/src/hooks/hookSystem.test.js.map +1 -0
- package/dist/src/hooks/index.d.ts +17 -0
- package/dist/src/hooks/index.js +18 -0
- package/dist/src/hooks/index.js.map +1 -0
- package/dist/src/hooks/trustedHooks.d.ts +28 -0
- package/dist/src/hooks/trustedHooks.js +90 -0
- package/dist/src/hooks/trustedHooks.js.map +1 -0
- package/dist/src/hooks/trustedHooks.test.d.ts +6 -0
- package/dist/src/hooks/trustedHooks.test.js +154 -0
- package/dist/src/hooks/trustedHooks.test.js.map +1 -0
- package/dist/src/hooks/types.d.ts +21 -11
- package/dist/src/hooks/types.js +31 -27
- package/dist/src/hooks/types.js.map +1 -1
- package/dist/src/hooks/types.test.js +5 -24
- package/dist/src/hooks/types.test.js.map +1 -1
- package/dist/src/ide/detect-ide.test.js +32 -1
- package/dist/src/ide/detect-ide.test.js.map +1 -1
- package/dist/src/ide/ide-client.js +9 -4
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-client.test.js +17 -0
- package/dist/src/ide/ide-client.test.js.map +1 -1
- package/dist/src/ide/ide-installer.test.js +1 -1
- package/dist/src/ide/ide-installer.test.js.map +1 -1
- package/dist/src/ide/types.d.ts +4 -4
- package/dist/src/index.d.ts +17 -1
- package/dist/src/index.js +18 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/auth-provider.d.ts +16 -0
- package/dist/src/mcp/auth-provider.js +7 -0
- package/dist/src/mcp/auth-provider.js.map +1 -0
- package/dist/src/mcp/google-auth-provider.d.ts +10 -2
- package/dist/src/mcp/google-auth-provider.js +28 -0
- package/dist/src/mcp/google-auth-provider.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.test.js +45 -0
- package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
- package/dist/src/mcp/oauth-provider.js +6 -2
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-provider.test.js +4 -1
- package/dist/src/mcp/oauth-provider.test.js.map +1 -1
- package/dist/src/mcp/oauth-utils.d.ts +8 -1
- package/dist/src/mcp/oauth-utils.js +31 -2
- package/dist/src/mcp/oauth-utils.js.map +1 -1
- package/dist/src/mcp/oauth-utils.test.js +42 -0
- package/dist/src/mcp/oauth-utils.test.js.map +1 -1
- package/dist/src/mcp/sa-impersonation-provider.d.ts +2 -2
- package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
- package/dist/src/mcp/token-storage/hybrid-token-storage.js +1 -1
- package/dist/src/mcp/token-storage/hybrid-token-storage.js.map +1 -1
- package/dist/src/mcp/token-storage/keychain-token-storage.js +1 -1
- package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
- package/dist/src/output/json-formatter.d.ts +2 -2
- package/dist/src/output/json-formatter.js +6 -3
- package/dist/src/output/json-formatter.js.map +1 -1
- package/dist/src/output/json-formatter.test.js +37 -9
- package/dist/src/output/json-formatter.test.js.map +1 -1
- package/dist/src/output/stream-json-formatter.js +6 -0
- package/dist/src/output/stream-json-formatter.js.map +1 -1
- package/dist/src/output/stream-json-formatter.test.js +98 -100
- package/dist/src/output/stream-json-formatter.test.js.map +1 -1
- package/dist/src/output/types.d.ts +3 -0
- package/dist/src/output/types.js.map +1 -1
- package/dist/src/policy/config.js +140 -15
- package/dist/src/policy/config.js.map +1 -1
- package/dist/src/policy/config.test.js +21 -0
- package/dist/src/policy/config.test.js.map +1 -1
- package/dist/src/policy/persistence.test.d.ts +6 -0
- package/dist/src/policy/persistence.test.js +154 -0
- package/dist/src/policy/persistence.test.js.map +1 -0
- package/dist/src/policy/policies/agent.toml +31 -0
- package/dist/src/policy/policies/read-only.toml +5 -0
- package/dist/src/policy/policies/write.toml +5 -0
- package/dist/src/policy/policies/yolo.toml +1 -0
- package/dist/src/policy/policy-engine.d.ts +30 -1
- package/dist/src/policy/policy-engine.js +192 -5
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +520 -3
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/policy/policy-updater.test.d.ts +6 -0
- package/dist/src/policy/policy-updater.test.js +116 -0
- package/dist/src/policy/policy-updater.test.js.map +1 -0
- package/dist/src/policy/shell-safety.test.d.ts +6 -0
- package/dist/src/policy/shell-safety.test.js +75 -0
- package/dist/src/policy/shell-safety.test.js.map +1 -0
- package/dist/src/policy/toml-loader.d.ts +3 -5
- package/dist/src/policy/toml-loader.js +12 -60
- package/dist/src/policy/toml-loader.js.map +1 -1
- package/dist/src/policy/toml-loader.test.js +38 -7
- package/dist/src/policy/toml-loader.test.js.map +1 -1
- package/dist/src/policy/types.d.ts +72 -1
- package/dist/src/policy/types.js +21 -0
- package/dist/src/policy/types.js.map +1 -1
- package/dist/src/policy/utils.d.ts +21 -0
- package/dist/src/policy/utils.js +42 -0
- package/dist/src/policy/utils.js.map +1 -0
- package/dist/src/policy/utils.test.d.ts +6 -0
- package/dist/src/policy/utils.test.js +64 -0
- package/dist/src/policy/utils.test.js.map +1 -0
- package/dist/src/resources/resource-registry.d.ts +30 -0
- package/dist/src/resources/resource-registry.js +57 -0
- package/dist/src/resources/resource-registry.js.map +1 -0
- package/dist/src/resources/resource-registry.test.d.ts +6 -0
- package/dist/src/resources/resource-registry.test.js +54 -0
- package/dist/src/resources/resource-registry.test.js.map +1 -0
- package/dist/src/routing/modelRouterService.js +0 -15
- package/dist/src/routing/modelRouterService.js.map +1 -1
- package/dist/src/routing/modelRouterService.test.js +0 -62
- package/dist/src/routing/modelRouterService.test.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js +10 -21
- package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.test.js +2 -1
- package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/compositeStrategy.js +4 -2
- package/dist/src/routing/strategies/compositeStrategy.js.map +1 -1
- package/dist/src/routing/strategies/compositeStrategy.test.js +11 -10
- package/dist/src/routing/strategies/compositeStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js +20 -12
- package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.test.js +63 -39
- package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js +3 -2
- package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
- package/dist/src/safety/checker-runner.js +17 -6
- package/dist/src/safety/checker-runner.js.map +1 -1
- package/dist/src/scheduler/tool-executor.d.ts +22 -0
- package/dist/src/scheduler/tool-executor.js +198 -0
- package/dist/src/scheduler/tool-executor.js.map +1 -0
- package/dist/src/scheduler/tool-executor.test.d.ts +6 -0
- package/dist/src/scheduler/tool-executor.test.js +231 -0
- package/dist/src/scheduler/tool-executor.test.js.map +1 -0
- package/dist/src/scheduler/types.d.ts +95 -0
- package/dist/src/scheduler/types.js +7 -0
- package/dist/src/scheduler/types.js.map +1 -0
- package/dist/src/services/chatCompressionService.d.ts +1 -0
- package/dist/src/services/chatCompressionService.js +38 -8
- package/dist/src/services/chatCompressionService.js.map +1 -1
- package/dist/src/services/chatCompressionService.test.js +35 -31
- package/dist/src/services/chatCompressionService.test.js.map +1 -1
- package/dist/src/services/chatRecordingService.d.ts +14 -0
- package/dist/src/services/chatRecordingService.js +37 -0
- package/dist/src/services/chatRecordingService.js.map +1 -1
- package/dist/src/services/contextManager.d.ts +29 -0
- package/dist/src/services/contextManager.js +71 -0
- package/dist/src/services/contextManager.js.map +1 -0
- package/dist/src/services/contextManager.test.d.ts +6 -0
- package/dist/src/services/contextManager.test.js +104 -0
- package/dist/src/services/contextManager.test.js.map +1 -0
- package/dist/src/services/environmentSanitization.d.ts +15 -0
- package/dist/src/services/environmentSanitization.js +141 -0
- package/dist/src/services/environmentSanitization.js.map +1 -0
- package/dist/src/services/environmentSanitization.test.d.ts +6 -0
- package/dist/src/services/environmentSanitization.test.js +284 -0
- package/dist/src/services/environmentSanitization.test.js.map +1 -0
- package/dist/src/services/fileSystemService.d.ts +0 -9
- package/dist/src/services/fileSystemService.js +0 -11
- package/dist/src/services/fileSystemService.js.map +1 -1
- package/dist/src/services/gitService.js +18 -2
- package/dist/src/services/gitService.js.map +1 -1
- package/dist/src/services/gitService.test.js +56 -0
- package/dist/src/services/gitService.test.js.map +1 -1
- package/dist/src/services/loopDetectionService.js +5 -4
- package/dist/src/services/loopDetectionService.js.map +1 -1
- package/dist/src/services/loopDetectionService.test.js +14 -8
- package/dist/src/services/loopDetectionService.test.js.map +1 -1
- package/dist/src/services/modelConfig.golden.test.js +32 -0
- package/dist/src/services/modelConfig.golden.test.js.map +1 -1
- package/dist/src/services/modelConfig.integration.test.js +1 -1
- package/dist/src/services/modelConfig.integration.test.js.map +1 -1
- package/dist/src/services/modelConfigService.d.ts +4 -0
- package/dist/src/services/modelConfigService.js +8 -3
- package/dist/src/services/modelConfigService.js.map +1 -1
- package/dist/src/services/modelConfigService.test.js +221 -0
- package/dist/src/services/modelConfigService.test.js.map +1 -1
- package/dist/src/services/modelConfigServiceTestUtils.d.ts +10 -0
- package/dist/src/services/modelConfigServiceTestUtils.js +17 -0
- package/dist/src/services/modelConfigServiceTestUtils.js.map +1 -0
- package/dist/src/services/sessionSummaryService.d.ts +28 -0
- package/dist/src/services/sessionSummaryService.js +131 -0
- package/dist/src/services/sessionSummaryService.js.map +1 -0
- package/dist/src/services/sessionSummaryService.test.d.ts +6 -0
- package/dist/src/services/sessionSummaryService.test.js +785 -0
- package/dist/src/services/sessionSummaryService.test.js.map +1 -0
- package/dist/src/services/sessionSummaryUtils.d.ts +16 -0
- package/dist/src/services/sessionSummaryUtils.js +129 -0
- package/dist/src/services/sessionSummaryUtils.js.map +1 -0
- package/dist/src/services/sessionSummaryUtils.test.d.ts +6 -0
- package/dist/src/services/sessionSummaryUtils.test.js +137 -0
- package/dist/src/services/sessionSummaryUtils.test.js.map +1 -0
- package/dist/src/services/shellExecutionService.d.ts +4 -0
- package/dist/src/services/shellExecutionService.js +45 -27
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +240 -8
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/services/test-data/resolved-aliases-retry.golden.json +238 -0
- package/dist/src/services/test-data/resolved-aliases.golden.json +36 -0
- package/dist/src/skills/skillLoader.d.ts +28 -0
- package/dist/src/skills/skillLoader.js +77 -0
- package/dist/src/skills/skillLoader.js.map +1 -0
- package/dist/src/skills/skillLoader.test.d.ts +1 -0
- package/dist/src/skills/skillLoader.test.js +2 -0
- package/dist/src/skills/skillLoader.test.js.map +1 -0
- package/dist/src/skills/skillManager.d.ts +51 -0
- package/dist/src/skills/skillManager.js +89 -0
- package/dist/src/skills/skillManager.js.map +1 -0
- package/dist/src/skills/skillManager.test.d.ts +6 -0
- package/dist/src/skills/skillManager.test.js +128 -0
- package/dist/src/skills/skillManager.test.js.map +1 -0
- package/dist/src/telemetry/activity-detector.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +11 -7
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +127 -47
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +105 -18
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +9 -3
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +20 -5
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/config.js +2 -0
- package/dist/src/telemetry/config.js.map +1 -1
- package/dist/src/telemetry/config.test.js +25 -0
- package/dist/src/telemetry/config.test.js.map +1 -1
- package/dist/src/telemetry/gcp-exporters.d.ts +4 -3
- package/dist/src/telemetry/gcp-exporters.js +8 -4
- package/dist/src/telemetry/gcp-exporters.js.map +1 -1
- package/dist/src/telemetry/index.d.ts +2 -1
- package/dist/src/telemetry/index.js +2 -1
- package/dist/src/telemetry/index.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +5 -3
- package/dist/src/telemetry/loggers.js +353 -334
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.circular.js +1 -0
- package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +238 -31
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +22 -0
- package/dist/src/telemetry/metrics.js +32 -0
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +64 -0
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/sanitize.d.ts +25 -0
- package/dist/src/telemetry/sanitize.js +48 -0
- package/dist/src/telemetry/sanitize.js.map +1 -0
- package/dist/src/telemetry/sanitize.test.d.ts +6 -0
- package/dist/src/telemetry/sanitize.test.js +279 -0
- package/dist/src/telemetry/sanitize.test.js.map +1 -0
- package/dist/src/telemetry/sdk.d.ts +9 -2
- package/dist/src/telemetry/sdk.js +142 -17
- package/dist/src/telemetry/sdk.js.map +1 -1
- package/dist/src/telemetry/sdk.test.js +130 -28
- package/dist/src/telemetry/sdk.test.js.map +1 -1
- package/dist/src/telemetry/semantic.js +1 -1
- package/dist/src/telemetry/semantic.js.map +1 -1
- package/dist/src/telemetry/startupProfiler.d.ts +51 -0
- package/dist/src/telemetry/startupProfiler.js +170 -0
- package/dist/src/telemetry/startupProfiler.js.map +1 -0
- package/dist/src/telemetry/startupProfiler.test.d.ts +6 -0
- package/dist/src/telemetry/startupProfiler.test.js +285 -0
- package/dist/src/telemetry/startupProfiler.test.js.map +1 -0
- package/dist/src/telemetry/telemetry.test.js +10 -3
- package/dist/src/telemetry/telemetry.test.js.map +1 -1
- package/dist/src/telemetry/trace.js +2 -2
- package/dist/src/telemetry/trace.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +62 -16
- package/dist/src/telemetry/types.js +157 -27
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.d.ts +1 -0
- package/dist/src/telemetry/uiTelemetry.js +2 -0
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.test.js +4 -0
- package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
- package/dist/src/test-utils/mock-message-bus.d.ts +61 -0
- package/dist/src/test-utils/mock-message-bus.js +160 -0
- package/dist/src/test-utils/mock-message-bus.js.map +1 -0
- package/dist/src/test-utils/mock-tool.d.ts +5 -3
- package/dist/src/test-utils/mock-tool.js +12 -11
- package/dist/src/test-utils/mock-tool.js.map +1 -1
- package/dist/src/tools/activate-skill.d.ts +27 -0
- package/dist/src/tools/activate-skill.js +120 -0
- package/dist/src/tools/activate-skill.js.map +1 -0
- package/dist/src/tools/activate-skill.test.d.ts +6 -0
- package/dist/src/tools/activate-skill.test.js +95 -0
- package/dist/src/tools/activate-skill.test.js.map +1 -0
- package/dist/src/tools/confirmation-policy.test.d.ts +6 -0
- package/dist/src/tools/confirmation-policy.test.js +142 -0
- package/dist/src/tools/confirmation-policy.test.js.map +1 -0
- package/dist/src/tools/edit.d.ts +27 -5
- package/dist/src/tools/edit.js +449 -137
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +258 -526
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/get-internal-docs.d.ts +27 -0
- package/dist/src/tools/get-internal-docs.js +129 -0
- package/dist/src/tools/get-internal-docs.js.map +1 -0
- package/dist/src/tools/get-internal-docs.test.d.ts +6 -0
- package/dist/src/tools/get-internal-docs.test.js +57 -0
- package/dist/src/tools/get-internal-docs.test.js.map +1 -0
- package/dist/src/tools/glob.d.ts +2 -2
- package/dist/src/tools/glob.js +1 -1
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/glob.test.js +2 -1
- package/dist/src/tools/glob.test.js.map +1 -1
- package/dist/src/tools/grep.d.ts +2 -2
- package/dist/src/tools/grep.js +1 -1
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/grep.test.js +5 -4
- package/dist/src/tools/grep.test.js.map +1 -1
- package/dist/src/tools/ls.d.ts +2 -2
- package/dist/src/tools/ls.js +2 -2
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +2 -1
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.d.ts +3 -1
- package/dist/src/tools/mcp-client-manager.js +42 -9
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +66 -10
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +44 -6
- package/dist/src/tools/mcp-client.js +476 -176
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +633 -36
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +2 -2
- package/dist/src/tools/mcp-tool.js +20 -7
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/mcp-tool.test.js +35 -5
- package/dist/src/tools/mcp-tool.test.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +3 -3
- package/dist/src/tools/memoryTool.js +3 -4
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/memoryTool.test.js +5 -2
- package/dist/src/tools/memoryTool.test.js.map +1 -1
- package/dist/src/tools/message-bus-integration.test.js +10 -37
- package/dist/src/tools/message-bus-integration.test.js.map +1 -1
- package/dist/src/tools/modifiable-tool.js.map +1 -1
- package/dist/src/tools/modifiable-tool.test.js +22 -13
- package/dist/src/tools/modifiable-tool.test.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +2 -2
- package/dist/src/tools/read-file.js +2 -2
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +3 -2
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/read-many-files.d.ts +2 -2
- package/dist/src/tools/read-many-files.js +7 -6
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +4 -3
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/ripGrep.d.ts +3 -2
- package/dist/src/tools/ripGrep.js +18 -7
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/ripGrep.test.js +60 -4
- package/dist/src/tools/ripGrep.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +5 -7
- package/dist/src/tools/shell.js +77 -51
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +59 -63
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/tool-error.d.ts +2 -1
- package/dist/src/tools/tool-error.js +2 -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 +59 -0
- package/dist/src/tools/tool-names.js.map +1 -1
- package/dist/src/tools/tool-names.test.d.ts +6 -0
- package/dist/src/tools/tool-names.test.js +43 -0
- package/dist/src/tools/tool-names.test.js.map +1 -0
- package/dist/src/tools/tool-registry.d.ts +11 -7
- package/dist/src/tools/tool-registry.js +15 -10
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +16 -11
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +25 -6
- package/dist/src/tools/tools.js +44 -25
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/tools.test.js +3 -1
- package/dist/src/tools/tools.test.js.map +1 -1
- package/dist/src/tools/web-fetch.d.ts +2 -2
- package/dist/src/tools/web-fetch.js +22 -9
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +18 -19
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/tools/web-search.d.ts +2 -2
- package/dist/src/tools/web-search.js +5 -5
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/web-search.test.js +2 -1
- package/dist/src/tools/web-search.test.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +2 -2
- package/dist/src/tools/write-file.js +10 -4
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.test.js +4 -1
- package/dist/src/tools/write-file.test.js.map +1 -1
- package/dist/src/tools/write-todos.d.ts +2 -2
- package/dist/src/tools/write-todos.js +5 -4
- package/dist/src/tools/write-todos.js.map +1 -1
- package/dist/src/tools/write-todos.test.js +2 -1
- package/dist/src/tools/write-todos.test.js.map +1 -1
- package/dist/src/utils/bfsFileSearch.d.ts +8 -0
- package/dist/src/utils/bfsFileSearch.js +63 -23
- package/dist/src/utils/bfsFileSearch.js.map +1 -1
- package/dist/src/utils/bfsFileSearch.test.js +65 -1
- package/dist/src/utils/bfsFileSearch.test.js.map +1 -1
- package/dist/src/utils/checkpointUtils.d.ts +82 -0
- package/dist/src/utils/checkpointUtils.js +117 -0
- package/dist/src/utils/checkpointUtils.js.map +1 -0
- package/dist/src/utils/checkpointUtils.test.d.ts +6 -0
- package/dist/src/utils/checkpointUtils.test.js +229 -0
- package/dist/src/utils/checkpointUtils.test.js.map +1 -0
- package/dist/src/utils/customHeaderUtils.d.ts +9 -0
- package/dist/src/utils/customHeaderUtils.js +34 -0
- package/dist/src/utils/customHeaderUtils.js.map +1 -0
- package/dist/src/utils/customHeaderUtils.test.d.ts +6 -0
- package/dist/src/utils/customHeaderUtils.test.js +77 -0
- package/dist/src/utils/customHeaderUtils.test.js.map +1 -0
- package/dist/src/utils/debugLogger.d.ts +3 -0
- package/dist/src/utils/debugLogger.js +28 -0
- package/dist/src/utils/debugLogger.js.map +1 -1
- package/dist/src/utils/editCorrector.js +6 -5
- package/dist/src/utils/editCorrector.js.map +1 -1
- package/dist/src/utils/editCorrector.test.js +7 -3
- package/dist/src/utils/editCorrector.test.js.map +1 -1
- package/dist/src/utils/editor.d.ts +9 -1
- package/dist/src/utils/editor.js +23 -14
- package/dist/src/utils/editor.js.map +1 -1
- package/dist/src/utils/environmentContext.d.ts +1 -0
- package/dist/src/utils/environmentContext.js +4 -0
- package/dist/src/utils/environmentContext.js.map +1 -1
- package/dist/src/utils/environmentContext.test.js +2 -0
- package/dist/src/utils/environmentContext.test.js.map +1 -1
- package/dist/src/utils/errorReporting.d.ts +1 -1
- package/dist/src/utils/errorReporting.js +13 -12
- package/dist/src/utils/errorReporting.js.map +1 -1
- package/dist/src/utils/errorReporting.test.js +17 -14
- package/dist/src/utils/errorReporting.test.js.map +1 -1
- package/dist/src/utils/errors.d.ts +8 -0
- package/dist/src/utils/errors.js +39 -2
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/errors.test.d.ts +6 -0
- package/dist/src/utils/errors.test.js +155 -0
- package/dist/src/utils/errors.test.js.map +1 -0
- package/dist/src/utils/events.d.ts +49 -19
- package/dist/src/utils/events.js +21 -9
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/events.test.js +25 -0
- package/dist/src/utils/events.test.js.map +1 -1
- package/dist/src/utils/exitCodes.d.ts +12 -0
- package/dist/src/utils/exitCodes.js +13 -0
- package/dist/src/utils/exitCodes.js.map +1 -0
- package/dist/src/utils/extensionLoader.d.ts +2 -2
- package/dist/src/utils/extensionLoader.js +5 -6
- package/dist/src/utils/extensionLoader.js.map +1 -1
- package/dist/src/utils/extensionLoader.test.js +11 -0
- package/dist/src/utils/extensionLoader.test.js.map +1 -1
- package/dist/src/utils/fetch.d.ts +1 -1
- package/dist/src/utils/fetch.js +3 -3
- package/dist/src/utils/fetch.js.map +1 -1
- package/dist/src/utils/fileUtils.d.ts +4 -0
- package/dist/src/utils/fileUtils.js +53 -0
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/fileUtils.test.js +127 -1
- package/dist/src/utils/fileUtils.test.js.map +1 -1
- package/dist/src/utils/filesearch/crawlCache.js.map +1 -1
- package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
- package/dist/src/utils/flashFallback.test.js +1 -1
- package/dist/src/utils/flashFallback.test.js.map +1 -1
- package/dist/src/utils/geminiIgnoreParser.d.ts +11 -0
- package/dist/src/utils/geminiIgnoreParser.js +20 -0
- package/dist/src/utils/geminiIgnoreParser.js.map +1 -1
- package/dist/src/utils/geminiIgnoreParser.test.js +48 -0
- package/dist/src/utils/geminiIgnoreParser.test.js.map +1 -1
- package/dist/src/utils/generateContentResponseUtilities.d.ts +3 -1
- package/dist/src/utils/generateContentResponseUtilities.js +106 -0
- package/dist/src/utils/generateContentResponseUtilities.js.map +1 -1
- package/dist/src/utils/generateContentResponseUtilities.test.js +279 -2
- package/dist/src/utils/generateContentResponseUtilities.test.js.map +1 -1
- package/dist/src/utils/getFolderStructure.js +7 -2
- package/dist/src/utils/getFolderStructure.js.map +1 -1
- package/dist/src/utils/googleErrors.js +31 -18
- package/dist/src/utils/googleErrors.js.map +1 -1
- package/dist/src/utils/googleErrors.test.js +10 -2
- package/dist/src/utils/googleErrors.test.js.map +1 -1
- package/dist/src/utils/googleQuotaErrors.d.ts +3 -3
- package/dist/src/utils/googleQuotaErrors.js +32 -6
- package/dist/src/utils/googleQuotaErrors.js.map +1 -1
- package/dist/src/utils/googleQuotaErrors.test.js +94 -2
- package/dist/src/utils/googleQuotaErrors.test.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.d.ts +5 -0
- package/dist/src/utils/memoryDiscovery.js +9 -5
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.test.js +31 -1
- package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.test.js +4 -0
- package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
- package/dist/src/utils/package.d.ts +14 -0
- package/dist/src/utils/package.js +15 -2
- package/dist/src/utils/package.js.map +1 -1
- package/dist/src/utils/pathCorrector.js +12 -2
- package/dist/src/utils/pathCorrector.js.map +1 -1
- package/dist/src/utils/pathCorrector.test.js +6 -2
- package/dist/src/utils/pathCorrector.test.js.map +1 -1
- package/dist/src/utils/retry.d.ts +11 -0
- package/dist/src/utils/retry.js +62 -21
- package/dist/src/utils/retry.js.map +1 -1
- package/dist/src/utils/retry.test.js +170 -10
- package/dist/src/utils/retry.test.js.map +1 -1
- package/dist/src/utils/schemaValidator.d.ts +1 -1
- package/dist/src/utils/schemaValidator.js +1 -1
- package/dist/src/utils/shell-permissions.d.ts +52 -0
- package/dist/src/utils/shell-permissions.js +188 -0
- package/dist/src/utils/shell-permissions.js.map +1 -0
- package/dist/src/utils/shell-permissions.test.d.ts +6 -0
- package/dist/src/utils/shell-permissions.test.js +369 -0
- package/dist/src/utils/shell-permissions.test.js.map +1 -0
- package/dist/src/utils/shell-utils.d.ts +16 -47
- package/dist/src/utils/shell-utils.js +99 -195
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +99 -288
- package/dist/src/utils/shell-utils.test.js.map +1 -1
- package/dist/src/utils/stdio.d.ts +2 -2
- package/dist/src/utils/stdio.js +2 -2
- package/dist/src/utils/stdio.js.map +1 -1
- package/dist/src/utils/stdio.test.js +5 -5
- package/dist/src/utils/stdio.test.js.map +1 -1
- package/dist/src/utils/summarizer.test.js +3 -2
- package/dist/src/utils/summarizer.test.js.map +1 -1
- package/dist/src/utils/terminal.d.ts +4 -0
- package/dist/src/utils/terminal.js +12 -0
- package/dist/src/utils/terminal.js.map +1 -1
- package/dist/src/utils/terminalSerializer.test.js +17 -0
- package/dist/src/utils/terminalSerializer.test.js.map +1 -1
- package/dist/src/utils/tokenCalculation.d.ts +19 -0
- package/dist/src/utils/tokenCalculation.js +85 -0
- package/dist/src/utils/tokenCalculation.js.map +1 -0
- package/dist/src/utils/tokenCalculation.test.d.ts +6 -0
- package/dist/src/utils/tokenCalculation.test.js +87 -0
- package/dist/src/utils/tokenCalculation.test.js.map +1 -0
- package/dist/src/utils/tool-utils.d.ts +9 -0
- package/dist/src/utils/tool-utils.js +29 -0
- package/dist/src/utils/tool-utils.js.map +1 -1
- package/dist/src/utils/tool-utils.test.js +17 -2
- package/dist/src/utils/tool-utils.test.js.map +1 -1
- package/dist/src/utils/version.d.ts +6 -0
- package/dist/src/utils/version.js +15 -0
- package/dist/src/utils/version.js.map +1 -0
- package/dist/src/utils/version.test.d.ts +6 -0
- package/dist/src/utils/version.test.js +39 -0
- package/dist/src/utils/version.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -7
|
@@ -14,6 +14,7 @@ export { ToolCallDecision };
|
|
|
14
14
|
import type { ToolRegistry } from '../tools/tool-registry.js';
|
|
15
15
|
import type { OutputFormat } from '../output/types.js';
|
|
16
16
|
import type { AgentTerminateMode } from '../agents/types.js';
|
|
17
|
+
import type { OTelFinishReason } from './semantic.js';
|
|
17
18
|
export interface BaseTelemetryEvent {
|
|
18
19
|
'event.name': string;
|
|
19
20
|
/** Current timestamp in ISO 8601 format */
|
|
@@ -98,11 +99,11 @@ export declare class ApiRequestEvent implements BaseTelemetryEvent {
|
|
|
98
99
|
'event.name': 'api_request';
|
|
99
100
|
'event.timestamp': string;
|
|
100
101
|
model: string;
|
|
101
|
-
|
|
102
|
+
prompt: GenAIPromptDetails;
|
|
102
103
|
request_text?: string;
|
|
103
|
-
constructor(model: string,
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
constructor(model: string, prompt_details: GenAIPromptDetails, request_text?: string);
|
|
105
|
+
toLogRecord(config: Config): LogRecord;
|
|
106
|
+
toSemanticLogRecord(config: Config): LogRecord;
|
|
106
107
|
}
|
|
107
108
|
export declare const EVENT_API_ERROR = "gemini_cli.api_error";
|
|
108
109
|
export declare class ApiErrorEvent implements BaseTelemetryEvent {
|
|
@@ -154,6 +155,7 @@ export declare class ApiResponseEvent implements BaseTelemetryEvent {
|
|
|
154
155
|
prompt: GenAIPromptDetails;
|
|
155
156
|
response: GenAIResponseDetails;
|
|
156
157
|
usage: GenAIUsageDetails;
|
|
158
|
+
finish_reasons: OTelFinishReason[];
|
|
157
159
|
constructor(model: string, duration_ms: number, prompt_details: GenAIPromptDetails, response_details: GenAIResponseDetails, auth_type?: string, usage_data?: GenerateContentResponseUsageMetadata, response_text?: string);
|
|
158
160
|
toLogRecord(config: Config): LogRecord;
|
|
159
161
|
toSemanticLogRecord(config: Config): LogRecord;
|
|
@@ -334,11 +336,12 @@ export declare class ExtensionInstallEvent implements BaseTelemetryEvent {
|
|
|
334
336
|
'event.name': 'extension_install';
|
|
335
337
|
'event.timestamp': string;
|
|
336
338
|
extension_name: string;
|
|
339
|
+
hashed_extension_name: string;
|
|
337
340
|
extension_id: string;
|
|
338
341
|
extension_version: string;
|
|
339
342
|
extension_source: string;
|
|
340
343
|
status: 'success' | 'error';
|
|
341
|
-
constructor(extension_name: string, extension_id: string, extension_version: string, extension_source: string, status: 'success' | 'error');
|
|
344
|
+
constructor(extension_name: string, hashed_extension_name: string, extension_id: string, extension_version: string, extension_source: string, status: 'success' | 'error');
|
|
342
345
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
343
346
|
toLogBody(): string;
|
|
344
347
|
}
|
|
@@ -368,9 +371,10 @@ export declare class ExtensionUninstallEvent implements BaseTelemetryEvent {
|
|
|
368
371
|
'event.name': 'extension_uninstall';
|
|
369
372
|
'event.timestamp': string;
|
|
370
373
|
extension_name: string;
|
|
374
|
+
hashed_extension_name: string;
|
|
371
375
|
extension_id: string;
|
|
372
376
|
status: 'success' | 'error';
|
|
373
|
-
constructor(extension_name: string, extension_id: string, status: 'success' | 'error');
|
|
377
|
+
constructor(extension_name: string, hashed_extension_name: string, extension_id: string, status: 'success' | 'error');
|
|
374
378
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
375
379
|
toLogBody(): string;
|
|
376
380
|
}
|
|
@@ -379,12 +383,13 @@ export declare class ExtensionUpdateEvent implements BaseTelemetryEvent {
|
|
|
379
383
|
'event.name': 'extension_update';
|
|
380
384
|
'event.timestamp': string;
|
|
381
385
|
extension_name: string;
|
|
386
|
+
hashed_extension_name: string;
|
|
382
387
|
extension_id: string;
|
|
383
388
|
extension_previous_version: string;
|
|
384
389
|
extension_version: string;
|
|
385
390
|
extension_source: string;
|
|
386
391
|
status: 'success' | 'error';
|
|
387
|
-
constructor(extension_name: string, extension_id: string, extension_version: string, extension_previous_version: string, extension_source: string, status: 'success' | 'error');
|
|
392
|
+
constructor(extension_name: string, hashed_extension_name: string, extension_id: string, extension_version: string, extension_previous_version: string, extension_source: string, status: 'success' | 'error');
|
|
388
393
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
389
394
|
toLogBody(): string;
|
|
390
395
|
}
|
|
@@ -393,9 +398,10 @@ export declare class ExtensionEnableEvent implements BaseTelemetryEvent {
|
|
|
393
398
|
'event.name': 'extension_enable';
|
|
394
399
|
'event.timestamp': string;
|
|
395
400
|
extension_name: string;
|
|
401
|
+
hashed_extension_name: string;
|
|
396
402
|
extension_id: string;
|
|
397
403
|
setting_scope: string;
|
|
398
|
-
constructor(extension_name: string, extension_id: string, settingScope: string);
|
|
404
|
+
constructor(extension_name: string, hashed_extension_name: string, extension_id: string, settingScope: string);
|
|
399
405
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
400
406
|
toLogBody(): string;
|
|
401
407
|
}
|
|
@@ -420,36 +426,57 @@ export declare class LlmLoopCheckEvent implements BaseTelemetryEvent {
|
|
|
420
426
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
421
427
|
toLogBody(): string;
|
|
422
428
|
}
|
|
423
|
-
export type TelemetryEvent = StartSessionEvent | EndSessionEvent | UserPromptEvent | ToolCallEvent | ApiRequestEvent | ApiErrorEvent | ApiResponseEvent | FlashFallbackEvent | LoopDetectedEvent | LoopDetectionDisabledEvent | NextSpeakerCheckEvent | MalformedJsonResponseEvent | IdeConnectionEvent | ConversationFinishedEvent | SlashCommandEvent | FileOperationEvent | InvalidChunkEvent | ContentRetryEvent | ContentRetryFailureEvent | ExtensionEnableEvent | ExtensionInstallEvent | ExtensionUninstallEvent | ModelRoutingEvent | ToolOutputTruncatedEvent | ModelSlashCommandEvent | AgentStartEvent | AgentFinishEvent | RecoveryAttemptEvent | LlmLoopCheckEvent | WebFetchFallbackAttemptEvent;
|
|
429
|
+
export type TelemetryEvent = StartSessionEvent | EndSessionEvent | UserPromptEvent | ToolCallEvent | ApiRequestEvent | ApiErrorEvent | ApiResponseEvent | FlashFallbackEvent | LoopDetectedEvent | LoopDetectionDisabledEvent | NextSpeakerCheckEvent | MalformedJsonResponseEvent | IdeConnectionEvent | ConversationFinishedEvent | SlashCommandEvent | FileOperationEvent | InvalidChunkEvent | ContentRetryEvent | ContentRetryFailureEvent | ExtensionEnableEvent | ExtensionInstallEvent | ExtensionUninstallEvent | ModelRoutingEvent | ToolOutputTruncatedEvent | ModelSlashCommandEvent | AgentStartEvent | AgentFinishEvent | RecoveryAttemptEvent | LlmLoopCheckEvent | StartupStatsEvent | WebFetchFallbackAttemptEvent | EditStrategyEvent | EditCorrectionEvent;
|
|
424
430
|
export declare const EVENT_EXTENSION_DISABLE = "gemini_cli.extension_disable";
|
|
425
431
|
export declare class ExtensionDisableEvent implements BaseTelemetryEvent {
|
|
426
432
|
'event.name': 'extension_disable';
|
|
427
433
|
'event.timestamp': string;
|
|
428
434
|
extension_name: string;
|
|
435
|
+
hashed_extension_name: string;
|
|
429
436
|
extension_id: string;
|
|
430
437
|
setting_scope: string;
|
|
431
|
-
constructor(extension_name: string, extension_id: string, settingScope: string);
|
|
438
|
+
constructor(extension_name: string, hashed_extension_name: string, extension_id: string, settingScope: string);
|
|
432
439
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
433
440
|
toLogBody(): string;
|
|
434
441
|
}
|
|
435
|
-
export declare const
|
|
436
|
-
export declare class
|
|
437
|
-
'event.name': '
|
|
442
|
+
export declare const EVENT_EDIT_STRATEGY = "gemini_cli.edit_strategy";
|
|
443
|
+
export declare class EditStrategyEvent implements BaseTelemetryEvent {
|
|
444
|
+
'event.name': 'edit_strategy';
|
|
438
445
|
'event.timestamp': string;
|
|
439
446
|
strategy: string;
|
|
440
447
|
constructor(strategy: string);
|
|
441
448
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
442
449
|
toLogBody(): string;
|
|
443
450
|
}
|
|
444
|
-
export declare const
|
|
445
|
-
export declare class
|
|
446
|
-
'event.name': '
|
|
451
|
+
export declare const EVENT_EDIT_CORRECTION = "gemini_cli.edit_correction";
|
|
452
|
+
export declare class EditCorrectionEvent implements BaseTelemetryEvent {
|
|
453
|
+
'event.name': 'edit_correction';
|
|
447
454
|
'event.timestamp': string;
|
|
448
455
|
correction: 'success' | 'failure';
|
|
449
456
|
constructor(correction: 'success' | 'failure');
|
|
450
457
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
451
458
|
toLogBody(): string;
|
|
452
459
|
}
|
|
460
|
+
export interface StartupPhaseStats {
|
|
461
|
+
name: string;
|
|
462
|
+
duration_ms: number;
|
|
463
|
+
cpu_usage_user_usec: number;
|
|
464
|
+
cpu_usage_system_usec: number;
|
|
465
|
+
start_time_usec: number;
|
|
466
|
+
end_time_usec: number;
|
|
467
|
+
}
|
|
468
|
+
export declare const EVENT_STARTUP_STATS = "gemini_cli.startup_stats";
|
|
469
|
+
export declare class StartupStatsEvent implements BaseTelemetryEvent {
|
|
470
|
+
'event.name': 'startup_stats';
|
|
471
|
+
'event.timestamp': string;
|
|
472
|
+
phases: StartupPhaseStats[];
|
|
473
|
+
os_platform: string;
|
|
474
|
+
os_release: string;
|
|
475
|
+
is_docker: boolean;
|
|
476
|
+
constructor(phases: StartupPhaseStats[], os_platform: string, os_release: string, is_docker: boolean);
|
|
477
|
+
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
478
|
+
toLogBody(): string;
|
|
479
|
+
}
|
|
453
480
|
declare abstract class BaseAgentEvent implements BaseTelemetryEvent {
|
|
454
481
|
abstract 'event.name': 'agent_start' | 'agent_finish' | 'agent_recovery_attempt';
|
|
455
482
|
'event.timestamp': string;
|
|
@@ -496,3 +523,22 @@ export declare class WebFetchFallbackAttemptEvent implements BaseTelemetryEvent
|
|
|
496
523
|
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
497
524
|
toLogBody(): string;
|
|
498
525
|
}
|
|
526
|
+
export declare const EVENT_HOOK_CALL = "gemini_cli.hook_call";
|
|
527
|
+
export declare class HookCallEvent implements BaseTelemetryEvent {
|
|
528
|
+
'event.name': string;
|
|
529
|
+
'event.timestamp': string;
|
|
530
|
+
hook_event_name: string;
|
|
531
|
+
hook_type: 'command';
|
|
532
|
+
hook_name: string;
|
|
533
|
+
hook_input: Record<string, unknown>;
|
|
534
|
+
hook_output?: Record<string, unknown>;
|
|
535
|
+
exit_code?: number;
|
|
536
|
+
stdout?: string;
|
|
537
|
+
stderr?: string;
|
|
538
|
+
duration_ms: number;
|
|
539
|
+
success: boolean;
|
|
540
|
+
error?: string;
|
|
541
|
+
constructor(hookEventName: string, hookType: 'command', hookName: string, hookInput: Record<string, unknown>, durationMs: number, success: boolean, hookOutput?: Record<string, unknown>, exitCode?: number, stdout?: string, stderr?: string, error?: string);
|
|
542
|
+
toOpenTelemetryAttributes(config: Config): LogAttributes;
|
|
543
|
+
toLogBody(): string;
|
|
544
|
+
}
|
|
@@ -12,6 +12,7 @@ import { getCommonAttributes } from './telemetryAttributes.js';
|
|
|
12
12
|
import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
|
|
13
13
|
import { safeJsonStringify } from '../utils/safeJsonStringify.js';
|
|
14
14
|
import { toInputMessages, toOutputMessages, toFinishReasons, toOutputType, toSystemInstruction, } from './semantic.js';
|
|
15
|
+
import { sanitizeHookName } from './sanitize.js';
|
|
15
16
|
export const EVENT_CLI_CONFIG = 'gemini_cli.config';
|
|
16
17
|
export class StartSessionEvent {
|
|
17
18
|
'event.name';
|
|
@@ -74,9 +75,7 @@ export class StartSessionEvent {
|
|
|
74
75
|
.getAllTools()
|
|
75
76
|
.filter((tool) => tool instanceof DiscoveredMCPTool);
|
|
76
77
|
this.mcp_tools_count = mcpTools.length;
|
|
77
|
-
this.mcp_tools = mcpTools
|
|
78
|
-
.map((tool) => tool.name)
|
|
79
|
-
.join(',');
|
|
78
|
+
this.mcp_tools = mcpTools.map((tool) => tool.name).join(',');
|
|
80
79
|
}
|
|
81
80
|
}
|
|
82
81
|
toOpenTelemetryAttributes(config) {
|
|
@@ -276,27 +275,50 @@ export class ApiRequestEvent {
|
|
|
276
275
|
'event.name';
|
|
277
276
|
'event.timestamp';
|
|
278
277
|
model;
|
|
279
|
-
|
|
278
|
+
prompt;
|
|
280
279
|
request_text;
|
|
281
|
-
constructor(model,
|
|
280
|
+
constructor(model, prompt_details, request_text) {
|
|
282
281
|
this['event.name'] = 'api_request';
|
|
283
282
|
this['event.timestamp'] = new Date().toISOString();
|
|
284
283
|
this.model = model;
|
|
285
|
-
this.
|
|
284
|
+
this.prompt = prompt_details;
|
|
286
285
|
this.request_text = request_text;
|
|
287
286
|
}
|
|
288
|
-
|
|
289
|
-
|
|
287
|
+
toLogRecord(config) {
|
|
288
|
+
const attributes = {
|
|
290
289
|
...getCommonAttributes(config),
|
|
291
290
|
'event.name': EVENT_API_REQUEST,
|
|
292
291
|
'event.timestamp': this['event.timestamp'],
|
|
293
292
|
model: this.model,
|
|
294
|
-
prompt_id: this.prompt_id,
|
|
293
|
+
prompt_id: this.prompt.prompt_id,
|
|
295
294
|
request_text: this.request_text,
|
|
296
295
|
};
|
|
296
|
+
return { body: `API request to ${this.model}.`, attributes };
|
|
297
297
|
}
|
|
298
|
-
|
|
299
|
-
|
|
298
|
+
toSemanticLogRecord(config) {
|
|
299
|
+
const { 'gen_ai.response.model': _, ...requestConventionAttributes } = getConventionAttributes({
|
|
300
|
+
model: this.model,
|
|
301
|
+
auth_type: config.getContentGeneratorConfig()?.authType,
|
|
302
|
+
});
|
|
303
|
+
const attributes = {
|
|
304
|
+
...getCommonAttributes(config),
|
|
305
|
+
'event.name': EVENT_GEN_AI_OPERATION_DETAILS,
|
|
306
|
+
'event.timestamp': this['event.timestamp'],
|
|
307
|
+
...toGenerateContentConfigAttributes(this.prompt.generate_content_config),
|
|
308
|
+
...requestConventionAttributes,
|
|
309
|
+
};
|
|
310
|
+
if (this.prompt.server) {
|
|
311
|
+
attributes['server.address'] = this.prompt.server.address;
|
|
312
|
+
attributes['server.port'] = this.prompt.server.port;
|
|
313
|
+
}
|
|
314
|
+
if (config.getTelemetryLogPromptsEnabled() && this.prompt.contents) {
|
|
315
|
+
attributes['gen_ai.input.messages'] = JSON.stringify(toInputMessages(this.prompt.contents));
|
|
316
|
+
}
|
|
317
|
+
const logRecord = {
|
|
318
|
+
body: `GenAI operation request details from ${this.model}.`,
|
|
319
|
+
attributes,
|
|
320
|
+
};
|
|
321
|
+
return logRecord;
|
|
300
322
|
}
|
|
301
323
|
}
|
|
302
324
|
export const EVENT_API_ERROR = 'gemini_cli.api_error';
|
|
@@ -401,6 +423,7 @@ export class ApiResponseEvent {
|
|
|
401
423
|
prompt;
|
|
402
424
|
response;
|
|
403
425
|
usage;
|
|
426
|
+
finish_reasons;
|
|
404
427
|
constructor(model, duration_ms, prompt_details, response_details, auth_type, usage_data, response_text) {
|
|
405
428
|
this['event.name'] = 'api_response';
|
|
406
429
|
this['event.timestamp'] = new Date().toISOString();
|
|
@@ -419,6 +442,7 @@ export class ApiResponseEvent {
|
|
|
419
442
|
tool_token_count: usage_data?.toolUsePromptTokenCount ?? 0,
|
|
420
443
|
total_token_count: usage_data?.totalTokenCount ?? 0,
|
|
421
444
|
};
|
|
445
|
+
this.finish_reasons = toFinishReasons(this.response.candidates);
|
|
422
446
|
}
|
|
423
447
|
toLogRecord(config) {
|
|
424
448
|
const attributes = {
|
|
@@ -436,6 +460,7 @@ export class ApiResponseEvent {
|
|
|
436
460
|
prompt_id: this.prompt.prompt_id,
|
|
437
461
|
auth_type: this.auth_type,
|
|
438
462
|
status_code: this.status_code,
|
|
463
|
+
finish_reasons: this.finish_reasons,
|
|
439
464
|
};
|
|
440
465
|
if (this.response_text) {
|
|
441
466
|
attributes['response_text'] = this.response_text;
|
|
@@ -457,7 +482,7 @@ export class ApiResponseEvent {
|
|
|
457
482
|
'event.name': EVENT_GEN_AI_OPERATION_DETAILS,
|
|
458
483
|
'event.timestamp': this['event.timestamp'],
|
|
459
484
|
'gen_ai.response.id': this.response.response_id,
|
|
460
|
-
'gen_ai.response.finish_reasons':
|
|
485
|
+
'gen_ai.response.finish_reasons': this.finish_reasons,
|
|
461
486
|
'gen_ai.output.messages': JSON.stringify(toOutputMessages(this.response.candidates)),
|
|
462
487
|
...toGenerateContentConfigAttributes(this.prompt.generate_content_config),
|
|
463
488
|
...getConventionAttributes(this),
|
|
@@ -910,14 +935,16 @@ export class ExtensionInstallEvent {
|
|
|
910
935
|
'event.name';
|
|
911
936
|
'event.timestamp';
|
|
912
937
|
extension_name;
|
|
938
|
+
hashed_extension_name;
|
|
913
939
|
extension_id;
|
|
914
940
|
extension_version;
|
|
915
941
|
extension_source;
|
|
916
942
|
status;
|
|
917
|
-
constructor(extension_name, extension_id, extension_version, extension_source, status) {
|
|
943
|
+
constructor(extension_name, hashed_extension_name, extension_id, extension_version, extension_source, status) {
|
|
918
944
|
this['event.name'] = 'extension_install';
|
|
919
945
|
this['event.timestamp'] = new Date().toISOString();
|
|
920
946
|
this.extension_name = extension_name;
|
|
947
|
+
this.hashed_extension_name = hashed_extension_name;
|
|
921
948
|
this.extension_id = extension_id;
|
|
922
949
|
this.extension_version = extension_version;
|
|
923
950
|
this.extension_source = extension_source;
|
|
@@ -981,12 +1008,14 @@ export class ExtensionUninstallEvent {
|
|
|
981
1008
|
'event.name';
|
|
982
1009
|
'event.timestamp';
|
|
983
1010
|
extension_name;
|
|
1011
|
+
hashed_extension_name;
|
|
984
1012
|
extension_id;
|
|
985
1013
|
status;
|
|
986
|
-
constructor(extension_name, extension_id, status) {
|
|
1014
|
+
constructor(extension_name, hashed_extension_name, extension_id, status) {
|
|
987
1015
|
this['event.name'] = 'extension_uninstall';
|
|
988
1016
|
this['event.timestamp'] = new Date().toISOString();
|
|
989
1017
|
this.extension_name = extension_name;
|
|
1018
|
+
this.hashed_extension_name = hashed_extension_name;
|
|
990
1019
|
this.extension_id = extension_id;
|
|
991
1020
|
this.status = status;
|
|
992
1021
|
}
|
|
@@ -1008,15 +1037,17 @@ export class ExtensionUpdateEvent {
|
|
|
1008
1037
|
'event.name';
|
|
1009
1038
|
'event.timestamp';
|
|
1010
1039
|
extension_name;
|
|
1040
|
+
hashed_extension_name;
|
|
1011
1041
|
extension_id;
|
|
1012
1042
|
extension_previous_version;
|
|
1013
1043
|
extension_version;
|
|
1014
1044
|
extension_source;
|
|
1015
1045
|
status;
|
|
1016
|
-
constructor(extension_name, extension_id, extension_version, extension_previous_version, extension_source, status) {
|
|
1046
|
+
constructor(extension_name, hashed_extension_name, extension_id, extension_version, extension_previous_version, extension_source, status) {
|
|
1017
1047
|
this['event.name'] = 'extension_update';
|
|
1018
1048
|
this['event.timestamp'] = new Date().toISOString();
|
|
1019
1049
|
this.extension_name = extension_name;
|
|
1050
|
+
this.hashed_extension_name = hashed_extension_name;
|
|
1020
1051
|
this.extension_id = extension_id;
|
|
1021
1052
|
this.extension_version = extension_version;
|
|
1022
1053
|
this.extension_previous_version = extension_previous_version;
|
|
@@ -1044,12 +1075,14 @@ export class ExtensionEnableEvent {
|
|
|
1044
1075
|
'event.name';
|
|
1045
1076
|
'event.timestamp';
|
|
1046
1077
|
extension_name;
|
|
1078
|
+
hashed_extension_name;
|
|
1047
1079
|
extension_id;
|
|
1048
1080
|
setting_scope;
|
|
1049
|
-
constructor(extension_name, extension_id, settingScope) {
|
|
1081
|
+
constructor(extension_name, hashed_extension_name, extension_id, settingScope) {
|
|
1050
1082
|
this['event.name'] = 'extension_enable';
|
|
1051
1083
|
this['event.timestamp'] = new Date().toISOString();
|
|
1052
1084
|
this.extension_name = extension_name;
|
|
1085
|
+
this.hashed_extension_name = hashed_extension_name;
|
|
1053
1086
|
this.extension_id = extension_id;
|
|
1054
1087
|
this.setting_scope = settingScope;
|
|
1055
1088
|
}
|
|
@@ -1126,12 +1159,14 @@ export class ExtensionDisableEvent {
|
|
|
1126
1159
|
'event.name';
|
|
1127
1160
|
'event.timestamp';
|
|
1128
1161
|
extension_name;
|
|
1162
|
+
hashed_extension_name;
|
|
1129
1163
|
extension_id;
|
|
1130
1164
|
setting_scope;
|
|
1131
|
-
constructor(extension_name, extension_id, settingScope) {
|
|
1165
|
+
constructor(extension_name, hashed_extension_name, extension_id, settingScope) {
|
|
1132
1166
|
this['event.name'] = 'extension_disable';
|
|
1133
1167
|
this['event.timestamp'] = new Date().toISOString();
|
|
1134
1168
|
this.extension_name = extension_name;
|
|
1169
|
+
this.hashed_extension_name = hashed_extension_name;
|
|
1135
1170
|
this.extension_id = extension_id;
|
|
1136
1171
|
this.setting_scope = settingScope;
|
|
1137
1172
|
}
|
|
@@ -1148,48 +1183,79 @@ export class ExtensionDisableEvent {
|
|
|
1148
1183
|
return `Disabled extension ${this.extension_name}`;
|
|
1149
1184
|
}
|
|
1150
1185
|
}
|
|
1151
|
-
export const
|
|
1152
|
-
export class
|
|
1186
|
+
export const EVENT_EDIT_STRATEGY = 'gemini_cli.edit_strategy';
|
|
1187
|
+
export class EditStrategyEvent {
|
|
1153
1188
|
'event.name';
|
|
1154
1189
|
'event.timestamp';
|
|
1155
1190
|
strategy;
|
|
1156
1191
|
constructor(strategy) {
|
|
1157
|
-
this['event.name'] = '
|
|
1192
|
+
this['event.name'] = 'edit_strategy';
|
|
1158
1193
|
this['event.timestamp'] = new Date().toISOString();
|
|
1159
1194
|
this.strategy = strategy;
|
|
1160
1195
|
}
|
|
1161
1196
|
toOpenTelemetryAttributes(config) {
|
|
1162
1197
|
return {
|
|
1163
1198
|
...getCommonAttributes(config),
|
|
1164
|
-
'event.name':
|
|
1199
|
+
'event.name': EVENT_EDIT_STRATEGY,
|
|
1165
1200
|
'event.timestamp': this['event.timestamp'],
|
|
1166
1201
|
strategy: this.strategy,
|
|
1167
1202
|
};
|
|
1168
1203
|
}
|
|
1169
1204
|
toLogBody() {
|
|
1170
|
-
return `
|
|
1205
|
+
return `Edit Tool Strategy: ${this.strategy}`;
|
|
1171
1206
|
}
|
|
1172
1207
|
}
|
|
1173
|
-
export const
|
|
1174
|
-
export class
|
|
1208
|
+
export const EVENT_EDIT_CORRECTION = 'gemini_cli.edit_correction';
|
|
1209
|
+
export class EditCorrectionEvent {
|
|
1175
1210
|
'event.name';
|
|
1176
1211
|
'event.timestamp';
|
|
1177
1212
|
correction;
|
|
1178
1213
|
constructor(correction) {
|
|
1179
|
-
this['event.name'] = '
|
|
1214
|
+
this['event.name'] = 'edit_correction';
|
|
1180
1215
|
this['event.timestamp'] = new Date().toISOString();
|
|
1181
1216
|
this.correction = correction;
|
|
1182
1217
|
}
|
|
1183
1218
|
toOpenTelemetryAttributes(config) {
|
|
1184
1219
|
return {
|
|
1185
1220
|
...getCommonAttributes(config),
|
|
1186
|
-
'event.name':
|
|
1221
|
+
'event.name': EVENT_EDIT_CORRECTION,
|
|
1187
1222
|
'event.timestamp': this['event.timestamp'],
|
|
1188
1223
|
correction: this.correction,
|
|
1189
1224
|
};
|
|
1190
1225
|
}
|
|
1191
1226
|
toLogBody() {
|
|
1192
|
-
return `
|
|
1227
|
+
return `Edit Tool Correction: ${this.correction}`;
|
|
1228
|
+
}
|
|
1229
|
+
}
|
|
1230
|
+
export const EVENT_STARTUP_STATS = 'gemini_cli.startup_stats';
|
|
1231
|
+
export class StartupStatsEvent {
|
|
1232
|
+
'event.name';
|
|
1233
|
+
'event.timestamp';
|
|
1234
|
+
phases;
|
|
1235
|
+
os_platform;
|
|
1236
|
+
os_release;
|
|
1237
|
+
is_docker;
|
|
1238
|
+
constructor(phases, os_platform, os_release, is_docker) {
|
|
1239
|
+
this['event.name'] = 'startup_stats';
|
|
1240
|
+
this['event.timestamp'] = new Date().toISOString();
|
|
1241
|
+
this.phases = phases;
|
|
1242
|
+
this.os_platform = os_platform;
|
|
1243
|
+
this.os_release = os_release;
|
|
1244
|
+
this.is_docker = is_docker;
|
|
1245
|
+
}
|
|
1246
|
+
toOpenTelemetryAttributes(config) {
|
|
1247
|
+
return {
|
|
1248
|
+
...getCommonAttributes(config),
|
|
1249
|
+
'event.name': EVENT_STARTUP_STATS,
|
|
1250
|
+
'event.timestamp': this['event.timestamp'],
|
|
1251
|
+
phases: JSON.stringify(this.phases),
|
|
1252
|
+
os_platform: this.os_platform,
|
|
1253
|
+
os_release: this.os_release,
|
|
1254
|
+
is_docker: this.is_docker,
|
|
1255
|
+
};
|
|
1256
|
+
}
|
|
1257
|
+
toLogBody() {
|
|
1258
|
+
return `Startup stats: ${this.phases.length} phases recorded.`;
|
|
1193
1259
|
}
|
|
1194
1260
|
}
|
|
1195
1261
|
class BaseAgentEvent {
|
|
@@ -1301,4 +1367,68 @@ export class WebFetchFallbackAttemptEvent {
|
|
|
1301
1367
|
return `Web fetch fallback attempt. Reason: ${this.reason}`;
|
|
1302
1368
|
}
|
|
1303
1369
|
}
|
|
1370
|
+
export const EVENT_HOOK_CALL = 'gemini_cli.hook_call';
|
|
1371
|
+
export class HookCallEvent {
|
|
1372
|
+
'event.name';
|
|
1373
|
+
'event.timestamp';
|
|
1374
|
+
hook_event_name;
|
|
1375
|
+
hook_type;
|
|
1376
|
+
hook_name;
|
|
1377
|
+
hook_input;
|
|
1378
|
+
hook_output;
|
|
1379
|
+
exit_code;
|
|
1380
|
+
stdout;
|
|
1381
|
+
stderr;
|
|
1382
|
+
duration_ms;
|
|
1383
|
+
success;
|
|
1384
|
+
error;
|
|
1385
|
+
constructor(hookEventName, hookType, hookName, hookInput, durationMs, success, hookOutput, exitCode, stdout, stderr, error) {
|
|
1386
|
+
this['event.name'] = 'hook_call';
|
|
1387
|
+
this['event.timestamp'] = new Date().toISOString();
|
|
1388
|
+
this.hook_event_name = hookEventName;
|
|
1389
|
+
this.hook_type = hookType;
|
|
1390
|
+
this.hook_name = hookName;
|
|
1391
|
+
this.hook_input = hookInput;
|
|
1392
|
+
this.hook_output = hookOutput;
|
|
1393
|
+
this.exit_code = exitCode;
|
|
1394
|
+
this.stdout = stdout;
|
|
1395
|
+
this.stderr = stderr;
|
|
1396
|
+
this.duration_ms = durationMs;
|
|
1397
|
+
this.success = success;
|
|
1398
|
+
this.error = error;
|
|
1399
|
+
}
|
|
1400
|
+
toOpenTelemetryAttributes(config) {
|
|
1401
|
+
const attributes = {
|
|
1402
|
+
...getCommonAttributes(config),
|
|
1403
|
+
'event.name': EVENT_HOOK_CALL,
|
|
1404
|
+
'event.timestamp': this['event.timestamp'],
|
|
1405
|
+
hook_event_name: this.hook_event_name,
|
|
1406
|
+
hook_type: this.hook_type,
|
|
1407
|
+
// Sanitize hook_name unless full logging is enabled
|
|
1408
|
+
hook_name: config.getTelemetryLogPromptsEnabled()
|
|
1409
|
+
? this.hook_name
|
|
1410
|
+
: sanitizeHookName(this.hook_name),
|
|
1411
|
+
duration_ms: this.duration_ms,
|
|
1412
|
+
success: this.success,
|
|
1413
|
+
exit_code: this.exit_code,
|
|
1414
|
+
};
|
|
1415
|
+
// Only include potentially sensitive data if telemetry logging of prompts is enabled
|
|
1416
|
+
if (config.getTelemetryLogPromptsEnabled()) {
|
|
1417
|
+
attributes['hook_input'] = safeJsonStringify(this.hook_input, 2);
|
|
1418
|
+
attributes['hook_output'] = safeJsonStringify(this.hook_output, 2);
|
|
1419
|
+
attributes['stdout'] = this.stdout;
|
|
1420
|
+
attributes['stderr'] = this.stderr;
|
|
1421
|
+
}
|
|
1422
|
+
if (this.error) {
|
|
1423
|
+
// Always log errors
|
|
1424
|
+
attributes['error'] = this.error;
|
|
1425
|
+
}
|
|
1426
|
+
return attributes;
|
|
1427
|
+
}
|
|
1428
|
+
toLogBody() {
|
|
1429
|
+
const hookId = `${this.hook_event_name}.${this.hook_name}`;
|
|
1430
|
+
const status = `${this.success ? 'succeeded' : 'failed'}`;
|
|
1431
|
+
return `Hook call ${hookId} ${status} in ${this.duration_ms}ms`;
|
|
1432
|
+
}
|
|
1433
|
+
}
|
|
1304
1434
|
//# sourceMappingURL=types.js.map
|