@machina.ai/cell-cli-core 1.20.2-rc1 → 1.22.5-rc1
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 +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/package.json +1 -1
- package/dist/src/agents/delegate-to-agent-tool.d.ts +19 -0
- package/dist/src/agents/delegate-to-agent-tool.js +111 -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 +133 -0
- package/dist/src/agents/delegate-to-agent-tool.test.js.map +1 -0
- package/dist/src/agents/executor.js +1 -1
- package/dist/src/agents/executor.js.map +1 -1
- package/dist/src/agents/executor.test.js.map +1 -1
- package/dist/src/agents/registry.d.ts +15 -0
- package/dist/src/agents/registry.js +58 -2
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/agents/registry.test.js +61 -0
- package/dist/src/agents/registry.test.js.map +1 -1
- 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 +1 -0
- package/dist/src/availability/modelAvailabilityService.js +3 -0
- package/dist/src/availability/modelAvailabilityService.js.map +1 -1
- package/dist/src/availability/modelPolicy.d.ts +8 -1
- package/dist/src/availability/policyCatalog.d.ts +1 -0
- package/dist/src/availability/policyCatalog.js +6 -7
- package/dist/src/availability/policyCatalog.js.map +1 -1
- package/dist/src/availability/policyCatalog.test.js +2 -2
- package/dist/src/availability/policyCatalog.test.js.map +1 -1
- package/dist/src/availability/policyHelpers.d.ts +33 -3
- package/dist/src/availability/policyHelpers.js +113 -13
- package/dist/src/availability/policyHelpers.js.map +1 -1
- package/dist/src/availability/policyHelpers.test.js +133 -13
- package/dist/src/availability/policyHelpers.test.js.map +1 -1
- 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 +2 -1
- 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/oauth2.d.ts +2 -0
- package/dist/src/code_assist/oauth2.js +38 -12
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +113 -6
- package/dist/src/code_assist/oauth2.test.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 +29 -3
- package/dist/src/config/config.js +146 -29
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +203 -9
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.js +21 -0
- package/dist/src/config/defaultModelConfigs.js.map +1 -1
- package/dist/src/config/models.d.ts +33 -11
- package/dist/src/config/models.js +82 -24
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +70 -76
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.js +1 -0
- package/dist/src/confirmation-bus/message-bus.js.map +1 -1
- package/dist/src/confirmation-bus/types.d.ts +4 -0
- package/dist/src/core/baseLlmClient.d.ts +3 -1
- package/dist/src/core/baseLlmClient.js +40 -3
- package/dist/src/core/baseLlmClient.js.map +1 -1
- package/dist/src/core/baseLlmClient.test.js +184 -7
- package/dist/src/core/baseLlmClient.test.js.map +1 -1
- package/dist/src/core/client.js +47 -13
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +133 -6
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.js +5 -3
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +29 -22
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +1 -1
- package/dist/src/core/coreToolScheduler.js +76 -34
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +135 -37
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/geminiChat.js +60 -29
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +236 -188
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/geminiChat_network_retry.test.d.ts +6 -0
- package/dist/src/core/geminiChat_network_retry.test.js +198 -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/nonInteractiveToolExecutor.test.js +4 -5
- package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
- package/dist/src/core/prompts.js +13 -11
- package/dist/src/core/prompts.js.map +1 -1
- package/dist/src/core/prompts.test.js +19 -8
- package/dist/src/core/prompts.test.js.map +1 -1
- package/dist/src/core/sessionHookTriggers.d.ts +28 -0
- package/dist/src/core/sessionHookTriggers.js +68 -0
- package/dist/src/core/sessionHookTriggers.js.map +1 -0
- package/dist/src/core/turn.d.ts +1 -0
- package/dist/src/core/turn.js +1 -1
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/fallback/handler.js +56 -115
- package/dist/src/fallback/handler.js.map +1 -1
- package/dist/src/fallback/handler.test.js +124 -278
- package/dist/src/fallback/handler.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/hooks/hookEventHandler.js +59 -1
- package/dist/src/hooks/hookEventHandler.js.map +1 -1
- package/dist/src/hooks/hookEventHandler.test.js +8 -1
- package/dist/src/hooks/hookEventHandler.test.js.map +1 -1
- package/dist/src/hooks/hookRegistry.d.ts +0 -7
- package/dist/src/hooks/hookRegistry.js +8 -21
- package/dist/src/hooks/hookRegistry.js.map +1 -1
- package/dist/src/hooks/hookRegistry.test.js +2 -7
- package/dist/src/hooks/hookRegistry.test.js.map +1 -1
- package/dist/src/hooks/hookRunner.js +12 -2
- package/dist/src/hooks/hookRunner.js.map +1 -1
- package/dist/src/hooks/hookRunner.test.js +1 -1
- package/dist/src/hooks/hookRunner.test.js.map +1 -1
- package/dist/src/hooks/hookSystem.d.ts +0 -8
- package/dist/src/hooks/hookSystem.js +0 -18
- package/dist/src/hooks/hookSystem.js.map +1 -1
- package/dist/src/hooks/hookSystem.test.js +123 -18
- package/dist/src/hooks/hookSystem.test.js.map +1 -1
- package/dist/src/hooks/index.d.ts +3 -1
- package/dist/src/hooks/index.js +3 -0
- package/dist/src/hooks/index.js.map +1 -1
- package/dist/src/hooks/types.d.ts +1 -2
- package/dist/src/hooks/types.js +0 -1
- package/dist/src/hooks/types.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 +2 -0
- package/dist/src/ide/ide-client.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/index.d.ts +8 -0
- package/dist/src/index.js +8 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/oauth-provider.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 +97 -11
- package/dist/src/policy/config.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/policy-engine.d.ts +10 -1
- package/dist/src/policy/policy-engine.js +79 -5
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +26 -2
- 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 +11 -5
- package/dist/src/policy/toml-loader.js +38 -23
- package/dist/src/policy/toml-loader.js.map +1 -1
- package/dist/src/policy/toml-loader.test.js +28 -7
- package/dist/src/policy/toml-loader.test.js.map +1 -1
- package/dist/src/policy/types.d.ts +15 -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/fallbackStrategy.js +23 -12
- package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.test.js +69 -39
- package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js +4 -3
- 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/services/chatCompressionService.js +15 -1
- package/dist/src/services/chatCompressionService.js.map +1 -1
- package/dist/src/services/chatCompressionService.test.js +2 -0
- 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/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 +5 -0
- package/dist/src/services/gitService.js.map +1 -1
- package/dist/src/services/gitService.test.js +28 -0
- package/dist/src/services/gitService.test.js.map +1 -1
- package/dist/src/services/loopDetectionService.js +2 -2
- package/dist/src/services/loopDetectionService.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/modelConfigService.d.ts +3 -0
- package/dist/src/services/modelConfigService.js +3 -2
- package/dist/src/services/modelConfigService.js.map +1 -1
- package/dist/src/services/modelConfigService.test.js +110 -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.js +28 -22
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +46 -4
- 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 +16 -0
- package/dist/src/telemetry/activity-detector.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +28 -5
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +67 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +1 -0
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +3 -1
- 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 +1 -1
- package/dist/src/telemetry/index.js +1 -1
- package/dist/src/telemetry/index.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +2 -1
- package/dist/src/telemetry/loggers.js +345 -335
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +20 -5
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/sdk.d.ts +9 -2
- package/dist/src/telemetry/sdk.js +143 -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/startupProfiler.js +26 -3
- package/dist/src/telemetry/startupProfiler.js.map +1 -1
- package/dist/src/telemetry/startupProfiler.test.js +49 -7
- package/dist/src/telemetry/startupProfiler.test.js.map +1 -1
- 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.map +1 -1
- package/dist/src/telemetry/types.d.ts +31 -6
- package/dist/src/telemetry/types.js +47 -8
- 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.js.map +1 -1
- package/dist/src/tools/confirmation-policy.test.d.ts +6 -0
- package/dist/src/tools/confirmation-policy.test.js +152 -0
- package/dist/src/tools/confirmation-policy.test.js.map +1 -0
- package/dist/src/tools/edit.js +5 -0
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.d.ts +2 -1
- package/dist/src/tools/mcp-client-manager.js +20 -4
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +13 -10
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +39 -3
- package/dist/src/tools/mcp-client.js +433 -168
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +648 -28
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.js +13 -0
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/mcp-tool.test.js +25 -0
- package/dist/src/tools/mcp-tool.test.js.map +1 -1
- package/dist/src/tools/memoryTool.js +1 -0
- package/dist/src/tools/memoryTool.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.js +1 -1
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/read-many-files.js +6 -4
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +1 -1
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +2 -1
- package/dist/src/tools/shell.js +15 -1
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +2 -1
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/smart-edit.js +5 -0
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/smart-edit.test.js.map +1 -1
- package/dist/src/tools/tool-names.d.ts +2 -0
- package/dist/src/tools/tool-names.js +2 -0
- package/dist/src/tools/tool-names.js.map +1 -1
- package/dist/src/tools/tools.d.ts +19 -0
- package/dist/src/tools/tools.js +29 -8
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.js +17 -4
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +1 -0
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/tools/write-file.js +5 -0
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.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/debugLogger.d.ts +3 -0
- package/dist/src/utils/debugLogger.js +27 -0
- package/dist/src/utils/debugLogger.js.map +1 -1
- package/dist/src/utils/editCorrector.test.js +4 -0
- 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/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/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.test.js +15 -0
- 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/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/nextSpeakerChecker.test.js +4 -0
- package/dist/src/utils/nextSpeakerChecker.test.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 +54 -13
- 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/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 +347 -0
- package/dist/src/utils/shell-permissions.test.js.map +1 -0
- package/dist/src/utils/shell-utils.d.ts +10 -47
- package/dist/src/utils/shell-utils.js +1 -182
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +1 -288
- package/dist/src/utils/shell-utils.test.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/tool-utils.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 +1 -1
|
@@ -8,6 +8,7 @@ import * as http from 'node:http';
|
|
|
8
8
|
import url from 'node:url';
|
|
9
9
|
import crypto from 'node:crypto';
|
|
10
10
|
import * as net from 'node:net';
|
|
11
|
+
import { EventEmitter } from 'node:events';
|
|
11
12
|
import open from 'open';
|
|
12
13
|
import path from 'node:path';
|
|
13
14
|
import { promises as fs } from 'node:fs';
|
|
@@ -22,6 +23,20 @@ import { debugLogger } from '../utils/debugLogger.js';
|
|
|
22
23
|
import { writeToStdout, createWorkingStdio, writeToStderr, } from '../utils/stdio.js';
|
|
23
24
|
import { enableLineWrapping, disableMouseEvents, disableKittyKeyboardProtocol, enterAlternateScreen, exitAlternateScreen, } from '../utils/terminal.js';
|
|
24
25
|
import { coreEvents, CoreEvent } from '../utils/events.js';
|
|
26
|
+
export const authEvents = new EventEmitter();
|
|
27
|
+
async function triggerPostAuthCallbacks(tokens) {
|
|
28
|
+
// Construct a JWTInput object to pass to callbacks, as this is the
|
|
29
|
+
// type expected by the downstream Google Cloud client libraries.
|
|
30
|
+
const jwtInput = {
|
|
31
|
+
client_id: OAUTH_CLIENT_ID,
|
|
32
|
+
client_secret: OAUTH_CLIENT_SECRET,
|
|
33
|
+
refresh_token: tokens.refresh_token ?? undefined, // Ensure null is not passed
|
|
34
|
+
type: 'authorized_user',
|
|
35
|
+
client_email: userAccountManager.getCachedGoogleAccount() ?? undefined,
|
|
36
|
+
};
|
|
37
|
+
// Execute all registered post-authentication callbacks.
|
|
38
|
+
authEvents.emit('post_auth', jwtInput);
|
|
39
|
+
}
|
|
25
40
|
const userAccountManager = new UserAccountManager();
|
|
26
41
|
// OAuth Client ID used to initiate OAuth2Client class.
|
|
27
42
|
const OAUTH_CLIENT_ID = '681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com';
|
|
@@ -86,6 +101,7 @@ async function initOauthClient(authType, config) {
|
|
|
86
101
|
else {
|
|
87
102
|
await cacheCredentials(tokens);
|
|
88
103
|
}
|
|
104
|
+
await triggerPostAuthCallbacks(tokens);
|
|
89
105
|
});
|
|
90
106
|
if (credentials) {
|
|
91
107
|
client.setCredentials(credentials);
|
|
@@ -105,6 +121,7 @@ async function initOauthClient(authType, config) {
|
|
|
105
121
|
}
|
|
106
122
|
}
|
|
107
123
|
debugLogger.log('Loaded cached credentials.');
|
|
124
|
+
await triggerPostAuthCallbacks(credentials);
|
|
108
125
|
return client;
|
|
109
126
|
}
|
|
110
127
|
}
|
|
@@ -161,6 +178,14 @@ async function initOauthClient(authType, config) {
|
|
|
161
178
|
writeToStderr('Failed to authenticate with user code.\n');
|
|
162
179
|
throw new FatalAuthenticationError('Failed to authenticate with user code.');
|
|
163
180
|
}
|
|
181
|
+
// Retrieve and cache Google Account ID after successful user code auth
|
|
182
|
+
try {
|
|
183
|
+
await fetchAndCacheUserInfo(client);
|
|
184
|
+
}
|
|
185
|
+
catch (error) {
|
|
186
|
+
debugLogger.warn('Failed to retrieve Google Account ID during authentication:', getErrorMessage(error));
|
|
187
|
+
}
|
|
188
|
+
await triggerPostAuthCallbacks(client.credentials);
|
|
164
189
|
}
|
|
165
190
|
else {
|
|
166
191
|
const webLogin = await authWithWeb(client);
|
|
@@ -212,6 +237,7 @@ async function initOauthClient(authType, config) {
|
|
|
212
237
|
severity: 'info',
|
|
213
238
|
message: 'Authentication succeeded\n',
|
|
214
239
|
});
|
|
240
|
+
await triggerPostAuthCallbacks(client.credentials);
|
|
215
241
|
}
|
|
216
242
|
return client;
|
|
217
243
|
}
|
|
@@ -420,18 +446,6 @@ async function fetchCachedCredentials() {
|
|
|
420
446
|
}
|
|
421
447
|
return null;
|
|
422
448
|
}
|
|
423
|
-
async function cacheCredentials(credentials) {
|
|
424
|
-
const filePath = Storage.getOAuthCredsPath();
|
|
425
|
-
await fs.mkdir(path.dirname(filePath), { recursive: true });
|
|
426
|
-
const credString = JSON.stringify(credentials, null, 2);
|
|
427
|
-
await fs.writeFile(filePath, credString, { mode: 0o600 });
|
|
428
|
-
try {
|
|
429
|
-
await fs.chmod(filePath, 0o600);
|
|
430
|
-
}
|
|
431
|
-
catch {
|
|
432
|
-
/* empty */
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
449
|
export function clearOauthClientCache() {
|
|
436
450
|
oauthClientPromises.clear();
|
|
437
451
|
}
|
|
@@ -479,4 +493,16 @@ async function fetchAndCacheUserInfo(client) {
|
|
|
479
493
|
export function resetOauthClientForTesting() {
|
|
480
494
|
oauthClientPromises.clear();
|
|
481
495
|
}
|
|
496
|
+
async function cacheCredentials(credentials) {
|
|
497
|
+
const filePath = Storage.getOAuthCredsPath();
|
|
498
|
+
await fs.mkdir(path.dirname(filePath), { recursive: true });
|
|
499
|
+
const credString = JSON.stringify(credentials, null, 2);
|
|
500
|
+
await fs.writeFile(filePath, credString, { mode: 0o600 });
|
|
501
|
+
try {
|
|
502
|
+
await fs.chmod(filePath, 0o600);
|
|
503
|
+
}
|
|
504
|
+
catch {
|
|
505
|
+
/* empty */
|
|
506
|
+
}
|
|
507
|
+
}
|
|
482
508
|
//# sourceMappingURL=oauth2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2.js","sourceRoot":"","sources":["../../../src/code_assist/oauth2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oauth2.js","sourceRoot":"","sources":["../../../src/code_assist/oauth2.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
7
|
-
import { getOauthClient, resetOauthClientForTesting, clearCachedCredentialFile, clearOauthClientCache, } from './oauth2.js';
|
|
7
|
+
import { getOauthClient, resetOauthClientForTesting, clearCachedCredentialFile, clearOauthClientCache, authEvents, } from './oauth2.js';
|
|
8
8
|
import { UserAccountManager } from '../utils/userAccountManager.js';
|
|
9
9
|
import { OAuth2Client, Compute, GoogleAuth } from 'google-auth-library';
|
|
10
10
|
import * as fs from 'node:fs';
|
|
@@ -89,13 +89,18 @@ describe('oauth2', () => {
|
|
|
89
89
|
const mockGetAccessToken = vi
|
|
90
90
|
.fn()
|
|
91
91
|
.mockResolvedValue({ token: 'mock-access-token' });
|
|
92
|
+
let tokensListener;
|
|
92
93
|
const mockOAuth2Client = {
|
|
93
94
|
generateAuthUrl: mockGenerateAuthUrl,
|
|
94
95
|
getToken: mockGetToken,
|
|
95
96
|
setCredentials: mockSetCredentials,
|
|
96
97
|
getAccessToken: mockGetAccessToken,
|
|
97
98
|
credentials: mockTokens,
|
|
98
|
-
on: vi.fn()
|
|
99
|
+
on: vi.fn((event, listener) => {
|
|
100
|
+
if (event === 'tokens') {
|
|
101
|
+
tokensListener = listener;
|
|
102
|
+
}
|
|
103
|
+
}),
|
|
99
104
|
};
|
|
100
105
|
vi.mocked(OAuth2Client).mockImplementation(() => mockOAuth2Client);
|
|
101
106
|
vi.spyOn(crypto, 'randomBytes').mockReturnValue(mockState);
|
|
@@ -150,6 +155,10 @@ describe('oauth2', () => {
|
|
|
150
155
|
redirect_uri: `http://localhost:${capturedPort}/oauth2callback`,
|
|
151
156
|
});
|
|
152
157
|
expect(mockSetCredentials).toHaveBeenCalledWith(mockTokens);
|
|
158
|
+
// Manually trigger the 'tokens' event listener
|
|
159
|
+
if (tokensListener) {
|
|
160
|
+
await tokensListener(mockTokens);
|
|
161
|
+
}
|
|
153
162
|
// Verify Google Account was cached
|
|
154
163
|
const googleAccountPath = path.join(tempHomeDir, CELL_DIR, 'google_accounts.json');
|
|
155
164
|
expect(fs.existsSync(googleAccountPath)).toBe(true);
|
|
@@ -162,6 +171,35 @@ describe('oauth2', () => {
|
|
|
162
171
|
const userAccountManager = new UserAccountManager();
|
|
163
172
|
expect(userAccountManager.getCachedGoogleAccount()).toBe('test-google-account@gmail.com');
|
|
164
173
|
});
|
|
174
|
+
it('should clear credentials file', async () => {
|
|
175
|
+
// Setup initial state with files
|
|
176
|
+
const credsPath = path.join(tempHomeDir, CELL_DIR, 'oauth_creds.json');
|
|
177
|
+
await fs.promises.mkdir(path.dirname(credsPath), { recursive: true });
|
|
178
|
+
await fs.promises.writeFile(credsPath, '{}');
|
|
179
|
+
await clearCachedCredentialFile();
|
|
180
|
+
expect(fs.existsSync(credsPath)).toBe(false);
|
|
181
|
+
});
|
|
182
|
+
it('should emit post_auth event when loading cached credentials', async () => {
|
|
183
|
+
const cachedCreds = { refresh_token: 'cached-token' };
|
|
184
|
+
const credsPath = path.join(tempHomeDir, CELL_DIR, 'oauth_creds.json');
|
|
185
|
+
await fs.promises.mkdir(path.dirname(credsPath), { recursive: true });
|
|
186
|
+
await fs.promises.writeFile(credsPath, JSON.stringify(cachedCreds));
|
|
187
|
+
const mockClient = {
|
|
188
|
+
setCredentials: vi.fn(),
|
|
189
|
+
getAccessToken: vi.fn().mockResolvedValue({ token: 'test-token' }),
|
|
190
|
+
getTokenInfo: vi.fn().mockResolvedValue({}),
|
|
191
|
+
on: vi.fn(),
|
|
192
|
+
};
|
|
193
|
+
vi.mocked(OAuth2Client).mockImplementation(() => mockClient);
|
|
194
|
+
const eventPromise = new Promise((resolve) => {
|
|
195
|
+
authEvents.once('post_auth', (creds) => {
|
|
196
|
+
expect(creds.refresh_token).toBe('cached-token');
|
|
197
|
+
resolve();
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
await getOauthClient(AuthType.LOGIN_WITH_GOOGLE, mockConfig);
|
|
201
|
+
await eventPromise;
|
|
202
|
+
});
|
|
165
203
|
it('should perform login with user code', async () => {
|
|
166
204
|
const mockConfigWithNoBrowser = {
|
|
167
205
|
getNoBrowser: () => true,
|
|
@@ -180,17 +218,19 @@ describe('oauth2', () => {
|
|
|
180
218
|
};
|
|
181
219
|
const mockGenerateAuthUrl = vi.fn().mockReturnValue(mockAuthUrl);
|
|
182
220
|
const mockGetToken = vi.fn().mockResolvedValue({ tokens: mockTokens });
|
|
183
|
-
const mockSetCredentials = vi.fn();
|
|
184
221
|
const mockGenerateCodeVerifierAsync = vi
|
|
185
222
|
.fn()
|
|
186
223
|
.mockResolvedValue(mockCodeVerifier);
|
|
187
224
|
const mockOAuth2Client = {
|
|
188
225
|
generateAuthUrl: mockGenerateAuthUrl,
|
|
189
226
|
getToken: mockGetToken,
|
|
190
|
-
setCredentials: mockSetCredentials,
|
|
191
227
|
generateCodeVerifierAsync: mockGenerateCodeVerifierAsync,
|
|
192
228
|
on: vi.fn(),
|
|
229
|
+
credentials: {},
|
|
193
230
|
};
|
|
231
|
+
mockOAuth2Client.setCredentials = vi.fn().mockImplementation((creds) => {
|
|
232
|
+
mockOAuth2Client.credentials = creds;
|
|
233
|
+
});
|
|
194
234
|
vi.mocked(OAuth2Client).mockImplementation(() => mockOAuth2Client);
|
|
195
235
|
const mockReadline = {
|
|
196
236
|
question: vi.fn((_query, callback) => callback(mockCode)),
|
|
@@ -210,7 +250,69 @@ describe('oauth2', () => {
|
|
|
210
250
|
codeVerifier: mockCodeVerifier.codeVerifier,
|
|
211
251
|
redirect_uri: 'https://codeassist.google.com/authcode',
|
|
212
252
|
});
|
|
213
|
-
expect(
|
|
253
|
+
expect(mockOAuth2Client.setCredentials).toHaveBeenCalledWith(mockTokens);
|
|
254
|
+
});
|
|
255
|
+
it('should cache Google Account when logging in with user code', async () => {
|
|
256
|
+
const mockConfigWithNoBrowser = {
|
|
257
|
+
getNoBrowser: () => true,
|
|
258
|
+
getProxy: () => 'http://test.proxy.com:8080',
|
|
259
|
+
isBrowserLaunchSuppressed: () => true,
|
|
260
|
+
};
|
|
261
|
+
const mockCodeVerifier = {
|
|
262
|
+
codeChallenge: 'test-challenge',
|
|
263
|
+
codeVerifier: 'test-verifier',
|
|
264
|
+
};
|
|
265
|
+
const mockAuthUrl = 'https://example.com/auth-user-code';
|
|
266
|
+
const mockCode = 'test-user-code';
|
|
267
|
+
const mockTokens = {
|
|
268
|
+
access_token: 'test-access-token-user-code',
|
|
269
|
+
refresh_token: 'test-refresh-token-user-code',
|
|
270
|
+
};
|
|
271
|
+
const mockGenerateAuthUrl = vi.fn().mockReturnValue(mockAuthUrl);
|
|
272
|
+
const mockGetToken = vi.fn().mockResolvedValue({ tokens: mockTokens });
|
|
273
|
+
const mockGenerateCodeVerifierAsync = vi
|
|
274
|
+
.fn()
|
|
275
|
+
.mockResolvedValue(mockCodeVerifier);
|
|
276
|
+
const mockGetAccessToken = vi
|
|
277
|
+
.fn()
|
|
278
|
+
.mockResolvedValue({ token: 'test-access-token-user-code' });
|
|
279
|
+
const mockOAuth2Client = {
|
|
280
|
+
generateAuthUrl: mockGenerateAuthUrl,
|
|
281
|
+
getToken: mockGetToken,
|
|
282
|
+
generateCodeVerifierAsync: mockGenerateCodeVerifierAsync,
|
|
283
|
+
getAccessToken: mockGetAccessToken,
|
|
284
|
+
on: vi.fn(),
|
|
285
|
+
credentials: {},
|
|
286
|
+
};
|
|
287
|
+
mockOAuth2Client.setCredentials = vi.fn().mockImplementation((creds) => {
|
|
288
|
+
mockOAuth2Client.credentials = creds;
|
|
289
|
+
});
|
|
290
|
+
vi.mocked(OAuth2Client).mockImplementation(() => mockOAuth2Client);
|
|
291
|
+
vi.spyOn(crypto, 'randomBytes').mockReturnValue('test-state');
|
|
292
|
+
const mockReadline = {
|
|
293
|
+
question: vi.fn((_query, callback) => callback(mockCode)),
|
|
294
|
+
close: vi.fn(),
|
|
295
|
+
on: vi.fn(),
|
|
296
|
+
};
|
|
297
|
+
readline.createInterface.mockReturnValue(mockReadline);
|
|
298
|
+
// Mock User Info API
|
|
299
|
+
vi.mocked(global.fetch).mockResolvedValue({
|
|
300
|
+
ok: true,
|
|
301
|
+
json: vi
|
|
302
|
+
.fn()
|
|
303
|
+
.mockResolvedValue({ email: 'test-user-code-account@gmail.com' }),
|
|
304
|
+
});
|
|
305
|
+
await getOauthClient(AuthType.LOGIN_WITH_GOOGLE, mockConfigWithNoBrowser);
|
|
306
|
+
// Verify Google Account was cached
|
|
307
|
+
const googleAccountPath = path.join(tempHomeDir, CELL_DIR, 'google_accounts.json');
|
|
308
|
+
expect(fs.existsSync(googleAccountPath)).toBe(true);
|
|
309
|
+
if (fs.existsSync(googleAccountPath)) {
|
|
310
|
+
const cachedGoogleAccount = fs.readFileSync(googleAccountPath, 'utf-8');
|
|
311
|
+
expect(JSON.parse(cachedGoogleAccount)).toEqual({
|
|
312
|
+
active: 'test-user-code-account@gmail.com',
|
|
313
|
+
old: [],
|
|
314
|
+
});
|
|
315
|
+
}
|
|
214
316
|
});
|
|
215
317
|
describe('in Cloud Shell', () => {
|
|
216
318
|
const mockGetAccessToken = vi.fn();
|
|
@@ -599,12 +701,17 @@ describe('oauth2', () => {
|
|
|
599
701
|
const mockOAuth2Client = {
|
|
600
702
|
generateAuthUrl: vi.fn().mockReturnValue(mockAuthUrl),
|
|
601
703
|
getToken: vi.fn().mockResolvedValue({ tokens: mockTokens }),
|
|
602
|
-
setCredentials: vi.fn(),
|
|
603
704
|
getAccessToken: vi
|
|
604
705
|
.fn()
|
|
605
706
|
.mockResolvedValue({ token: 'test-access-token' }),
|
|
606
707
|
on: vi.fn(),
|
|
708
|
+
credentials: {},
|
|
607
709
|
};
|
|
710
|
+
mockOAuth2Client.setCredentials = vi
|
|
711
|
+
.fn()
|
|
712
|
+
.mockImplementation((creds) => {
|
|
713
|
+
mockOAuth2Client.credentials = creds;
|
|
714
|
+
});
|
|
608
715
|
vi.mocked(OAuth2Client).mockImplementation(() => mockOAuth2Client);
|
|
609
716
|
vi.spyOn(crypto, 'randomBytes').mockReturnValue(mockState);
|
|
610
717
|
vi.mocked(open).mockImplementation(async () => ({ on: vi.fn() }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2.test.js","sourceRoot":"","sources":["../../../src/code_assist/oauth2.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oauth2.test.js","sourceRoot":"","sources":["../../../src/code_assist/oauth2.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
export function performInit(doesGeminiMdExist) {
|
|
7
|
+
if (doesGeminiMdExist) {
|
|
8
|
+
return {
|
|
9
|
+
type: 'message',
|
|
10
|
+
messageType: 'info',
|
|
11
|
+
content: 'A GEMINI.md file already exists in this directory. No changes were made.',
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
return {
|
|
15
|
+
type: 'submit_prompt',
|
|
16
|
+
content: `
|
|
17
|
+
You are an AI agent that brings the power of Gemini directly into the terminal. Your task is to analyze the current directory and generate a comprehensive GEMINI.md file to be used as instructional context for future interactions.
|
|
18
|
+
|
|
19
|
+
**Analysis Process:**
|
|
20
|
+
|
|
21
|
+
1. **Initial Exploration:**
|
|
22
|
+
* Start by listing the files and directories to get a high-level overview of the structure.
|
|
23
|
+
* Read the README file (e.g., \`README.md\`, \`README.txt\`) if it exists. This is often the best place to start.
|
|
24
|
+
|
|
25
|
+
2. **Iterative Deep Dive (up to 10 files):**
|
|
26
|
+
* Based on your initial findings, select a few files that seem most important (e.g., configuration files, main source files, documentation).
|
|
27
|
+
* Read them. As you learn more, refine your understanding and decide which files to read next. You don't need to decide all 10 files at once. Let your discoveries guide your exploration.
|
|
28
|
+
|
|
29
|
+
3. **Identify Project Type:**
|
|
30
|
+
* **Code Project:** Look for clues like \`package.json\`, \`requirements.txt\`, \`pom.xml\`, \`go.mod\`, \`Cargo.toml\`, \`build.gradle\`, or a \`src\` directory. If you find them, this is likely a software project.
|
|
31
|
+
* **Non-Code Project:** If you don't find code-related files, this might be a directory for documentation, research papers, notes, or something else.
|
|
32
|
+
|
|
33
|
+
**GEMINI.md Content Generation:**
|
|
34
|
+
|
|
35
|
+
**For a Code Project:**
|
|
36
|
+
|
|
37
|
+
* **Project Overview:** Write a clear and concise summary of the project's purpose, main technologies, and architecture.
|
|
38
|
+
* **Building and Running:** Document the key commands for building, running, and testing the project. Infer these from the files you've read (e.g., \`scripts\` in \`package.json\`, \`Makefile\`, etc.). If you can't find explicit commands, provide a placeholder with a TODO.
|
|
39
|
+
* **Development Conventions:** Describe any coding styles, testing practices, or contribution guidelines you can infer from the codebase.
|
|
40
|
+
|
|
41
|
+
**For a Non-Code Project:**
|
|
42
|
+
|
|
43
|
+
* **Directory Overview:** Describe the purpose and contents of the directory. What is it for? What kind of information does it hold?
|
|
44
|
+
* **Key Files:** List the most important files and briefly explain what they contain.
|
|
45
|
+
* **Usage:** Explain how the contents of this directory are intended to be used.
|
|
46
|
+
|
|
47
|
+
**Final Output:**
|
|
48
|
+
|
|
49
|
+
Write the complete content to the \`GEMINI.md\` file. The output must be well-formatted Markdown.
|
|
50
|
+
`,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,UAAU,WAAW,CAAC,iBAA0B;IACpD,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,MAAM;YACnB,OAAO,EACL,0EAA0E;SAC7E,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCZ;KACE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { expect, describe, it } from 'vitest';
|
|
7
|
+
import { performInit } from './init.js';
|
|
8
|
+
describe('performInit', () => {
|
|
9
|
+
it('returns info if GEMINI.md already exists', () => {
|
|
10
|
+
const result = performInit(true);
|
|
11
|
+
expect(result.type).toBe('message');
|
|
12
|
+
if (result.type === 'message') {
|
|
13
|
+
expect(result.messageType).toBe('info');
|
|
14
|
+
expect(result.content).toContain('already exists');
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
it('returns submit_prompt if GEMINI.md does not exist', () => {
|
|
18
|
+
const result = performInit(false);
|
|
19
|
+
expect(result.type).toBe('submit_prompt');
|
|
20
|
+
if (result.type === 'submit_prompt') {
|
|
21
|
+
expect(result.content).toContain('You are an AI agent');
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=init.test.js.map
|