erosolar-cli 1.0.2 → 1.0.3
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/Agents.md +411 -200
- package/README.md +77 -44
- package/dist/adapters/browser/index.d.ts +12 -0
- package/dist/adapters/browser/index.d.ts.map +1 -0
- package/dist/adapters/browser/index.js +1 -0
- package/dist/adapters/browser/index.js.map +1 -0
- package/dist/adapters/node/index.d.ts +17 -0
- package/dist/adapters/node/index.d.ts.map +1 -0
- package/dist/adapters/node/index.js +1 -0
- package/dist/adapters/node/index.js.map +1 -0
- package/dist/adapters/remote/index.d.ts +13 -0
- package/dist/adapters/remote/index.d.ts.map +1 -0
- package/dist/adapters/remote/index.js +1 -0
- package/dist/adapters/remote/index.js.map +1 -0
- package/dist/adapters/types.d.ts +14 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +1 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/bin/erosolar.d.ts +3 -0
- package/dist/bin/erosolar.d.ts.map +1 -0
- package/dist/bin/erosolar.js +1 -0
- package/dist/bin/erosolar.js.map +1 -0
- package/dist/capabilities/bashCapability.d.ts +13 -0
- package/dist/capabilities/bashCapability.d.ts.map +1 -0
- package/dist/capabilities/bashCapability.js +1 -0
- package/dist/capabilities/bashCapability.js.map +1 -0
- package/dist/capabilities/codeAnalysisCapability.d.ts +13 -0
- package/dist/capabilities/codeAnalysisCapability.d.ts.map +1 -0
- package/dist/capabilities/codeAnalysisCapability.js +24 -0
- package/dist/capabilities/codeAnalysisCapability.js.map +1 -0
- package/dist/capabilities/codeGenerationCapability.d.ts +13 -0
- package/dist/capabilities/codeGenerationCapability.d.ts.map +1 -0
- package/dist/capabilities/codeGenerationCapability.js +25 -0
- package/dist/capabilities/codeGenerationCapability.js.map +1 -0
- package/dist/capabilities/codeQualityCapability.d.ts +13 -0
- package/dist/capabilities/codeQualityCapability.d.ts.map +1 -0
- package/dist/capabilities/codeQualityCapability.js +25 -0
- package/dist/capabilities/codeQualityCapability.js.map +1 -0
- package/dist/capabilities/dependencySecurityCapability.d.ts +13 -0
- package/dist/capabilities/dependencySecurityCapability.d.ts.map +1 -0
- package/dist/capabilities/dependencySecurityCapability.js +24 -0
- package/dist/capabilities/dependencySecurityCapability.js.map +1 -0
- package/dist/capabilities/devCapability.d.ts +13 -0
- package/dist/capabilities/devCapability.d.ts.map +1 -0
- package/dist/capabilities/devCapability.js +24 -0
- package/dist/capabilities/devCapability.js.map +1 -0
- package/dist/capabilities/filesystemCapability.d.ts +13 -0
- package/dist/capabilities/filesystemCapability.d.ts.map +1 -0
- package/dist/capabilities/filesystemCapability.js +1 -0
- package/dist/capabilities/filesystemCapability.js.map +1 -0
- package/dist/capabilities/index.d.ts +10 -0
- package/dist/capabilities/index.d.ts.map +1 -0
- package/dist/capabilities/index.js +7 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/refactoringCapability.d.ts +13 -0
- package/dist/capabilities/refactoringCapability.d.ts.map +1 -0
- package/dist/capabilities/refactoringCapability.js +25 -0
- package/dist/capabilities/refactoringCapability.js.map +1 -0
- package/dist/capabilities/repoChecksCapability.d.ts +10 -0
- package/dist/capabilities/repoChecksCapability.d.ts.map +1 -0
- package/dist/capabilities/repoChecksCapability.js +24 -0
- package/dist/capabilities/repoChecksCapability.js.map +1 -0
- package/dist/capabilities/searchCapability.d.ts +13 -0
- package/dist/capabilities/searchCapability.d.ts.map +1 -0
- package/dist/capabilities/searchCapability.js +1 -0
- package/dist/capabilities/searchCapability.js.map +1 -0
- package/dist/capabilities/testingCapability.d.ts +13 -0
- package/dist/capabilities/testingCapability.d.ts.map +1 -0
- package/dist/capabilities/testingCapability.js +25 -0
- package/dist/capabilities/testingCapability.js.map +1 -0
- package/dist/capabilities/toolManifest.d.ts +3 -0
- package/dist/capabilities/toolManifest.d.ts.map +1 -0
- package/dist/capabilities/toolManifest.js +160 -0
- package/dist/capabilities/toolManifest.js.map +1 -0
- package/dist/capabilities/toolRegistry.d.ts +22 -0
- package/dist/capabilities/toolRegistry.d.ts.map +1 -0
- package/dist/capabilities/toolRegistry.js +49 -32
- package/dist/capabilities/toolRegistry.js.map +1 -0
- package/dist/config.d.ts +28 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +98 -23
- package/dist/config.js.map +1 -0
- package/dist/contracts/agent-profiles.schema.json +43 -0
- package/dist/contracts/agent-schema.snapshot.json +437 -0
- package/dist/contracts/schemas/agent-profile.schema.json +157 -0
- package/dist/contracts/schemas/agent-rules.schema.json +238 -0
- package/dist/contracts/schemas/agent.schema.json +89 -0
- package/dist/contracts/schemas/tool-selection.schema.json +174 -0
- package/dist/contracts/tools.schema.json +100 -0
- package/dist/contracts/v1/agent.d.ts +147 -0
- package/dist/contracts/v1/agent.d.ts.map +1 -0
- package/dist/contracts/v1/agent.js +1 -0
- package/dist/contracts/v1/agent.js.map +1 -0
- package/dist/contracts/v1/agentProfileManifest.d.ts +52 -0
- package/dist/contracts/v1/agentProfileManifest.d.ts.map +1 -0
- package/dist/contracts/v1/agentProfileManifest.js +9 -0
- package/dist/contracts/v1/agentProfileManifest.js.map +1 -0
- package/dist/contracts/v1/agentRules.d.ts +60 -0
- package/dist/contracts/v1/agentRules.d.ts.map +1 -0
- package/dist/contracts/v1/agentRules.js +10 -0
- package/dist/contracts/v1/agentRules.js.map +1 -0
- package/dist/contracts/v1/provider.d.ts +149 -0
- package/dist/contracts/v1/provider.d.ts.map +1 -0
- package/dist/contracts/v1/provider.js +1 -0
- package/dist/contracts/v1/provider.js.map +1 -0
- package/dist/contracts/v1/tool.d.ts +136 -0
- package/dist/contracts/v1/tool.d.ts.map +1 -0
- package/dist/contracts/v1/tool.js +1 -0
- package/dist/contracts/v1/tool.js.map +1 -0
- package/dist/contracts/v1/toolAccess.d.ts +43 -0
- package/dist/contracts/v1/toolAccess.d.ts.map +1 -0
- package/dist/contracts/v1/toolAccess.js +9 -0
- package/dist/contracts/v1/toolAccess.js.map +1 -0
- package/dist/core/agent.d.ts +35 -0
- package/dist/core/agent.d.ts.map +1 -0
- package/dist/core/agent.js +17 -9
- package/dist/core/agent.js.map +1 -0
- package/dist/core/agentProfileManifest.d.ts +3 -0
- package/dist/core/agentProfileManifest.d.ts.map +1 -0
- package/dist/core/agentProfileManifest.js +176 -0
- package/dist/core/agentProfileManifest.js.map +1 -0
- package/dist/core/agentProfiles.d.ts +22 -0
- package/dist/core/agentProfiles.d.ts.map +1 -0
- package/dist/core/agentProfiles.js +1 -0
- package/dist/core/agentProfiles.js.map +1 -0
- package/dist/core/agentRulebook.d.ts +10 -0
- package/dist/core/agentRulebook.d.ts.map +1 -0
- package/dist/core/agentRulebook.js +153 -0
- package/dist/core/agentRulebook.js.map +1 -0
- package/dist/core/agentSchemaSnapshot.d.ts +14 -0
- package/dist/core/agentSchemaSnapshot.d.ts.map +1 -0
- package/dist/core/agentSchemaSnapshot.js +38 -0
- package/dist/core/agentSchemaSnapshot.js.map +1 -0
- package/dist/core/agentsDocument.d.ts +4 -0
- package/dist/core/agentsDocument.d.ts.map +1 -0
- package/dist/core/agentsDocument.js +70 -0
- package/dist/core/agentsDocument.js.map +1 -0
- package/dist/core/contextWindow.d.ts +6 -0
- package/dist/core/contextWindow.d.ts.map +1 -0
- package/dist/core/contextWindow.js +1 -0
- package/dist/core/contextWindow.js.map +1 -0
- package/dist/core/errors/apiKeyErrors.d.ts +11 -0
- package/dist/core/errors/apiKeyErrors.d.ts.map +1 -0
- package/dist/core/errors/apiKeyErrors.js +1 -0
- package/dist/core/errors/apiKeyErrors.js.map +1 -0
- package/dist/core/errors.d.ts +4 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +33 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/preferences.d.ts +21 -0
- package/dist/core/preferences.d.ts.map +1 -0
- package/dist/core/preferences.js +13 -7
- package/dist/core/preferences.js.map +1 -0
- package/dist/core/schemaValidator.d.ts +6 -0
- package/dist/core/schemaValidator.d.ts.map +1 -0
- package/dist/core/schemaValidator.js +93 -0
- package/dist/core/schemaValidator.js.map +1 -0
- package/dist/core/secretStore.d.ts +20 -0
- package/dist/core/secretStore.d.ts.map +1 -0
- package/dist/core/secretStore.js +3 -8
- package/dist/core/secretStore.js.map +1 -0
- package/dist/core/toolRuntime.d.ts +48 -0
- package/dist/core/toolRuntime.d.ts.map +1 -0
- package/dist/core/toolRuntime.js +34 -11
- package/dist/core/toolRuntime.js.map +1 -0
- package/dist/core/types.d.ts +86 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +1 -0
- package/dist/core/types.js.map +1 -0
- package/dist/plugins/providers/anthropic/index.d.ts +2 -0
- package/dist/plugins/providers/anthropic/index.d.ts.map +1 -0
- package/dist/plugins/providers/anthropic/index.js +6 -4
- package/dist/plugins/providers/anthropic/index.js.map +1 -0
- package/dist/plugins/providers/deepseek/index.d.ts +2 -0
- package/dist/plugins/providers/deepseek/index.d.ts.map +1 -0
- package/dist/plugins/providers/deepseek/index.js +1 -0
- package/dist/plugins/providers/deepseek/index.js.map +1 -0
- package/dist/plugins/providers/google/index.d.ts +2 -0
- package/dist/plugins/providers/google/index.d.ts.map +1 -0
- package/dist/plugins/providers/google/index.js +6 -4
- package/dist/plugins/providers/google/index.js.map +1 -0
- package/dist/plugins/providers/index.d.ts +2 -0
- package/dist/plugins/providers/index.d.ts.map +1 -0
- package/dist/plugins/providers/index.js +1 -0
- package/dist/plugins/providers/index.js.map +1 -0
- package/dist/plugins/providers/openai/index.d.ts +3 -0
- package/dist/plugins/providers/openai/index.d.ts.map +1 -0
- package/dist/plugins/providers/openai/index.js +6 -4
- package/dist/plugins/providers/openai/index.js.map +1 -0
- package/dist/plugins/providers/xai/index.d.ts +2 -0
- package/dist/plugins/providers/xai/index.d.ts.map +1 -0
- package/dist/plugins/providers/xai/index.js +1 -0
- package/dist/plugins/providers/xai/index.js.map +1 -0
- package/dist/plugins/tools/bash/localBashPlugin.d.ts +3 -0
- package/dist/plugins/tools/bash/localBashPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/bash/localBashPlugin.js +1 -0
- package/dist/plugins/tools/bash/localBashPlugin.js.map +1 -0
- package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts +3 -0
- package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/checks/localRepoChecksPlugin.js +14 -0
- package/dist/plugins/tools/checks/localRepoChecksPlugin.js.map +1 -0
- package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts +3 -0
- package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js +14 -0
- package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js.map +1 -0
- package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts +3 -0
- package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/codeQuality/codeQualityPlugin.js +14 -0
- package/dist/plugins/tools/codeQuality/codeQualityPlugin.js.map +1 -0
- package/dist/plugins/tools/dependency/dependencyPlugin.d.ts +3 -0
- package/dist/plugins/tools/dependency/dependencyPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/dependency/dependencyPlugin.js +12 -0
- package/dist/plugins/tools/dependency/dependencyPlugin.js.map +1 -0
- package/dist/plugins/tools/development/devPlugin.d.ts +3 -0
- package/dist/plugins/tools/development/devPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/development/devPlugin.js +14 -0
- package/dist/plugins/tools/development/devPlugin.js.map +1 -0
- package/dist/plugins/tools/filesystem/localFilesystemPlugin.d.ts +3 -0
- package/dist/plugins/tools/filesystem/localFilesystemPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/filesystem/localFilesystemPlugin.js +1 -0
- package/dist/plugins/tools/filesystem/localFilesystemPlugin.js.map +1 -0
- package/dist/plugins/tools/index.d.ts +3 -0
- package/dist/plugins/tools/index.d.ts.map +1 -0
- package/dist/plugins/tools/index.js +1 -0
- package/dist/plugins/tools/index.js.map +1 -0
- package/dist/plugins/tools/nodeDefaults.d.ts +2 -0
- package/dist/plugins/tools/nodeDefaults.d.ts.map +1 -0
- package/dist/plugins/tools/nodeDefaults.js +15 -2
- package/dist/plugins/tools/nodeDefaults.js.map +1 -0
- package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts +3 -0
- package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/refactoring/refactoringPlugin.js +12 -0
- package/dist/plugins/tools/refactoring/refactoringPlugin.js.map +1 -0
- package/dist/plugins/tools/registry.d.ts +22 -0
- package/dist/plugins/tools/registry.d.ts.map +1 -0
- package/dist/plugins/tools/registry.js +1 -0
- package/dist/plugins/tools/registry.js.map +1 -0
- package/dist/plugins/tools/search/localSearchPlugin.d.ts +3 -0
- package/dist/plugins/tools/search/localSearchPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/search/localSearchPlugin.js +1 -0
- package/dist/plugins/tools/search/localSearchPlugin.js.map +1 -0
- package/dist/plugins/tools/testing/testingPlugin.d.ts +3 -0
- package/dist/plugins/tools/testing/testingPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/testing/testingPlugin.js +12 -0
- package/dist/plugins/tools/testing/testingPlugin.js.map +1 -0
- package/dist/providers/anthropicProvider.d.ts +23 -0
- package/dist/providers/anthropicProvider.d.ts.map +1 -0
- package/dist/providers/anthropicProvider.js +3 -2
- package/dist/providers/anthropicProvider.js.map +1 -0
- package/dist/providers/googleProvider.d.ts +19 -0
- package/dist/providers/googleProvider.d.ts.map +1 -0
- package/dist/providers/googleProvider.js +1 -1
- package/dist/providers/googleProvider.js.map +1 -0
- package/dist/providers/openaiChatCompletionsProvider.d.ts +16 -0
- package/dist/providers/openaiChatCompletionsProvider.d.ts.map +1 -0
- package/dist/providers/openaiChatCompletionsProvider.js +1 -0
- package/dist/providers/openaiChatCompletionsProvider.js.map +1 -0
- package/dist/providers/openaiResponsesProvider.d.ts +20 -0
- package/dist/providers/openaiResponsesProvider.d.ts.map +1 -0
- package/dist/providers/openaiResponsesProvider.js +1 -0
- package/dist/providers/openaiResponsesProvider.js.map +1 -0
- package/dist/providers/providerFactory.d.ts +18 -0
- package/dist/providers/providerFactory.d.ts.map +1 -0
- package/dist/providers/providerFactory.js +5 -1
- package/dist/providers/providerFactory.js.map +1 -0
- package/dist/runtime/agentHost.d.ts +61 -0
- package/dist/runtime/agentHost.d.ts.map +1 -0
- package/dist/runtime/agentHost.js +5 -1
- package/dist/runtime/agentHost.js.map +1 -0
- package/dist/runtime/agentSession.d.ts +32 -0
- package/dist/runtime/agentSession.d.ts.map +1 -0
- package/dist/runtime/agentSession.js +23 -1
- package/dist/runtime/agentSession.js.map +1 -0
- package/dist/runtime/browser.d.ts +7 -0
- package/dist/runtime/browser.d.ts.map +1 -0
- package/dist/runtime/browser.js +1 -0
- package/dist/runtime/browser.js.map +1 -0
- package/dist/runtime/cloud.d.ts +7 -0
- package/dist/runtime/cloud.d.ts.map +1 -0
- package/dist/runtime/cloud.js +1 -0
- package/dist/runtime/cloud.js.map +1 -0
- package/dist/runtime/node.d.ts +8 -0
- package/dist/runtime/node.d.ts.map +1 -0
- package/dist/runtime/node.js +1 -0
- package/dist/runtime/node.js.map +1 -0
- package/dist/runtime/universal.d.ts +21 -0
- package/dist/runtime/universal.d.ts.map +1 -0
- package/dist/runtime/universal.js +1 -0
- package/dist/runtime/universal.js.map +1 -0
- package/dist/shell/bracketedPasteManager.d.ts +23 -0
- package/dist/shell/bracketedPasteManager.d.ts.map +1 -0
- package/dist/shell/bracketedPasteManager.js +1 -0
- package/dist/shell/bracketedPasteManager.js.map +1 -0
- package/dist/shell/interactiveShell.d.ts +128 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -0
- package/dist/shell/interactiveShell.js +264 -146
- package/dist/shell/interactiveShell.js.map +1 -0
- package/dist/shell/liveStatus.d.ts +33 -0
- package/dist/shell/liveStatus.d.ts.map +1 -0
- package/dist/shell/liveStatus.js +89 -0
- package/dist/shell/liveStatus.js.map +1 -0
- package/dist/shell/promptSkin.d.ts +50 -0
- package/dist/shell/promptSkin.d.ts.map +1 -0
- package/dist/shell/promptSkin.js +380 -0
- package/dist/shell/promptSkin.js.map +1 -0
- package/dist/shell/shellApp.d.ts +10 -0
- package/dist/shell/shellApp.d.ts.map +1 -0
- package/dist/shell/shellApp.js +155 -78
- package/dist/shell/shellApp.js.map +1 -0
- package/dist/shell/systemPrompt.d.ts +3 -0
- package/dist/shell/systemPrompt.d.ts.map +1 -0
- package/dist/shell/systemPrompt.js +64 -0
- package/dist/shell/systemPrompt.js.map +1 -0
- package/dist/shell/updateManager.d.ts +2 -0
- package/dist/shell/updateManager.d.ts.map +1 -0
- package/dist/shell/updateManager.js +109 -0
- package/dist/shell/updateManager.js.map +1 -0
- package/dist/tools/bashTools.d.ts +8 -0
- package/dist/tools/bashTools.d.ts.map +1 -0
- package/dist/tools/bashTools.js +18 -15
- package/dist/tools/bashTools.js.map +1 -0
- package/dist/tools/codeAnalysisTools.d.ts +74 -0
- package/dist/tools/codeAnalysisTools.d.ts.map +1 -0
- package/dist/tools/codeAnalysisTools.js +642 -0
- package/dist/tools/codeAnalysisTools.js.map +1 -0
- package/dist/tools/codeGenerationTools.d.ts +3 -0
- package/dist/tools/codeGenerationTools.d.ts.map +1 -0
- package/dist/tools/codeGenerationTools.js +369 -0
- package/dist/tools/codeGenerationTools.js.map +1 -0
- package/dist/tools/codeQualityTools.d.ts +3 -0
- package/dist/tools/codeQualityTools.d.ts.map +1 -0
- package/dist/tools/codeQualityTools.js +295 -0
- package/dist/tools/codeQualityTools.js.map +1 -0
- package/dist/tools/dependencyTools.d.ts +3 -0
- package/dist/tools/dependencyTools.d.ts.map +1 -0
- package/dist/tools/dependencyTools.js +283 -0
- package/dist/tools/dependencyTools.js.map +1 -0
- package/dist/tools/devTools.d.ts +10 -0
- package/dist/tools/devTools.d.ts.map +1 -0
- package/dist/tools/devTools.js +239 -0
- package/dist/tools/devTools.js.map +1 -0
- package/dist/tools/diffUtils.d.ts +8 -0
- package/dist/tools/diffUtils.d.ts.map +1 -0
- package/dist/tools/diffUtils.js +2 -1
- package/dist/tools/diffUtils.js.map +1 -0
- package/dist/tools/fileTools.d.ts +3 -0
- package/dist/tools/fileTools.d.ts.map +1 -0
- package/dist/tools/fileTools.js +72 -21
- package/dist/tools/fileTools.js.map +1 -0
- package/dist/tools/refactoringTools.d.ts +3 -0
- package/dist/tools/refactoringTools.d.ts.map +1 -0
- package/dist/tools/refactoringTools.js +294 -0
- package/dist/tools/refactoringTools.js.map +1 -0
- package/dist/tools/repoChecksTools.d.ts +3 -0
- package/dist/tools/repoChecksTools.d.ts.map +1 -0
- package/dist/tools/repoChecksTools.js +161 -0
- package/dist/tools/repoChecksTools.js.map +1 -0
- package/dist/tools/searchTools.d.ts +3 -0
- package/dist/tools/searchTools.d.ts.map +1 -0
- package/dist/tools/searchTools.js +50 -22
- package/dist/tools/searchTools.js.map +1 -0
- package/dist/tools/testingTools.d.ts +3 -0
- package/dist/tools/testingTools.d.ts.map +1 -0
- package/dist/tools/testingTools.js +233 -0
- package/dist/tools/testingTools.js.map +1 -0
- package/dist/ui/codeHighlighter.d.ts +6 -0
- package/dist/ui/codeHighlighter.d.ts.map +1 -0
- package/dist/ui/codeHighlighter.js +41 -29
- package/dist/ui/codeHighlighter.js.map +1 -0
- package/dist/ui/designSystem.d.ts +26 -0
- package/dist/ui/designSystem.d.ts.map +1 -0
- package/dist/ui/designSystem.js +1 -0
- package/dist/ui/designSystem.js.map +1 -0
- package/dist/ui/display.d.ts +78 -0
- package/dist/ui/display.d.ts.map +1 -0
- package/dist/ui/display.js +211 -153
- package/dist/ui/display.js.map +1 -0
- package/dist/ui/layout.d.ts +17 -0
- package/dist/ui/layout.d.ts.map +1 -0
- package/dist/ui/layout.js +12 -7
- package/dist/ui/layout.js.map +1 -0
- package/dist/ui/richText.d.ts +6 -0
- package/dist/ui/richText.d.ts.map +1 -0
- package/dist/ui/richText.js +13 -4
- package/dist/ui/richText.js.map +1 -0
- package/dist/ui/theme.d.ts +77 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +19 -6
- package/dist/ui/theme.js.map +1 -0
- package/dist/ui/unified/UIEventBus.d.ts +93 -0
- package/dist/ui/unified/UIEventBus.d.ts.map +1 -0
- package/dist/ui/unified/UIEventBus.js +124 -0
- package/dist/ui/unified/UIEventBus.js.map +1 -0
- package/dist/ui/unified/UIState.d.ts +123 -0
- package/dist/ui/unified/UIState.d.ts.map +1 -0
- package/dist/ui/unified/UIState.js +188 -0
- package/dist/ui/unified/UIState.js.map +1 -0
- package/dist/utils/errorUtils.d.ts +16 -0
- package/dist/utils/errorUtils.d.ts.map +1 -0
- package/dist/utils/errorUtils.js +68 -0
- package/dist/utils/errorUtils.js.map +1 -0
- package/dist/utils/nodeVersion.d.ts +3 -0
- package/dist/utils/nodeVersion.d.ts.map +1 -0
- package/dist/utils/nodeVersion.js +51 -0
- package/dist/utils/nodeVersion.js.map +1 -0
- package/dist/workspace.d.ts +8 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +63 -11
- package/dist/workspace.js.map +1 -0
- package/package.json +27 -14
- package/scripts/health-check.mjs +179 -0
- package/ARCHITECTURE.json +0 -157
- package/SOURCE_OF_TRUTH.json +0 -103
- package/dist/capabilities/tavilyCapability.js +0 -26
- package/dist/plugins/tools/tavily/tavilyPlugin.js +0 -16
- package/dist/shell/__tests__/bracketedPasteManager.test.js +0 -35
- package/dist/tools/tavilyTools.js +0 -176
- package/dist/ui/__tests__/richText.test.js +0 -36
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Erosolar CLI
|
|
2
2
|
|
|
3
|
-
Erosolar CLI is a modular, profile aware command-line assistant that bundles a locally running AI agent, tool runtime, and capability registry into a single npm package. It ships with both the balanced **Erosolar** profile (`general`) and the deterministic **Erosolar Code** profile (`erosolar-code`), plus a provider registry that can drive OpenAI, Anthropic, DeepSeek, xAI Grok, Google Gemini, or any custom LLM you register. The CLI bootstraps a structured workspace context, exposes file/search/bash tooling, and
|
|
3
|
+
Erosolar CLI is a modular, profile aware command-line assistant that bundles a locally running AI agent, tool runtime, and capability registry into a single npm package. It ships with both the balanced **Erosolar** profile (`general`) and the deterministic **Erosolar Code** profile (`erosolar-code`), plus a provider registry that can drive OpenAI, Anthropic, DeepSeek, xAI Grok, Google Gemini, or any custom LLM you register. The CLI bootstraps a structured workspace context, exposes file/search/bash tooling, and now focuses entirely on deterministic coding capabilities—no external document editors or web research dependencies required.
|
|
4
4
|
|
|
5
|
-
>
|
|
5
|
+
> `Agents.md` contains the canonical profile manifest and JSON rulebooks (validated by `src/contracts/schemas/agent-profile.schema.json` and `src/contracts/schemas/agent-rules.schema.json`). Edit that doc to change prompts/guardrails, then document the behavioral shift here whenever the CLI changes.
|
|
6
6
|
|
|
7
7
|
## Why Erosolar CLI?
|
|
8
8
|
|
|
@@ -17,17 +17,15 @@ Erosolar CLI is a modular, profile aware command-line assistant that bundles a l
|
|
|
17
17
|
|
|
18
18
|
### Prerequisites
|
|
19
19
|
|
|
20
|
-
- Node.js **20.0.0 or newer** (check with `node -v`).
|
|
20
|
+
- Node.js **20.0.0 or newer** (check with `node -v`). The repo ships an `.nvmrc` pinned to 20 and the CLI now aborts immediately with upgrade instructions if you launch it on an older runtime.
|
|
21
21
|
- API keys for the models you plan to use (see [Provider support](#provider-support--api-keys)).
|
|
22
22
|
- macOS/Linux shell. Windows works inside WSL2.
|
|
23
23
|
|
|
24
24
|
### Install the CLI
|
|
25
25
|
|
|
26
26
|
```bash
|
|
27
|
-
npm install -g erosolar-cli
|
|
28
|
-
#
|
|
29
|
-
npm install erosolar-cli --save-dev
|
|
30
|
-
# or run ad-hoc without installing
|
|
27
|
+
npm install -g erosolar-cli
|
|
28
|
+
# Optional: run ad-hoc without installing
|
|
31
29
|
npx erosolar --version
|
|
32
30
|
```
|
|
33
31
|
|
|
@@ -39,6 +37,8 @@ erosolar --help
|
|
|
39
37
|
|
|
40
38
|
The binary lives at `dist/bin/erosolar.js` and is exposed through the `erosolar` bin entry.
|
|
41
39
|
|
|
40
|
+
> Tip: The CLI now checks the npm registry every time it launches. If a newer version exists, it prompts you to install the update globally with `npm install -g erosolar-cli@latest` so your shell always picks up the latest profile/runtime fixes.
|
|
41
|
+
|
|
42
42
|
## Quick Start
|
|
43
43
|
|
|
44
44
|
1. **Launch the shell**
|
|
@@ -49,7 +49,7 @@ The binary lives at `dist/bin/erosolar.js` and is exposed through the `erosolar`
|
|
|
49
49
|
```
|
|
50
50
|
2. **Configure secrets** – inside the shell run `/secrets` and paste your `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, etc. Secrets are saved to `~/.codex/secrets.json` (override with `CODEX_HOME`).
|
|
51
51
|
3. **Choose a model** – run `/model` to switch providers or presets (OpenAI GPT-5, Claude, DeepSeek, Grok, Gemini, …). Preferences persist in `~/.erosolar/settings.json`.
|
|
52
|
-
4. **Toggle tools** – `/tools` enables/disables
|
|
52
|
+
4. **Toggle tools** – `/tools` enables/disables the coding tool families (filesystem/search/bash/analysis/etc.) per profile.
|
|
53
53
|
5. **Chat or automate** – type instructions, paste code blocks (bracketed paste supported), or kick off `/agents` to switch the default profile for future launches.
|
|
54
54
|
|
|
55
55
|
The shell prints every tool invocation (e.g., `Read(src/app.ts)`), shows diffs for writes, and summarizes bash output so you can audit what happened.
|
|
@@ -67,9 +67,12 @@ The shell prints every tool invocation (e.g., `Read(src/app.ts)`), shows diffs f
|
|
|
67
67
|
|
|
68
68
|
| Command | Description |
|
|
69
69
|
|-------------|-------------|
|
|
70
|
-
| `/model` | Choose provider/model, temperature, max tokens
|
|
70
|
+
| `/model` | Choose provider/model, temperature, or max tokens. |
|
|
71
71
|
| `/secrets` | List, add, or update API keys. Stored encrypted-at-rest in `~/.codex/secrets.json`. |
|
|
72
|
-
| `/tools` | Enable/disable capability suites (filesystem, search, bash,
|
|
72
|
+
| `/tools` | Enable/disable capability suites (filesystem, search, bash, analysis, etc.). Preferences save to `~/.erosolar/settings.json`. |
|
|
73
|
+
| `/doctor` | Run environment checks to confirm Node version, provider secrets, and tool suites are ready. |
|
|
74
|
+
| `/checks` | Run repo checks (npm test/build/lint) inside the sandboxed workspace. |
|
|
75
|
+
| `/context` | Capture a fresh workspace snapshot mid-session. Supports optional `depth=`, `entries=`, and `excerpt=` overrides. |
|
|
73
76
|
| `/agents` | (When enabled) switch the default profile for future launches. |
|
|
74
77
|
| `/clear` | Reset the working conversation. |
|
|
75
78
|
| `/log` | Show the recent transcript. |
|
|
@@ -82,7 +85,7 @@ The shell prints every tool invocation (e.g., `Read(src/app.ts)`), shows diffs f
|
|
|
82
85
|
| `general` | **Erosolar** | OpenAI `gpt-5.1` | Balanced research/writing/coding. | `GENERAL_MODEL`, `GENERAL_PROVIDER`, `GENERAL_SYSTEM_PROMPT` |
|
|
83
86
|
| `erosolar-code` | **Erosolar Code** | OpenAI `gpt-5.1-codex` | Rapid, deterministic code edits with aggressive tool usage. | `EROSOLAR_CODE_MODEL`, `EROSOLAR_CODE_PROVIDER`, `EROSOLAR_CODE_SYSTEM_PROMPT` |
|
|
84
87
|
|
|
85
|
-
|
|
88
|
+
Default profiles live in the `Agents.md` manifest block (validated by `src/contracts/schemas/agent-profile.schema.json`) and are registered on launch. Update that document to change defaults, or override them with environment variables before starting the CLI. `EROSOLAR_PROFILE` selects which profile boots by default.
|
|
86
89
|
|
|
87
90
|
## Provider support & API keys
|
|
88
91
|
|
|
@@ -93,21 +96,35 @@ Each profile is registered in `src/config.ts`. Add new profiles via `registerAge
|
|
|
93
96
|
| `deepseek` | `deepseek-reasoner`, `deepseek-chat` | `DEEPSEEK_API_KEY` | `/model → DeepSeek` |
|
|
94
97
|
| `xai` | `grok-4`, `grok-4-fast-reasoning`, `grok-4-fast-non-reasoning`, `grok-code-fast-1` | `XAI_API_KEY` | `/model → xAI` |
|
|
95
98
|
| `google` | `gemini-2.5-pro`, `gemini-2.5-flash` | `GEMINI_API_KEY` | `/model → Google Gemini` |
|
|
96
|
-
| `tavily` | `tavily_search`, `tavily_extract` tools | `TAVILY_API_KEY` | Enable via `/tools` |
|
|
97
99
|
|
|
98
100
|
Secrets are read from environment variables first, then from `~/.codex/secrets.json`. Use `/secrets` to manage them interactively.
|
|
99
101
|
|
|
100
102
|
## Built-in tools & capability suites
|
|
101
103
|
|
|
102
|
-
The CLI composes tools via `CapabilityModule`s. The default Node runtime registers
|
|
104
|
+
The CLI composes tools via `CapabilityModule`s. The canonical suite metadata lives in `src/contracts/tools.schema.json`, so editing that schema updates every runtime without touching multiple files. The default Node runtime now registers a single purpose-built coding toolkit and no longer bundles non-coding Office or web research capabilities. See `docs/CODING_CAPABILITIES.md` for deep dives into each command.
|
|
105
|
+
|
|
106
|
+
Tool invocations are narrated via the interactive shell (`Read(src/api.ts)`, `Bash(npm test)`). Warnings surface when tools are disabled or missing secrets so you can remediate without rerunning the CLI.
|
|
103
107
|
|
|
108
|
+
### Coding tool families
|
|
109
|
+
|
|
110
|
+
**Core workspace control**
|
|
104
111
|
- **Filesystem suite (`filesystemCapability.ts`)** – `read_file`, `write_file` (with diff previews), `list_files`, `search_files`. Uses deterministic ignore lists and protects against accidental binary writes.
|
|
105
|
-
- **Search suite (`searchCapability.ts`)** – `grep_search`, `find_definition
|
|
106
|
-
- **Bash suite (`bashCapability.ts`)** – `execute_bash` runs commands inside a sandbox rooted at `<workspace>/.erosolar/shell-sandbox`. HOME/TMP/XDG paths are rewritten unless `EROSOLAR_PRESERVE_HOME=1` is set.
|
|
107
|
-
- **Tavily suite (`tavilyCapability.ts`)** – opt-in live web search/extract. Requires `TAVILY_API_KEY` and the `/tools` toggle.
|
|
108
|
-
- **Runtime metadata tools (`core/toolRuntime.ts`)** – `context_snapshot`, `capabilities_overview`, `profile_details` for deterministic context recall.
|
|
112
|
+
- **Search suite (`searchCapability.ts`)** – `grep_search`, `find_definition`, and keyword-aware scanners over repo text. Regex friendly with case sensitivity toggles and automatic binary detection.
|
|
113
|
+
- **Bash suite (`bashCapability.ts`)** – `execute_bash` runs commands inside a sandbox rooted at `<workspace>/.erosolar/shell-sandbox`. HOME/TMP/XDG paths are rewritten unless `EROSOLAR_PRESERVE_HOME=1` is set.
|
|
109
114
|
|
|
110
|
-
|
|
115
|
+
**Delivery & validation loops**
|
|
116
|
+
- **Repo checks suite (`repoChecksCapability.ts`)** – `run_repo_checks` wraps `npm test`/`npm run build`/`npm run lint` (when present) inside the sandbox and powers the `/checks` shortcut for one-command validation.
|
|
117
|
+
- **Development workflow suite (`devCapability.ts`)** – `run_tests`, `install_dependencies`, `check_package_info`, and `run_build` encapsulate local package/test/build operations with timeout handling and script detection.
|
|
118
|
+
- **Testing & coverage suite (`testingCapability.ts`)** – test plan scaffolding, coverage orchestration, and sanity checks for the local test harness.
|
|
119
|
+
|
|
120
|
+
**Code intelligence & quality**
|
|
121
|
+
- **Code analysis suite (`codeAnalysisCapability.ts`)** – `analyze_code_structure`, `find_dependencies`, and `check_code_complexity` provide AST-backed insight into any TS/JS file.
|
|
122
|
+
- **Code quality suite (`codeQualityCapability.ts`)** – `run_lint_checks`, `inspect_code_quality`, `list_lint_rules` surface lint health, TODO hotspots, and maintainability metrics.
|
|
123
|
+
- **Refactoring suite (`refactoringCapability.ts`)** – `detect_refactoring_hotspots`, `generate_refactor_plan`, `analyze_refactor_impact` use AST data plus call graphs to map risky symbols before editing.
|
|
124
|
+
|
|
125
|
+
**Dependency & runtime awareness**
|
|
126
|
+
- **Dependency security suite (`dependencySecurityCapability.ts`)** – dependency summaries, advisories, `npm audit` execution, and lockfile inspections to catch supply-chain issues.
|
|
127
|
+
- **Runtime metadata tools (`core/toolRuntime.ts`)** – `context_snapshot`, `capabilities_overview`, `profile_details` provide deterministic context recall for every session.
|
|
111
128
|
|
|
112
129
|
## Workspace context & prompts
|
|
113
130
|
|
|
@@ -115,31 +132,26 @@ On launch, `buildWorkspaceContext()` (see `src/workspace.ts`) captures:
|
|
|
115
132
|
|
|
116
133
|
1. The current working directory path.
|
|
117
134
|
2. A trimmed file tree (depth 2, up to 200 entries, ignoring `.git`, `node_modules`, `dist`).
|
|
118
|
-
3. Contents/snippets of `README.md`, `
|
|
135
|
+
3. Contents/snippets of `README.md`, `package.json`, and formatted rulebook prompts derived from every `Agents.md` rulebook block.
|
|
119
136
|
|
|
120
137
|
The snapshot is appended to the active system prompt and exposed via the `context_snapshot` tool so the agent always has a deterministic view of the repo even before reading files manually.
|
|
121
138
|
|
|
122
|
-
|
|
139
|
+
Need more context? Override the capture depth/excerpt ahead of launch with:
|
|
123
140
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
│ Shell │ │ (profile/model │ │ (conversation│ │ (OpenAI, etc.)│
|
|
128
|
-
│ (/model…) │ │ resolution) │ │ loop + tools)│ │ │
|
|
129
|
-
└────┬───────┘ └────────┬───────┘ └──────┬──────┘ └──────┬───────┘
|
|
130
|
-
│ Workspace context │ ToolRuntime/logging │
|
|
131
|
-
▼ ▼ ▼
|
|
132
|
-
Capability modules (filesystem/search/bash/Tavily/…) loaded via AgentHost/RuntimeAdapter
|
|
133
|
-
```
|
|
141
|
+
- `EROSOLAR_CONTEXT_TREE_DEPTH` – max folder depth for the file tree.
|
|
142
|
+
- `EROSOLAR_CONTEXT_MAX_ENTRIES` – cap on total tree entries.
|
|
143
|
+
- `EROSOLAR_CONTEXT_DOC_LIMIT` – max characters captured from the priority documents.
|
|
134
144
|
|
|
135
|
-
|
|
136
|
-
- **AgentHost (`src/runtime/agentHost.ts`)** loads capability modules and resolves tool suites before the session starts.
|
|
137
|
-
- **CapabilityModule interface** describes any pluggable feature: return tool suites, metadata, and teardown logic. Modules can be registered by adapters, plugins, or downstream apps.
|
|
138
|
-
- **RuntimeAdapter (`src/adapters/types.ts`)** creates modules for specific targets (Node CLI, browser sandbox, server worker). The Node adapter wires in filesystem/search/bash/Tavily plugins.
|
|
139
|
-
- **AgentSession (`src/runtime/agentSession.ts`)** resolves the profile config, builds the tool runtime, and instantiates providers.
|
|
140
|
-
- **AgentRuntime (`src/core/agent.ts`)** runs the LLM loop, interleaving provider calls and tool execution.
|
|
145
|
+
During a session you can run `/context` to recapture the snapshot without restarting the CLI. Optional arguments allow deeper crawls or larger excerpts mid-session, e.g. `/context depth=4 excerpt=4000 entries=400`.
|
|
141
146
|
|
|
142
|
-
|
|
147
|
+
### Agent rulebooks
|
|
148
|
+
|
|
149
|
+
Each profile loads its prompts, guardrails, and phase/step rules from the matching `Agents.md#rulebooks/<profile>` block. Those manifests follow `src/contracts/schemas/agent-rules.schema.json`, so you can add new phases, rules, or metadata programmatically without editing TypeScript. Cite `Agents.md` (and rule IDs) when referencing canonical instructions.
|
|
150
|
+
|
|
151
|
+
- `Agents.md#rulebooks/general` — balanced Erosolar rulebook governing research/planning/writing tasks.
|
|
152
|
+
- `Agents.md#rulebooks/erosolar-code` — deterministic coding rulebook that enforces the narrate-plan-edit-validate-report workflow.
|
|
153
|
+
|
|
154
|
+
The workspace snapshot automatically captures the formatted prompts derived from these JSON files, so the active agent (and any downstream orchestrator) cites the same instructions. After editing a rulebook, rebuild or restart the CLI to reload it.
|
|
143
155
|
|
|
144
156
|
## Extending the CLI
|
|
145
157
|
|
|
@@ -198,25 +210,46 @@ Expose it through `/model` by adding presets in `src/shell/interactiveShell.ts`.
|
|
|
198
210
|
|
|
199
211
|
### Add an agent profile
|
|
200
212
|
|
|
213
|
+
Prefer editing the manifest in `Agents.md` so every runtime reads the same defaults. For ad-hoc registrations, include the system prompt definition and a rulebook reference so workspace snapshots stay aligned:
|
|
214
|
+
|
|
201
215
|
```ts
|
|
202
216
|
import { registerAgentProfile } from 'erosolar-cli/core/agentProfiles.js';
|
|
217
|
+
|
|
203
218
|
registerAgentProfile({
|
|
204
219
|
name: 'docs',
|
|
205
220
|
label: 'Docs Agent',
|
|
206
221
|
description: 'Summaries only',
|
|
207
222
|
defaultProvider: 'openai',
|
|
208
223
|
defaultModel: 'gpt-5-mini',
|
|
224
|
+
systemPromptConfig: { type: 'literal', content: 'Only answer with documentation.' },
|
|
209
225
|
defaultSystemPrompt: 'Only answer with documentation.',
|
|
226
|
+
rulebook: {
|
|
227
|
+
file: 'Agents.md#rulebooks/docs',
|
|
228
|
+
version: 'dev-local',
|
|
229
|
+
contractVersion: '1.0.0',
|
|
230
|
+
description: 'Docs-only guardrails.',
|
|
231
|
+
},
|
|
232
|
+
manifestVersion: 'dev-local',
|
|
233
|
+
manifestContractVersion: '1.0.0',
|
|
210
234
|
});
|
|
211
235
|
```
|
|
212
236
|
|
|
237
|
+
## Contract schemas
|
|
238
|
+
|
|
239
|
+
The CLI now exports machine readable contracts so other runtimes can preload the same guardrails and tool toggles without scraping prompts.
|
|
240
|
+
|
|
241
|
+
- **Agent profiles** – `src/contracts/v1/agentProfileManifest.ts` plus `src/contracts/schemas/agent-profile.schema.json` define default providers/models, prompt templates, and rulebook bindings (the live manifest is the `Agents.md` block).
|
|
242
|
+
- **Agent rules** – `src/contracts/v1/agentRules.ts` plus `src/contracts/schemas/agent-rules.schema.json` describe multi-phase workflows. Encode per-phase steps, required evidence, nested sub-steps, and severity tagged rules so an orchestrator can enforce behavior before the model ever sees a prompt.
|
|
243
|
+
- **Tool selection** – `src/contracts/v1/toolAccess.ts` plus `src/contracts/schemas/tool-selection.schema.json` enumerate every toggleable tool suite along with permission scopes, required secrets, and optional presets. UI layers can read this manifest to decide which suites are surfaced or locked for a profile.
|
|
244
|
+
- **Agent schema snapshot** – `dist/contracts/agent-schema.snapshot.json` (written after `npm run build`) materializes the entire `Agents.md` profile manifest plus each rulebook block into a single JSON payload so other runtimes can ingest the exact schema without rehydrating multiple files.
|
|
245
|
+
|
|
213
246
|
## Configuration reference
|
|
214
247
|
|
|
215
248
|
- `EROSOLAR_PROFILE` – boot this profile unless `--profile` overrides it.
|
|
216
249
|
- `<PROFILE>_MODEL`, `<PROFILE>_PROVIDER`, `<PROFILE>_SYSTEM_PROMPT` – lock a profile to custom defaults. Examples: `GENERAL_MODEL=claude-sonnet-4.5`, `EROSOLAR_CODE_SYSTEM_PROMPT="..."`.
|
|
217
250
|
- `EROSOLAR_PRESERVE_HOME=1` – skip rewriting `$HOME`/`XDG_*` paths when running bash commands.
|
|
218
251
|
- `CODEX_HOME` – change where CLI secrets are stored (defaults to `~/.codex`).
|
|
219
|
-
- `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `DEEPSEEK_API_KEY`, `XAI_API_KEY`, `GEMINI_API_KEY
|
|
252
|
+
- `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `DEEPSEEK_API_KEY`, `XAI_API_KEY`, `GEMINI_API_KEY` – provider credentials.
|
|
220
253
|
- `GENERAL_MODEL`, `EROSOLAR_CODE_MODEL` – shorthand for the two built-in profiles.
|
|
221
254
|
- `PATH`, `TMPDIR`, etc. – inherited by bash tools after sandboxing.
|
|
222
255
|
|
|
@@ -228,7 +261,7 @@ User preferences (model presets, enabled tools, saved profile) live in `~/.eroso
|
|
|
228
261
|
git clone https://github.com/bo/bo-cli.git
|
|
229
262
|
cd bo-cli
|
|
230
263
|
npm install
|
|
231
|
-
npm run dev # ts-node
|
|
264
|
+
npm run dev # ts-node loader entry for iterating without building
|
|
232
265
|
npm run build # clean + tsc compile to dist/
|
|
233
266
|
npm run start # run the compiled CLI
|
|
234
267
|
npm run clean # remove dist/
|
|
@@ -239,25 +272,25 @@ Notes:
|
|
|
239
272
|
- The repo uses strict ES modules and TypeScript 5.3+.
|
|
240
273
|
- `dist/bin/erosolar.js` must stay executable; `npm run postbuild` sets `chmod 755`.
|
|
241
274
|
- Keep new files ASCII by default; use comments sparingly (see `apply_patch` guidelines in this repo).
|
|
242
|
-
-
|
|
275
|
+
- Keep the JSON blocks inside `Agents.md` aligned with `src/contracts/schemas/agent-rules.schema.json` whenever you change prompts or modules—the CLI loads them directly at runtime.
|
|
243
276
|
|
|
244
277
|
## Release & publishing checklist
|
|
245
278
|
|
|
246
|
-
1. Update docs/metadata (README, `
|
|
279
|
+
1. Update docs/metadata (README, `Agents.md`, the agent-rules schema when structure changes, and the `package.json` description).
|
|
247
280
|
2. Run `npm run build` to refresh `dist/`.
|
|
248
|
-
3. Inspect the diff and run any smoke tests (e.g., `
|
|
281
|
+
3. Inspect the diff and run any smoke tests (e.g., `node --loader ts-node/esm src/bin/erosolar.ts --version`).
|
|
249
282
|
4. Bump the version: `npm version patch` (or `minor`/`major`) to keep npm in sync.
|
|
250
283
|
5. Publish: `npm publish`.
|
|
251
284
|
6. Verify on npmjs.com that the README renders and the new version lists the correct files.
|
|
252
285
|
|
|
253
|
-
The `files` array in `package.json` already limits what goes to npm (`dist`, README,
|
|
286
|
+
The `files` array in `package.json` already limits what goes to npm (`dist`, README, `Agents.md`, license, helper scripts).
|
|
254
287
|
|
|
255
288
|
## Repository layout
|
|
256
289
|
|
|
257
290
|
- `src/bin/erosolar.ts` – CLI entrypoint.
|
|
258
291
|
- `src/shell/` – interactive shell UX, slash commands, tool logging.
|
|
259
292
|
- `src/runtime/` – AgentHost, AgentSession, adapters.
|
|
260
|
-
- `src/capabilities/` & `src/tools/` – filesystem/search/bash/
|
|
293
|
+
- `src/capabilities/` & `src/tools/` – filesystem/search/bash/coding capability implementations.
|
|
261
294
|
- `src/plugins/` – provider + tool plugin registries.
|
|
262
295
|
- `src/providers/` – LLM client shims (OpenAI Responses, Chat Completions, etc.).
|
|
263
296
|
- `src/core/` – agent runtime, tool runtime, preferences, secrets.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { CapabilityModule } from '../../runtime/agentHost.js';
|
|
2
|
+
import type { RuntimeAdapter, RuntimeAdapterContext } from '../types.js';
|
|
3
|
+
export interface BrowserAdapterOptions {
|
|
4
|
+
modules?: CapabilityModule[];
|
|
5
|
+
}
|
|
6
|
+
export declare class BrowserRuntimeAdapter implements RuntimeAdapter {
|
|
7
|
+
readonly id = "runtime.browser";
|
|
8
|
+
private readonly options;
|
|
9
|
+
constructor(options?: BrowserAdapterOptions);
|
|
10
|
+
createCapabilityModules(_: RuntimeAdapterContext): Promise<CapabilityModule[]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,qBAAa,qBAAsB,YAAW,cAAc;IAC1D,QAAQ,CAAC,EAAE,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;gBAEpC,OAAO,GAAE,qBAA0B;IAIzC,uBAAuB,CAAC,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAGrF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/browser/index.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,qBAAqB;IACvB,EAAE,GAAG,iBAAiB,CAAC;IACf,OAAO,CAAwB;IAEhD,YAAY,UAAiC,EAAE;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,CAAwB;QACpD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { CapabilityModule } from '../../runtime/agentHost.js';
|
|
2
|
+
import type { RuntimeAdapter, RuntimeAdapterContext } from '../types.js';
|
|
3
|
+
import { type ToolPlugin } from '../../plugins/tools/index.js';
|
|
4
|
+
export interface NodeAdapterOptions {
|
|
5
|
+
includeFilesystem?: boolean;
|
|
6
|
+
includeSearch?: boolean;
|
|
7
|
+
includeBash?: boolean;
|
|
8
|
+
extraModules?: CapabilityModule[];
|
|
9
|
+
filter?: (plugin: ToolPlugin) => boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare class NodeRuntimeAdapter implements RuntimeAdapter {
|
|
12
|
+
readonly id = "runtime.node";
|
|
13
|
+
private readonly options;
|
|
14
|
+
constructor(options?: NodeAdapterOptions);
|
|
15
|
+
createCapabilityModules(context: RuntimeAdapterContext): Promise<CapabilityModule[]>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,kBAAkB;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;CAC1C;AAED,qBAAa,kBAAmB,YAAW,cAAc;IACvD,QAAQ,CAAC,EAAE,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEjC,OAAO,GAAE,kBAAuB;IAItC,uBAAuB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAkC3F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/node/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAE/B,MAAM,8BAA8B,CAAC;AAUtC,MAAM,OAAO,kBAAkB;IACpB,EAAE,GAAG,cAAc,CAAC;IACZ,OAAO,CAAqB;IAE7C,YAAY,UAA8B,EAAE;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAA8B;QAC1D,8BAA8B,EAAE,CAAC;QAEjC,MAAM,MAAM,GAAG,CAAC,MAAkB,EAAW,EAAE;YAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,KAAK,KAAK,IAAI,MAAM,CAAC,EAAE,KAAK,uBAAuB,EAAE,CAAC;gBACtF,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,KAAK,IAAI,MAAM,CAAC,EAAE,KAAK,mBAAmB,EAAE,CAAC;gBAC9E,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,KAAK,IAAI,MAAM,CAAC,EAAE,KAAK,iBAAiB,EAAE,CAAC;gBAC1E,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAC1C,MAAM,EACN;YACE,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,EACD,EAAE,MAAM,EAAE,CACX,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CapabilityModule } from '../../runtime/agentHost.js';
|
|
2
|
+
import type { RuntimeAdapter, RuntimeAdapterContext } from '../types.js';
|
|
3
|
+
export type RemoteModuleFactory = CapabilityModule | ((context: RuntimeAdapterContext) => CapabilityModule | Promise<CapabilityModule>);
|
|
4
|
+
export interface RemoteAdapterOptions {
|
|
5
|
+
modules?: RemoteModuleFactory[];
|
|
6
|
+
}
|
|
7
|
+
export declare class RemoteRuntimeAdapter implements RuntimeAdapter {
|
|
8
|
+
readonly id = "runtime.remote";
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options?: RemoteAdapterOptions);
|
|
11
|
+
createCapabilityModules(context: RuntimeAdapterContext): Promise<CapabilityModule[]>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/remote/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzE,MAAM,MAAM,mBAAmB,GAC3B,gBAAgB,GAChB,CAAC,CAAC,OAAO,EAAE,qBAAqB,KAAK,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAEvF,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACjC;AAED,qBAAa,oBAAqB,YAAW,cAAc;IACzD,QAAQ,CAAC,EAAE,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;gBAEnC,OAAO,GAAE,oBAAyB;IAIxC,uBAAuB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAW3F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/remote/index.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,oBAAoB;IACtB,EAAE,GAAG,gBAAgB,CAAC;IACd,OAAO,CAAuB;IAE/C,YAAY,UAAgC,EAAE;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAA8B;QAC1D,MAAM,OAAO,GAAuB,EAAE,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC/C,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ProfileName } from '../config.js';
|
|
2
|
+
import type { CapabilityModule } from '../runtime/agentHost.js';
|
|
3
|
+
export interface RuntimeAdapterContext {
|
|
4
|
+
profile: ProfileName;
|
|
5
|
+
workspaceContext: string | null;
|
|
6
|
+
workingDir: string;
|
|
7
|
+
env: Record<string, string | undefined>;
|
|
8
|
+
}
|
|
9
|
+
export interface RuntimeAdapter {
|
|
10
|
+
id: string;
|
|
11
|
+
description?: string;
|
|
12
|
+
createCapabilityModules(context: RuntimeAdapterContext): CapabilityModule[] | Promise<CapabilityModule[]>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/adapters/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,WAAW,CAAC;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB,CACrB,OAAO,EAAE,qBAAqB,GAC7B,gBAAgB,EAAE,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CACrD"}
|
package/dist/adapters/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/adapters/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erosolar.d.ts","sourceRoot":"","sources":["../../src/bin/erosolar.ts"],"names":[],"mappings":""}
|
package/dist/bin/erosolar.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erosolar.js","sourceRoot":"","sources":["../../src/bin/erosolar.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,WAAW,CAAC,eAAe,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC7E,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
|
|
2
|
+
export interface BashCapabilityOptions {
|
|
3
|
+
workingDir?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class BashCapabilityModule implements CapabilityModule {
|
|
8
|
+
readonly id = "capability.bash";
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options?: BashCapabilityOptions);
|
|
11
|
+
create(context: CapabilityContext): Promise<CapabilityContribution>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=bashCapability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bashCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/bashCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,oBAAqB,YAAW,gBAAgB;IAC3D,QAAQ,CAAC,EAAE,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;gBAEpC,OAAO,GAAE,qBAA0B;IAIzC,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAe1E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bashCapability.js","sourceRoot":"","sources":["../../src/capabilities/bashCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQxD,MAAM,OAAO,oBAAoB;IACtB,EAAE,GAAG,iBAAiB,CAAC;IACf,OAAO,CAAwB;IAEhD,YAAY,UAAiC,EAAE;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,kBAAkB;YACzC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,mEAAmE;YAC5G,SAAS,EAAE;gBACT,EAAE,EAAE,MAAM;gBACV,WAAW,EAAE,cAAc;gBAC3B,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC;aACnC;YACD,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
|
|
2
|
+
export interface CodeAnalysisCapabilityOptions {
|
|
3
|
+
workingDir?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class CodeAnalysisCapabilityModule implements CapabilityModule {
|
|
8
|
+
readonly id = "capability.code-analysis";
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options?: CodeAnalysisCapabilityOptions);
|
|
11
|
+
create(context: CapabilityContext): Promise<CapabilityContribution>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=codeAnalysisCapability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeAnalysisCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/codeAnalysisCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,6BAA6B;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,4BAA6B,YAAW,gBAAgB;IACnE,QAAQ,CAAC,EAAE,8BAA8B;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;gBAE5C,OAAO,GAAE,6BAAkC;IAIjD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAe1E"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { createCodeAnalysisTools } from '../tools/codeAnalysisTools.js';
|
|
2
|
+
export class CodeAnalysisCapabilityModule {
|
|
3
|
+
id = 'capability.code-analysis';
|
|
4
|
+
options;
|
|
5
|
+
constructor(options = {}) {
|
|
6
|
+
this.options = options;
|
|
7
|
+
}
|
|
8
|
+
async create(context) {
|
|
9
|
+
const workingDir = this.options.workingDir ?? context.workingDir;
|
|
10
|
+
return {
|
|
11
|
+
id: this.options.id ?? 'code-analysis.tools.structural',
|
|
12
|
+
description: this.options.description ?? 'Advanced code structure analysis, dependency tracking, and complexity metrics.',
|
|
13
|
+
toolSuite: {
|
|
14
|
+
id: 'code-analysis',
|
|
15
|
+
description: 'Code analysis and metrics',
|
|
16
|
+
tools: createCodeAnalysisTools(workingDir),
|
|
17
|
+
},
|
|
18
|
+
metadata: {
|
|
19
|
+
workingDir,
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=codeAnalysisCapability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeAnalysisCapability.js","sourceRoot":"","sources":["../../src/capabilities/codeAnalysisCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAQxE,MAAM,OAAO,4BAA4B;IAC9B,EAAE,GAAG,0BAA0B,CAAC;IACxB,OAAO,CAAgC;IAExD,YAAY,UAAyC,EAAE;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,gCAAgC;YACvD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,gFAAgF;YACzH,SAAS,EAAE;gBACT,EAAE,EAAE,eAAe;gBACnB,WAAW,EAAE,2BAA2B;gBACxC,KAAK,EAAE,uBAAuB,CAAC,UAAU,CAAC;aAC3C;YACD,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
|
|
2
|
+
export interface CodeGenerationCapabilityOptions {
|
|
3
|
+
workingDir?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class CodeGenerationCapabilityModule implements CapabilityModule {
|
|
8
|
+
readonly id = "capability.code-generation";
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options?: CodeGenerationCapabilityOptions);
|
|
11
|
+
create(context: CapabilityContext): Promise<CapabilityContribution>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=codeGenerationCapability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeGenerationCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/codeGenerationCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,+BAA+B;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,8BAA+B,YAAW,gBAAgB;IACrE,QAAQ,CAAC,EAAE,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;gBAE9C,OAAO,GAAE,+BAAoC;IAInD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAiB1E"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { createCodeGenerationTools } from '../tools/codeGenerationTools.js';
|
|
2
|
+
export class CodeGenerationCapabilityModule {
|
|
3
|
+
id = 'capability.code-generation';
|
|
4
|
+
options;
|
|
5
|
+
constructor(options = {}) {
|
|
6
|
+
this.options = options;
|
|
7
|
+
}
|
|
8
|
+
async create(context) {
|
|
9
|
+
const workingDir = this.options.workingDir ?? context.workingDir;
|
|
10
|
+
return {
|
|
11
|
+
id: this.options.id ?? 'code-generation.tools.assistant',
|
|
12
|
+
description: this.options.description ??
|
|
13
|
+
'Advanced code generation including boilerplate creation, component templates, and utility generation.',
|
|
14
|
+
toolSuite: {
|
|
15
|
+
id: 'code-generation',
|
|
16
|
+
description: 'Code generation assistants',
|
|
17
|
+
tools: createCodeGenerationTools(workingDir),
|
|
18
|
+
},
|
|
19
|
+
metadata: {
|
|
20
|
+
workingDir,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=codeGenerationCapability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeGenerationCapability.js","sourceRoot":"","sources":["../../src/capabilities/codeGenerationCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAQ5E,MAAM,OAAO,8BAA8B;IAChC,EAAE,GAAG,4BAA4B,CAAC;IAC1B,OAAO,CAAkC;IAE1D,YAAY,UAA2C,EAAE;QACvD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,iCAAiC;YACxD,WAAW,EACT,IAAI,CAAC,OAAO,CAAC,WAAW;gBACxB,uGAAuG;YACzG,SAAS,EAAE;gBACT,EAAE,EAAE,iBAAiB;gBACrB,WAAW,EAAE,4BAA4B;gBACzC,KAAK,EAAE,yBAAyB,CAAC,UAAU,CAAC;aAC7C;YACD,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
|
|
2
|
+
export interface CodeQualityCapabilityOptions {
|
|
3
|
+
workingDir?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class CodeQualityCapabilityModule implements CapabilityModule {
|
|
8
|
+
readonly id = "capability.code-quality";
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options?: CodeQualityCapabilityOptions);
|
|
11
|
+
create(context: CapabilityContext): Promise<CapabilityContribution>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=codeQualityCapability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeQualityCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/codeQualityCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,2BAA4B,YAAW,gBAAgB;IAClE,QAAQ,CAAC,EAAE,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;gBAE3C,OAAO,GAAE,4BAAiC;IAIhD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAiB1E"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { createCodeQualityTools } from '../tools/codeQualityTools.js';
|
|
2
|
+
export class CodeQualityCapabilityModule {
|
|
3
|
+
id = 'capability.code-quality';
|
|
4
|
+
options;
|
|
5
|
+
constructor(options = {}) {
|
|
6
|
+
this.options = options;
|
|
7
|
+
}
|
|
8
|
+
async create(context) {
|
|
9
|
+
const workingDir = this.options.workingDir ?? context.workingDir;
|
|
10
|
+
return {
|
|
11
|
+
id: this.options.id ?? 'code-quality.tools.linting',
|
|
12
|
+
description: this.options.description ??
|
|
13
|
+
'Code quality helpers for linting, maintainability analysis, and ESLint rule discovery.',
|
|
14
|
+
toolSuite: {
|
|
15
|
+
id: 'code-quality',
|
|
16
|
+
description: 'Code quality and linting',
|
|
17
|
+
tools: createCodeQualityTools(workingDir),
|
|
18
|
+
},
|
|
19
|
+
metadata: {
|
|
20
|
+
workingDir,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=codeQualityCapability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeQualityCapability.js","sourceRoot":"","sources":["../../src/capabilities/codeQualityCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAQtE,MAAM,OAAO,2BAA2B;IAC7B,EAAE,GAAG,yBAAyB,CAAC;IACvB,OAAO,CAA+B;IAEvD,YAAY,UAAwC,EAAE;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,4BAA4B;YACnD,WAAW,EACT,IAAI,CAAC,OAAO,CAAC,WAAW;gBACxB,wFAAwF;YAC1F,SAAS,EAAE;gBACT,EAAE,EAAE,cAAc;gBAClB,WAAW,EAAE,0BAA0B;gBACvC,KAAK,EAAE,sBAAsB,CAAC,UAAU,CAAC;aAC1C;YACD,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
|
|
2
|
+
export interface DependencySecurityCapabilityOptions {
|
|
3
|
+
workingDir?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class DependencySecurityCapabilityModule implements CapabilityModule {
|
|
8
|
+
readonly id = "capability.dependency-security";
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options?: DependencySecurityCapabilityOptions);
|
|
11
|
+
create(context: CapabilityContext): Promise<CapabilityContribution>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=dependencySecurityCapability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependencySecurityCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/dependencySecurityCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,mCAAmC;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,kCAAmC,YAAW,gBAAgB;IACzE,QAAQ,CAAC,EAAE,oCAAoC;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;gBAElD,OAAO,GAAE,mCAAwC;IAIvD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAgB1E"}
|