@codemieai/code 0.0.28 → 0.0.29
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/README.md +8 -10
- package/bin/agent-executor.js +1 -1
- package/dist/agents/codemie-code/config.d.ts.map +1 -1
- package/dist/agents/codemie-code/config.js +0 -1
- package/dist/agents/codemie-code/config.js.map +1 -1
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +4 -8
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts +17 -9
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +75 -67
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/core/extension/BaseExtensionInstaller.d.ts +258 -0
- package/dist/agents/core/extension/BaseExtensionInstaller.d.ts.map +1 -0
- package/dist/agents/core/extension/BaseExtensionInstaller.js +522 -0
- package/dist/agents/core/extension/BaseExtensionInstaller.js.map +1 -0
- package/dist/agents/core/lifecycle-helpers.d.ts.map +1 -1
- package/dist/agents/core/lifecycle-helpers.js +16 -2
- package/dist/agents/core/lifecycle-helpers.js.map +1 -1
- package/dist/agents/core/metrics/index.d.ts +0 -2
- package/dist/agents/core/metrics/index.d.ts.map +1 -1
- package/dist/agents/core/metrics/index.js +0 -3
- package/dist/agents/core/metrics/index.js.map +1 -1
- package/dist/agents/core/metrics/types.d.ts +4 -232
- package/dist/agents/core/metrics/types.d.ts.map +1 -1
- package/dist/agents/core/metrics/types.js +2 -2
- package/dist/agents/core/session/BaseProcessor.d.ts +72 -0
- package/dist/agents/core/session/BaseProcessor.d.ts.map +1 -0
- package/dist/agents/core/session/BaseProcessor.js +9 -0
- package/dist/agents/core/session/BaseProcessor.js.map +1 -0
- package/dist/agents/core/session/BaseSessionAdapter.d.ts +99 -0
- package/dist/agents/core/session/BaseSessionAdapter.d.ts.map +1 -0
- package/dist/agents/core/session/BaseSessionAdapter.js +9 -0
- package/dist/agents/core/session/BaseSessionAdapter.js.map +1 -0
- package/dist/agents/core/session/SessionStore.d.ts +23 -0
- package/dist/agents/core/session/SessionStore.d.ts.map +1 -0
- package/dist/agents/core/session/SessionStore.js +75 -0
- package/dist/agents/core/session/SessionStore.js.map +1 -0
- package/dist/agents/core/session/session-config.d.ts +27 -0
- package/dist/agents/core/session/session-config.d.ts.map +1 -0
- package/dist/agents/core/session/session-config.js +61 -0
- package/dist/agents/core/session/session-config.js.map +1 -0
- package/dist/agents/core/session/types.d.ts +87 -0
- package/dist/agents/core/session/types.d.ts.map +1 -0
- package/dist/agents/core/session/types.js +8 -0
- package/dist/agents/core/session/types.js.map +1 -0
- package/dist/agents/core/session/utils/jsonl-reader.d.ts +15 -0
- package/dist/agents/core/session/utils/jsonl-reader.d.ts.map +1 -0
- package/dist/agents/core/session/utils/jsonl-reader.js +33 -0
- package/dist/agents/core/session/utils/jsonl-reader.js.map +1 -0
- package/dist/agents/core/session/utils/jsonl-writer.d.ts +26 -0
- package/dist/agents/core/session/utils/jsonl-writer.d.ts.map +1 -0
- package/dist/agents/core/session/utils/jsonl-writer.js +56 -0
- package/dist/agents/core/session/utils/jsonl-writer.js.map +1 -0
- package/dist/agents/core/types.d.ts +78 -11
- package/dist/agents/core/types.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude-message-types.d.ts +74 -0
- package/dist/agents/plugins/claude/claude-message-types.d.ts.map +1 -0
- package/dist/agents/plugins/claude/claude-message-types.js +8 -0
- package/dist/agents/plugins/claude/claude-message-types.js.map +1 -0
- package/dist/agents/plugins/claude/claude.plugin-installer.d.ts +53 -0
- package/dist/agents/plugins/claude/claude.plugin-installer.d.ts.map +1 -0
- package/dist/agents/plugins/claude/claude.plugin-installer.js +63 -0
- package/dist/agents/plugins/claude/claude.plugin-installer.js.map +1 -0
- package/dist/agents/plugins/claude/claude.plugin.d.ts +26 -0
- package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/{claude.plugin.js → claude/claude.plugin.js} +20 -11
- package/dist/agents/plugins/claude/claude.plugin.js.map +1 -0
- package/dist/agents/plugins/claude/claude.session.d.ts +60 -0
- package/dist/agents/plugins/claude/claude.session.d.ts.map +1 -0
- package/dist/agents/plugins/claude/claude.session.js +339 -0
- package/dist/agents/plugins/claude/claude.session.js.map +1 -0
- package/dist/agents/plugins/claude/plugin/.claude-plugin/local-install.json +15 -0
- package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +9 -0
- package/dist/agents/plugins/claude/plugin/README.md +299 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/README.md +539 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/CLAUDE.md.template +511 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/INDEX.md +205 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/TEMPLATE_SIZES.md +74 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/api/api-patterns.md.template +207 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/layered-architecture.md.template +143 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/project-structure.md.template +127 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/data/database-patterns.md.template +168 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/development/development-practices.md.template +210 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/integration/external-integrations.md.template +160 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/security/security-practices.md.template +170 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/code-quality.md.template +150 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/git-workflow.md.template +177 -0
- package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/testing/testing-patterns.md.template +143 -0
- package/dist/agents/plugins/claude/plugin/commands/README.md +0 -0
- package/dist/agents/plugins/claude/plugin/commands/codemie-catchup.md +10 -0
- package/dist/agents/plugins/claude/plugin/commands/codemie-init.md +731 -0
- package/dist/agents/plugins/claude/plugin/commands/memory-add.md +44 -0
- package/dist/agents/plugins/claude/plugin/commands/memory-init.md +18 -0
- package/dist/agents/plugins/claude/plugin/commands/memory-refresh.md +54 -0
- package/dist/agents/plugins/claude/plugin/hooks/hooks.json +71 -0
- package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts +51 -0
- package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts.map +1 -0
- package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js +840 -0
- package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js.map +1 -0
- package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts +37 -0
- package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts.map +1 -0
- package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js +275 -0
- package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js.map +1 -0
- package/dist/agents/plugins/gemini/extension/README.md +88 -0
- package/dist/agents/plugins/gemini/extension/gemini-extension.json +11 -0
- package/dist/agents/plugins/gemini/extension/hooks/hooks.json +65 -0
- package/dist/agents/plugins/gemini/gemini.extension-installer.d.ts +49 -0
- package/dist/agents/plugins/gemini/gemini.extension-installer.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/gemini.extension-installer.js +63 -0
- package/dist/agents/plugins/gemini/gemini.extension-installer.js.map +1 -0
- package/dist/agents/plugins/gemini/gemini.hook-transformer.d.ts +43 -0
- package/dist/agents/plugins/gemini/gemini.hook-transformer.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/gemini.hook-transformer.js +57 -0
- package/dist/agents/plugins/gemini/gemini.hook-transformer.js.map +1 -0
- package/dist/agents/plugins/gemini/gemini.plugin.d.ts +32 -0
- package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/gemini.plugin.js +136 -0
- package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -0
- package/dist/agents/plugins/gemini/gemini.session-adapter.d.ts +68 -0
- package/dist/agents/plugins/gemini/gemini.session-adapter.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/gemini.session-adapter.js +268 -0
- package/dist/agents/plugins/gemini/gemini.session-adapter.js.map +1 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts +36 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js +186 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js.map +1 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.d.ts +32 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.js +193 -0
- package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.js.map +1 -0
- package/dist/agents/plugins/gemini/session/utils/token-aggregator.d.ts +26 -0
- package/dist/agents/plugins/gemini/session/utils/token-aggregator.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/session/utils/token-aggregator.js +38 -0
- package/dist/agents/plugins/gemini/session/utils/token-aggregator.js.map +1 -0
- package/dist/agents/plugins/gemini/session/utils/tool-aggregator.d.ts +33 -0
- package/dist/agents/plugins/gemini/session/utils/tool-aggregator.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/session/utils/tool-aggregator.js +58 -0
- package/dist/agents/plugins/gemini/session/utils/tool-aggregator.js.map +1 -0
- package/dist/agents/plugins/gemini/session/utils/turn-detector.d.ts +70 -0
- package/dist/agents/plugins/gemini/session/utils/turn-detector.d.ts.map +1 -0
- package/dist/agents/plugins/gemini/session/utils/turn-detector.js +86 -0
- package/dist/agents/plugins/gemini/session/utils/turn-detector.js.map +1 -0
- package/dist/agents/registry.d.ts +7 -2
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +17 -8
- package/dist/agents/registry.js.map +1 -1
- package/dist/cli/commands/analytics/data-loader.d.ts +1 -1
- package/dist/cli/commands/analytics/data-loader.js +1 -1
- package/dist/cli/commands/analytics/index.js +1 -1
- package/dist/cli/commands/analytics/index.js.map +1 -1
- package/dist/cli/commands/doctor/checks/PythonCheck.d.ts +13 -0
- package/dist/cli/commands/doctor/checks/PythonCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/PythonCheck.js +90 -31
- package/dist/cli/commands/doctor/checks/PythonCheck.js.map +1 -1
- package/dist/cli/commands/hook.d.ts +7 -0
- package/dist/cli/commands/hook.d.ts.map +1 -0
- package/dist/cli/commands/hook.js +788 -0
- package/dist/cli/commands/hook.js.map +1 -0
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +3 -4
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +2 -1
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/first-time.d.ts +4 -0
- package/dist/cli/first-time.d.ts.map +1 -1
- package/dist/cli/first-time.js +26 -13
- package/dist/cli/first-time.js.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/frameworks/core/types.d.ts +1 -1
- package/dist/frameworks/plugins/speckit.plugin.d.ts.map +1 -1
- package/dist/frameworks/plugins/speckit.plugin.js +1 -2
- package/dist/frameworks/plugins/speckit.plugin.js.map +1 -1
- package/dist/migrations/002-consolidate-sessions.migration.d.ts +50 -0
- package/dist/migrations/002-consolidate-sessions.migration.d.ts.map +1 -0
- package/dist/migrations/002-consolidate-sessions.migration.js +220 -0
- package/dist/migrations/002-consolidate-sessions.migration.js.map +1 -0
- package/dist/migrations/index.d.ts +1 -0
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +3 -2
- package/dist/migrations/index.js.map +1 -1
- package/dist/providers/core/types.d.ts +1 -1
- package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -1
- package/dist/providers/plugins/ollama/ollama.template.js +2 -10
- package/dist/providers/plugins/ollama/ollama.template.js.map +1 -1
- package/dist/providers/plugins/sso/index.d.ts +1 -1
- package/dist/providers/plugins/sso/index.d.ts.map +1 -1
- package/dist/providers/plugins/sso/index.js +1 -1
- package/dist/providers/plugins/sso/index.js.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.d.ts.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/index.js +3 -3
- package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
- package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts +40 -0
- package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts.map +1 -0
- package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js +194 -0
- package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js.map +1 -0
- package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts +1 -0
- package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts.map +1 -1
- package/dist/providers/plugins/sso/proxy/proxy-http-client.js +40 -6
- package/dist/providers/plugins/sso/proxy/proxy-http-client.js.map +1 -1
- package/dist/providers/plugins/sso/session/BaseProcessor.d.ts +72 -0
- package/dist/providers/plugins/sso/session/BaseProcessor.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/BaseProcessor.js +9 -0
- package/dist/providers/plugins/sso/session/BaseProcessor.js.map +1 -0
- package/dist/providers/plugins/sso/session/BaseSessionAdapter.d.ts +99 -0
- package/dist/providers/plugins/sso/session/BaseSessionAdapter.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/BaseSessionAdapter.js +9 -0
- package/dist/providers/plugins/sso/session/BaseSessionAdapter.js.map +1 -0
- package/dist/providers/plugins/sso/session/SessionSyncer.d.ts +36 -0
- package/dist/providers/plugins/sso/session/SessionSyncer.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/SessionSyncer.js +140 -0
- package/dist/providers/plugins/sso/session/SessionSyncer.js.map +1 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.d.ts +26 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.js +146 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.js.map +1 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts +23 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js +171 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js.map +1 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.d.ts +69 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.js +7 -0
- package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.js.map +1 -0
- package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.d.ts +30 -0
- package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.js +79 -0
- package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.js.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-aggregator.d.ts → session/processors/metrics/metrics-aggregator.d.ts} +6 -5
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.d.ts.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-aggregator.js → session/processors/metrics/metrics-aggregator.js} +20 -12
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.js.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sender.d.ts → session/processors/metrics/metrics-api-client.d.ts} +18 -11
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sender.js → session/processors/metrics/metrics-api-client.js} +143 -15
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-post-processor.d.ts → session/processors/metrics/metrics-post-processor.d.ts} +3 -3
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-post-processor.d.ts.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-post-processor.js → session/processors/metrics/metrics-post-processor.js} +3 -3
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-post-processor.js.map +1 -0
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts +24 -0
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sync.plugin.js → session/processors/metrics/metrics-sync-processor.js} +94 -165
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.js.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-types.d.ts → session/processors/metrics/metrics-types.d.ts} +2 -1
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-types.d.ts.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-types.js → session/processors/metrics/metrics-types.js} +1 -1
- package/dist/providers/plugins/sso/session/processors/metrics/metrics-types.js.map +1 -0
- package/dist/providers/plugins/sso/session/utils/jsonl-reader.d.ts +15 -0
- package/dist/providers/plugins/sso/session/utils/jsonl-reader.d.ts.map +1 -0
- package/dist/providers/plugins/sso/session/utils/jsonl-reader.js +33 -0
- package/dist/providers/plugins/sso/session/utils/jsonl-reader.js.map +1 -0
- package/dist/providers/plugins/sso/session/utils/jsonl-writer.d.ts +26 -0
- package/dist/providers/plugins/sso/session/utils/jsonl-writer.d.ts.map +1 -0
- package/dist/providers/plugins/sso/{metrics/sync/sso.jsonl-writer.js → session/utils/jsonl-writer.js} +11 -27
- package/dist/providers/plugins/sso/session/utils/jsonl-writer.js.map +1 -0
- package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.template.js +71 -44
- package/dist/providers/plugins/sso/sso.template.js.map +1 -1
- package/dist/utils/file-operations.d.ts +20 -0
- package/dist/utils/file-operations.d.ts.map +1 -0
- package/dist/utils/file-operations.js +48 -0
- package/dist/utils/file-operations.js.map +1 -0
- package/dist/utils/logger.d.ts +2 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +12 -4
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/paths.d.ts +20 -5
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +23 -5
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/processes.d.ts +2 -0
- package/dist/utils/processes.d.ts.map +1 -1
- package/dist/utils/processes.js +6 -1
- package/dist/utils/processes.js.map +1 -1
- package/package.json +9 -9
- package/scripts/copy-plugins.js +57 -0
- package/scripts/license-check.js +23 -0
- package/bin/codemie-codex.js +0 -18
- package/bin/codemie-deepagents.js +0 -18
- package/dist/agents/core/BaseMetricsAdapter.d.ts +0 -165
- package/dist/agents/core/BaseMetricsAdapter.d.ts.map +0 -1
- package/dist/agents/core/BaseMetricsAdapter.js +0 -308
- package/dist/agents/core/BaseMetricsAdapter.js.map +0 -1
- package/dist/agents/core/metrics/MetricsOrchestrator.d.ts +0 -81
- package/dist/agents/core/metrics/MetricsOrchestrator.d.ts.map +0 -1
- package/dist/agents/core/metrics/MetricsOrchestrator.js +0 -417
- package/dist/agents/core/metrics/MetricsOrchestrator.js.map +0 -1
- package/dist/agents/core/metrics/core/DeltaWriter.d.ts +0 -49
- package/dist/agents/core/metrics/core/DeltaWriter.d.ts.map +0 -1
- package/dist/agents/core/metrics/core/DeltaWriter.js +0 -152
- package/dist/agents/core/metrics/core/DeltaWriter.js.map +0 -1
- package/dist/agents/core/metrics/core/FileSnapshotter.d.ts +0 -22
- package/dist/agents/core/metrics/core/FileSnapshotter.d.ts.map +0 -1
- package/dist/agents/core/metrics/core/FileSnapshotter.js +0 -74
- package/dist/agents/core/metrics/core/FileSnapshotter.js.map +0 -1
- package/dist/agents/core/metrics/core/SessionCorrelator.d.ts +0 -34
- package/dist/agents/core/metrics/core/SessionCorrelator.d.ts.map +0 -1
- package/dist/agents/core/metrics/core/SessionCorrelator.js +0 -157
- package/dist/agents/core/metrics/core/SessionCorrelator.js.map +0 -1
- package/dist/agents/core/metrics/core/SyncStateManager.d.ts +0 -69
- package/dist/agents/core/metrics/core/SyncStateManager.d.ts.map +0 -1
- package/dist/agents/core/metrics/core/SyncStateManager.js +0 -283
- package/dist/agents/core/metrics/core/SyncStateManager.js.map +0 -1
- package/dist/agents/core/metrics/session/SessionStore.d.ts +0 -43
- package/dist/agents/core/metrics/session/SessionStore.d.ts.map +0 -1
- package/dist/agents/core/metrics/session/SessionStore.js +0 -146
- package/dist/agents/core/metrics/session/SessionStore.js.map +0 -1
- package/dist/agents/core/metrics-config.d.ts +0 -38
- package/dist/agents/core/metrics-config.d.ts.map +0 -1
- package/dist/agents/core/metrics-config.js +0 -96
- package/dist/agents/core/metrics-config.js.map +0 -1
- package/dist/agents/plugins/claude.metrics.d.ts +0 -102
- package/dist/agents/plugins/claude.metrics.d.ts.map +0 -1
- package/dist/agents/plugins/claude.metrics.js +0 -656
- package/dist/agents/plugins/claude.metrics.js.map +0 -1
- package/dist/agents/plugins/claude.plugin.d.ts +0 -19
- package/dist/agents/plugins/claude.plugin.d.ts.map +0 -1
- package/dist/agents/plugins/claude.plugin.js.map +0 -1
- package/dist/agents/plugins/codex.metrics.d.ts +0 -69
- package/dist/agents/plugins/codex.metrics.d.ts.map +0 -1
- package/dist/agents/plugins/codex.metrics.js +0 -483
- package/dist/agents/plugins/codex.metrics.js.map +0 -1
- package/dist/agents/plugins/codex.plugin.d.ts +0 -21
- package/dist/agents/plugins/codex.plugin.d.ts.map +0 -1
- package/dist/agents/plugins/codex.plugin.js +0 -222
- package/dist/agents/plugins/codex.plugin.js.map +0 -1
- package/dist/agents/plugins/deepagents.plugin.d.ts +0 -21
- package/dist/agents/plugins/deepagents.plugin.d.ts.map +0 -1
- package/dist/agents/plugins/deepagents.plugin.js +0 -104
- package/dist/agents/plugins/deepagents.plugin.js.map +0 -1
- package/dist/agents/plugins/gemini.metrics.d.ts +0 -99
- package/dist/agents/plugins/gemini.metrics.d.ts.map +0 -1
- package/dist/agents/plugins/gemini.metrics.js +0 -475
- package/dist/agents/plugins/gemini.metrics.js.map +0 -1
- package/dist/agents/plugins/gemini.plugin.d.ts +0 -16
- package/dist/agents/plugins/gemini.plugin.d.ts.map +0 -1
- package/dist/agents/plugins/gemini.plugin.js +0 -80
- package/dist/agents/plugins/gemini.plugin.js.map +0 -1
- package/dist/agents/plugins/history-parser.d.ts +0 -52
- package/dist/agents/plugins/history-parser.d.ts.map +0 -1
- package/dist/agents/plugins/history-parser.js +0 -155
- package/dist/agents/plugins/history-parser.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.d.ts +0 -28
- package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.d.ts +0 -62
- package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.js +0 -157
- package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-aggregator.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-aggregator.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.d.ts +0 -32
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.js +0 -159
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-post-processor.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-post-processor.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sender.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sender.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.d.ts +0 -36
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.js.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-types.d.ts.map +0 -1
- package/dist/providers/plugins/sso/metrics/sync/sso.metrics-types.js.map +0 -1
|
@@ -0,0 +1,522 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Extension Installer
|
|
3
|
+
*
|
|
4
|
+
* Abstract base class providing common installation logic for agent extensions/plugins.
|
|
5
|
+
* Uses Template Method pattern - subclasses override agent-specific parts.
|
|
6
|
+
*
|
|
7
|
+
* Common logic (~220 lines):
|
|
8
|
+
* - Version detection from manifest JSON
|
|
9
|
+
* - Check if already installed (compare versions)
|
|
10
|
+
* - Copy files recursively from source to target
|
|
11
|
+
* - Verify installation (check critical files, validate JSON)
|
|
12
|
+
* - Return installation result with detailed info
|
|
13
|
+
* - Logging with agent-specific context
|
|
14
|
+
*
|
|
15
|
+
* Agent-specific parts (4 methods to override):
|
|
16
|
+
* - getSourcePath(): Where extension files are bundled
|
|
17
|
+
* - getTargetPath(): Where to install in user's home
|
|
18
|
+
* - getManifestPath(): Relative path to manifest file
|
|
19
|
+
* - getCriticalFiles(): List of files to verify
|
|
20
|
+
*
|
|
21
|
+
* @module agents/core/extension/BaseExtensionInstaller
|
|
22
|
+
*/
|
|
23
|
+
import { mkdir, cp, access, readFile, writeFile, readdir, stat } from 'fs/promises';
|
|
24
|
+
import { join, dirname, relative } from 'path';
|
|
25
|
+
import { constants, existsSync } from 'fs';
|
|
26
|
+
import { logger } from '../../../utils/logger.js';
|
|
27
|
+
/**
|
|
28
|
+
* Base Extension Installer Abstract Class
|
|
29
|
+
*
|
|
30
|
+
* Provides common installation logic shared across all agent extensions.
|
|
31
|
+
* Subclasses provide agent-specific paths and configuration.
|
|
32
|
+
*/
|
|
33
|
+
export class BaseExtensionInstaller {
|
|
34
|
+
agentName;
|
|
35
|
+
/**
|
|
36
|
+
* Constructor
|
|
37
|
+
* @param agentName - Agent name from metadata (e.g., 'claude', 'gemini')
|
|
38
|
+
*/
|
|
39
|
+
constructor(agentName) {
|
|
40
|
+
this.agentName = agentName;
|
|
41
|
+
}
|
|
42
|
+
// ==========================================
|
|
43
|
+
// Common logic (shared across all agents)
|
|
44
|
+
// ==========================================
|
|
45
|
+
/**
|
|
46
|
+
* Get version from manifest JSON file
|
|
47
|
+
*
|
|
48
|
+
* @param basePath - Base directory path (source or target)
|
|
49
|
+
* @returns Version string or null if not found
|
|
50
|
+
*/
|
|
51
|
+
async getVersion(basePath) {
|
|
52
|
+
try {
|
|
53
|
+
const manifestPath = join(basePath, this.getManifestPath());
|
|
54
|
+
const content = await readFile(manifestPath, 'utf-8');
|
|
55
|
+
const json = JSON.parse(content);
|
|
56
|
+
return json.version || null;
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Read local copy configuration from manifest
|
|
64
|
+
*
|
|
65
|
+
* Reads from local-install.json first (preferred), with fallback to plugin.json
|
|
66
|
+
* for backward compatibility.
|
|
67
|
+
*
|
|
68
|
+
* @returns LocalCopyConfig if enabled, null otherwise
|
|
69
|
+
*/
|
|
70
|
+
async readLocalCopyFromManifest() {
|
|
71
|
+
try {
|
|
72
|
+
const sourcePath = this.getSourcePath();
|
|
73
|
+
const manifestDir = dirname(join(sourcePath, this.getManifestPath()));
|
|
74
|
+
// Try reading from separate local-install.json file first (preferred)
|
|
75
|
+
const localInstallPath = join(manifestDir, 'local-install.json');
|
|
76
|
+
try {
|
|
77
|
+
const localInstallContent = await readFile(localInstallPath, 'utf-8');
|
|
78
|
+
const localConfig = JSON.parse(localInstallContent);
|
|
79
|
+
if (!localConfig.enabled)
|
|
80
|
+
return null;
|
|
81
|
+
logger.debug(`[${this.agentName}] Loaded local copy config from local-install.json`);
|
|
82
|
+
// Apply defaults
|
|
83
|
+
return {
|
|
84
|
+
enabled: true,
|
|
85
|
+
strategy: localConfig.strategy || 'hybrid',
|
|
86
|
+
includes: localConfig.includes || [],
|
|
87
|
+
excludes: localConfig.excludes || [],
|
|
88
|
+
targetDir: localConfig.targetDir || '.codemie',
|
|
89
|
+
preserveStructure: localConfig.preserveStructure ?? true,
|
|
90
|
+
overwritePolicy: localConfig.overwritePolicy || 'newer'
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
// Fallback to reading from plugin.json (backward compatibility)
|
|
95
|
+
logger.debug(`[${this.agentName}] local-install.json not found, checking plugin.json`);
|
|
96
|
+
const manifestPath = join(sourcePath, this.getManifestPath());
|
|
97
|
+
const content = await readFile(manifestPath, 'utf-8');
|
|
98
|
+
const manifest = JSON.parse(content);
|
|
99
|
+
if (!manifest.localCopy?.enabled)
|
|
100
|
+
return null;
|
|
101
|
+
logger.debug(`[${this.agentName}] Loaded local copy config from plugin.json (deprecated)`);
|
|
102
|
+
// Apply defaults
|
|
103
|
+
return {
|
|
104
|
+
enabled: true,
|
|
105
|
+
strategy: manifest.localCopy.strategy || 'hybrid',
|
|
106
|
+
includes: manifest.localCopy.includes || [],
|
|
107
|
+
excludes: manifest.localCopy.excludes || [],
|
|
108
|
+
targetDir: manifest.localCopy.targetDir || '.codemie',
|
|
109
|
+
preserveStructure: manifest.localCopy.preserveStructure ?? true,
|
|
110
|
+
overwritePolicy: manifest.localCopy.overwritePolicy || 'newer'
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
logger.debug(`[${this.agentName}] Failed to read local copy config: ${error}`);
|
|
116
|
+
return null;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Install extension files to local working directory
|
|
121
|
+
*
|
|
122
|
+
* @param sourcePath - Source directory path (global installation)
|
|
123
|
+
* @param config - Local copy configuration
|
|
124
|
+
* @returns Result with copied files, skipped files, and errors
|
|
125
|
+
*/
|
|
126
|
+
async installLocal(sourcePath, config) {
|
|
127
|
+
const { resolveLocalTargetPath } = await import('../../../utils/paths.js');
|
|
128
|
+
const result = {
|
|
129
|
+
success: false,
|
|
130
|
+
targetPath: '',
|
|
131
|
+
copiedFiles: [],
|
|
132
|
+
skippedFiles: [],
|
|
133
|
+
errors: []
|
|
134
|
+
};
|
|
135
|
+
try {
|
|
136
|
+
// 1. Resolve target directory
|
|
137
|
+
result.targetPath = resolveLocalTargetPath(config.targetDir);
|
|
138
|
+
logger.info(`[${this.agentName}] Local copy target: ${result.targetPath}`);
|
|
139
|
+
// 2. Check version (skip if up-to-date)
|
|
140
|
+
const sourceVersion = await this.getVersion(sourcePath);
|
|
141
|
+
if (!await this.shouldUpdateLocal(result.targetPath, sourceVersion || 'unknown')) {
|
|
142
|
+
result.success = true;
|
|
143
|
+
result.skippedFiles.push('All files (already up-to-date)');
|
|
144
|
+
return result;
|
|
145
|
+
}
|
|
146
|
+
// 3. Ensure target directory exists
|
|
147
|
+
await mkdir(result.targetPath, { recursive: true });
|
|
148
|
+
// 4. Walk source directory and copy selectively
|
|
149
|
+
const filesInfo = await this.walkDirectory(sourcePath, sourcePath, config);
|
|
150
|
+
for (const file of filesInfo.include) {
|
|
151
|
+
try {
|
|
152
|
+
const sourceFull = join(sourcePath, file);
|
|
153
|
+
const targetFull = join(result.targetPath, file);
|
|
154
|
+
// Ensure parent directory exists
|
|
155
|
+
await mkdir(dirname(targetFull), { recursive: true });
|
|
156
|
+
// Copy with overwrite policy
|
|
157
|
+
if (await this.shouldCopyFile(sourceFull, targetFull, config.overwritePolicy)) {
|
|
158
|
+
await cp(sourceFull, targetFull, { force: true });
|
|
159
|
+
result.copiedFiles.push(file);
|
|
160
|
+
logger.debug(`[${this.agentName}] Copied: ${file}`);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
result.skippedFiles.push(file);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
catch (error) {
|
|
167
|
+
const errorMsg = `Failed to copy ${file}: ${error}`;
|
|
168
|
+
result.errors.push(errorMsg);
|
|
169
|
+
logger.warn(`[${this.agentName}] ${errorMsg}`);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
// 5. Write version tracking file
|
|
173
|
+
await this.writeVersionFile(result.targetPath, sourceVersion);
|
|
174
|
+
result.success = result.errors.length === 0;
|
|
175
|
+
logger.info(`[${this.agentName}] Local copy: ${result.copiedFiles.length} copied, ` +
|
|
176
|
+
`${result.skippedFiles.length} skipped, ${result.errors.length} errors`);
|
|
177
|
+
}
|
|
178
|
+
catch (error) {
|
|
179
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
180
|
+
result.errors.push(errorMsg);
|
|
181
|
+
logger.error(`[${this.agentName}] Local copy failed: ${errorMsg}`);
|
|
182
|
+
}
|
|
183
|
+
return result;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Recursively walk directory and filter files
|
|
187
|
+
*
|
|
188
|
+
* @param basePath - Base source path
|
|
189
|
+
* @param currentPath - Current directory being walked
|
|
190
|
+
* @param config - Local copy configuration
|
|
191
|
+
* @returns Lists of included and excluded files
|
|
192
|
+
*/
|
|
193
|
+
async walkDirectory(basePath, currentPath, config) {
|
|
194
|
+
const result = { include: [], exclude: [] };
|
|
195
|
+
const entries = await readdir(currentPath, { withFileTypes: true });
|
|
196
|
+
for (const entry of entries) {
|
|
197
|
+
const fullPath = join(currentPath, entry.name);
|
|
198
|
+
const relativePath = relative(basePath, fullPath);
|
|
199
|
+
if (entry.isDirectory()) {
|
|
200
|
+
// Recurse into directory
|
|
201
|
+
const nested = await this.walkDirectory(basePath, fullPath, config);
|
|
202
|
+
result.include.push(...nested.include);
|
|
203
|
+
result.exclude.push(...nested.exclude);
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
// Apply filter
|
|
207
|
+
if (this.shouldIncludeFile(relativePath, config)) {
|
|
208
|
+
result.include.push(relativePath);
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
result.exclude.push(relativePath);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return result;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Check if file should be included based on pattern matching strategy
|
|
219
|
+
*
|
|
220
|
+
* @param relativePath - File path relative to base
|
|
221
|
+
* @param config - Local copy configuration
|
|
222
|
+
* @returns true if file should be included
|
|
223
|
+
*/
|
|
224
|
+
shouldIncludeFile(relativePath, config) {
|
|
225
|
+
// Import glob matcher (placeholder - will be implemented)
|
|
226
|
+
// TODO: Import actual pattern matcher from filters module
|
|
227
|
+
const matchesPattern = (path, pattern) => {
|
|
228
|
+
// Simple glob matching - replace with actual implementation
|
|
229
|
+
const regexPattern = pattern
|
|
230
|
+
.replace(/\*/g, '.*')
|
|
231
|
+
.replace(/\?/g, '.');
|
|
232
|
+
return new RegExp(`^${regexPattern}$`).test(path);
|
|
233
|
+
};
|
|
234
|
+
if (config.strategy === 'whitelist') {
|
|
235
|
+
return config.includes.some(pattern => matchesPattern(relativePath, pattern));
|
|
236
|
+
}
|
|
237
|
+
if (config.strategy === 'blacklist') {
|
|
238
|
+
return !config.excludes.some(pattern => matchesPattern(relativePath, pattern));
|
|
239
|
+
}
|
|
240
|
+
// Hybrid: match includes, then apply excludes
|
|
241
|
+
const included = config.includes.some(pattern => matchesPattern(relativePath, pattern));
|
|
242
|
+
if (!included)
|
|
243
|
+
return false;
|
|
244
|
+
const excluded = config.excludes.some(pattern => matchesPattern(relativePath, pattern));
|
|
245
|
+
return !excluded;
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Check if file should be copied based on overwrite policy
|
|
249
|
+
*
|
|
250
|
+
* @param sourcePath - Source file path
|
|
251
|
+
* @param targetPath - Target file path
|
|
252
|
+
* @param policy - Overwrite policy
|
|
253
|
+
* @returns true if file should be copied
|
|
254
|
+
*/
|
|
255
|
+
async shouldCopyFile(sourcePath, targetPath, policy) {
|
|
256
|
+
if (policy === 'always')
|
|
257
|
+
return true;
|
|
258
|
+
if (policy === 'never' && existsSync(targetPath))
|
|
259
|
+
return false;
|
|
260
|
+
// 'newer' policy: compare timestamps
|
|
261
|
+
if (policy === 'newer' && existsSync(targetPath)) {
|
|
262
|
+
try {
|
|
263
|
+
const [sourceStats, targetStats] = await Promise.all([
|
|
264
|
+
stat(sourcePath),
|
|
265
|
+
stat(targetPath)
|
|
266
|
+
]);
|
|
267
|
+
return sourceStats.mtime > targetStats.mtime;
|
|
268
|
+
}
|
|
269
|
+
catch {
|
|
270
|
+
return true; // Copy if stat fails
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
return true; // Copy if target doesn't exist
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Write version file to track local installation
|
|
277
|
+
*
|
|
278
|
+
* @param targetPath - Target directory path
|
|
279
|
+
* @param version - Extension version
|
|
280
|
+
*/
|
|
281
|
+
async writeVersionFile(targetPath, version) {
|
|
282
|
+
const versionFile = join(targetPath, `${this.agentName}.extension.json`);
|
|
283
|
+
const versionInfo = {
|
|
284
|
+
version: version || 'unknown',
|
|
285
|
+
installedAt: new Date().toISOString()
|
|
286
|
+
};
|
|
287
|
+
try {
|
|
288
|
+
await writeFile(versionFile, JSON.stringify(versionInfo, null, 2), 'utf-8');
|
|
289
|
+
logger.debug(`[${this.agentName}] Version file written: ${versionFile}`);
|
|
290
|
+
}
|
|
291
|
+
catch (error) {
|
|
292
|
+
logger.warn(`[${this.agentName}] Failed to write version file: ${error}`);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Check if local extension should be updated
|
|
297
|
+
*
|
|
298
|
+
* @param targetPath - Target directory path
|
|
299
|
+
* @param sourceVersion - Source extension version
|
|
300
|
+
* @returns true if update is needed
|
|
301
|
+
*/
|
|
302
|
+
async shouldUpdateLocal(targetPath, sourceVersion) {
|
|
303
|
+
const versionFile = join(targetPath, `${this.agentName}.extension.json`);
|
|
304
|
+
try {
|
|
305
|
+
const content = await readFile(versionFile, 'utf-8');
|
|
306
|
+
const versionInfo = JSON.parse(content);
|
|
307
|
+
if (versionInfo.version === sourceVersion) {
|
|
308
|
+
logger.debug(`[${this.agentName}] Local extension already at v${sourceVersion}`);
|
|
309
|
+
return false;
|
|
310
|
+
}
|
|
311
|
+
logger.info(`[${this.agentName}] Updating local: v${versionInfo.version} → v${sourceVersion}`);
|
|
312
|
+
return true;
|
|
313
|
+
}
|
|
314
|
+
catch {
|
|
315
|
+
// No version file or invalid = first install
|
|
316
|
+
return true;
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Check if extension is already installed and get version info
|
|
321
|
+
*
|
|
322
|
+
* Verifies:
|
|
323
|
+
* - Target directory exists
|
|
324
|
+
* - Manifest file exists and is readable
|
|
325
|
+
* - Hooks file exists and is readable
|
|
326
|
+
*
|
|
327
|
+
* @returns Object with installation status and version, or null if not installed
|
|
328
|
+
*/
|
|
329
|
+
async getInstalledInfo() {
|
|
330
|
+
try {
|
|
331
|
+
const targetPath = this.getTargetPath();
|
|
332
|
+
// Check if directory exists
|
|
333
|
+
await access(targetPath, constants.F_OK);
|
|
334
|
+
// Verify manifest exists
|
|
335
|
+
const manifestPath = join(targetPath, this.getManifestPath());
|
|
336
|
+
await access(manifestPath, constants.R_OK);
|
|
337
|
+
// Verify hooks exist (critical for extension functionality)
|
|
338
|
+
const hooksPath = join(targetPath, 'hooks', 'hooks.json');
|
|
339
|
+
await access(hooksPath, constants.R_OK);
|
|
340
|
+
// Get installed version
|
|
341
|
+
const version = await this.getVersion(targetPath);
|
|
342
|
+
return { installed: true, version };
|
|
343
|
+
}
|
|
344
|
+
catch {
|
|
345
|
+
return null;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Verify extension structure after installation
|
|
350
|
+
*
|
|
351
|
+
* Validates:
|
|
352
|
+
* - Critical files exist
|
|
353
|
+
* - JSON files are valid
|
|
354
|
+
*
|
|
355
|
+
* @param targetPath - Path to installed extension directory
|
|
356
|
+
* @returns True if extension structure is valid
|
|
357
|
+
*/
|
|
358
|
+
async verifyInstallation(targetPath) {
|
|
359
|
+
try {
|
|
360
|
+
const criticalFiles = this.getCriticalFiles();
|
|
361
|
+
for (const file of criticalFiles) {
|
|
362
|
+
const filePath = join(targetPath, file);
|
|
363
|
+
await access(filePath, constants.R_OK);
|
|
364
|
+
// Verify JSON files are valid
|
|
365
|
+
if (file.endsWith('.json')) {
|
|
366
|
+
const content = await readFile(filePath, 'utf-8');
|
|
367
|
+
JSON.parse(content); // Throws if invalid JSON
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
return true;
|
|
371
|
+
}
|
|
372
|
+
catch {
|
|
373
|
+
return false;
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
/**
|
|
377
|
+
* Install extension to target directory with version-aware updates
|
|
378
|
+
*
|
|
379
|
+
* Installation process:
|
|
380
|
+
* 1. Verify source exists
|
|
381
|
+
* 2. Get source and installed versions (from manifest, not hardcoded)
|
|
382
|
+
* 3. Compare versions - skip if identical
|
|
383
|
+
* 4. Copy files from source to target
|
|
384
|
+
* 5. Verify installation integrity
|
|
385
|
+
* 6. Log results with agent-specific context
|
|
386
|
+
* 7. Return detailed result
|
|
387
|
+
*
|
|
388
|
+
* @returns Installation result with status, action, and version info
|
|
389
|
+
*/
|
|
390
|
+
async install() {
|
|
391
|
+
logger.info(`[${this.agentName}] Checking CodeMie extension...`);
|
|
392
|
+
try {
|
|
393
|
+
const sourcePath = this.getSourcePath();
|
|
394
|
+
const targetPath = this.getTargetPath();
|
|
395
|
+
logger.info(`[${this.agentName}] Extension paths: source=${sourcePath}, target=${targetPath}`);
|
|
396
|
+
// 1. Verify source exists
|
|
397
|
+
logger.info(`[${this.agentName}] Step 1: Verifying source path exists...`);
|
|
398
|
+
try {
|
|
399
|
+
await access(sourcePath, constants.R_OK);
|
|
400
|
+
logger.info(`[${this.agentName}] Source path verified: ${sourcePath}`);
|
|
401
|
+
}
|
|
402
|
+
catch {
|
|
403
|
+
throw new Error(`Source path not found: ${sourcePath}`);
|
|
404
|
+
}
|
|
405
|
+
// 2. Get source and installed versions (from manifest, not hardcoded)
|
|
406
|
+
logger.info(`[${this.agentName}] Step 2: Getting versions...`);
|
|
407
|
+
const sourceVersion = await this.getVersion(sourcePath);
|
|
408
|
+
logger.info(`[${this.agentName}] Source version: ${sourceVersion || 'not found'}`);
|
|
409
|
+
const installedInfo = await this.getInstalledInfo();
|
|
410
|
+
logger.info(`[${this.agentName}] Installed info: ${JSON.stringify(installedInfo)}`);
|
|
411
|
+
// 3. Compare versions - skip if identical
|
|
412
|
+
logger.info(`[${this.agentName}] Step 3: Comparing versions...`);
|
|
413
|
+
let action;
|
|
414
|
+
if (!installedInfo?.installed) {
|
|
415
|
+
action = 'copied';
|
|
416
|
+
logger.info(`[${this.agentName}] Action determined: copied (not installed)`);
|
|
417
|
+
}
|
|
418
|
+
else if (sourceVersion && installedInfo.version && sourceVersion !== installedInfo.version) {
|
|
419
|
+
action = 'updated';
|
|
420
|
+
logger.info(`[${this.agentName}] Action determined: updated (${installedInfo.version} → ${sourceVersion})`);
|
|
421
|
+
}
|
|
422
|
+
else {
|
|
423
|
+
action = 'already_exists';
|
|
424
|
+
logger.info(`[${this.agentName}] Action determined: already_exists (version ${sourceVersion || 'unknown'})`);
|
|
425
|
+
}
|
|
426
|
+
// 4. Copy files from source to target (if needed)
|
|
427
|
+
if (action !== 'already_exists') {
|
|
428
|
+
logger.info(`[${this.agentName}] Step 4: Copying extension files...`);
|
|
429
|
+
// Ensure parent directory exists
|
|
430
|
+
await mkdir(dirname(targetPath), { recursive: true });
|
|
431
|
+
// Copy entire extension directory (recursive, force overwrite)
|
|
432
|
+
await cp(sourcePath, targetPath, {
|
|
433
|
+
recursive: true,
|
|
434
|
+
force: true,
|
|
435
|
+
errorOnExist: false
|
|
436
|
+
});
|
|
437
|
+
logger.info(`[${this.agentName}] Files copied successfully`);
|
|
438
|
+
// 5. Verify installation integrity
|
|
439
|
+
logger.info(`[${this.agentName}] Step 5: Verifying installation...`);
|
|
440
|
+
const isValid = await this.verifyInstallation(targetPath);
|
|
441
|
+
logger.info(`[${this.agentName}] Verification result: ${isValid}`);
|
|
442
|
+
if (!isValid) {
|
|
443
|
+
logger.warn(`[${this.agentName}] Installation verification failed`);
|
|
444
|
+
return {
|
|
445
|
+
success: false,
|
|
446
|
+
targetPath,
|
|
447
|
+
action: 'failed',
|
|
448
|
+
error: 'Extension structure verification failed after copy',
|
|
449
|
+
sourceVersion: sourceVersion || undefined
|
|
450
|
+
};
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
else {
|
|
454
|
+
logger.info(`[${this.agentName}] Skipping copy - extension already up-to-date`);
|
|
455
|
+
}
|
|
456
|
+
// Build result
|
|
457
|
+
logger.info(`[${this.agentName}] Step 6: Building result object...`);
|
|
458
|
+
const result = {
|
|
459
|
+
success: true,
|
|
460
|
+
targetPath,
|
|
461
|
+
action,
|
|
462
|
+
sourceVersion: sourceVersion || undefined,
|
|
463
|
+
installedVersion: installedInfo?.version || undefined
|
|
464
|
+
};
|
|
465
|
+
// 6. Log result inside installer (agent-specific context)
|
|
466
|
+
logger.info(`[${this.agentName}] Step 7: Logging final result (action=${action})...`);
|
|
467
|
+
if (result.action === 'copied') {
|
|
468
|
+
const versionInfo = result.sourceVersion ? ` (v${result.sourceVersion})` : '';
|
|
469
|
+
logger.info(`[${this.agentName}] Extension installed to ${result.targetPath}${versionInfo}`);
|
|
470
|
+
}
|
|
471
|
+
else if (result.action === 'updated') {
|
|
472
|
+
const versionInfo = result.installedVersion && result.sourceVersion
|
|
473
|
+
? ` (v${result.installedVersion} → v${result.sourceVersion})`
|
|
474
|
+
: '';
|
|
475
|
+
logger.info(`[${this.agentName}] Extension updated at ${result.targetPath}${versionInfo}`);
|
|
476
|
+
}
|
|
477
|
+
else {
|
|
478
|
+
const versionInfo = result.sourceVersion ? ` (v${result.sourceVersion})` : '';
|
|
479
|
+
logger.debug(`[${this.agentName}] Extension already up-to-date at ${result.targetPath}${versionInfo}`);
|
|
480
|
+
}
|
|
481
|
+
// 7. Perform local copy to working directory (NEW)
|
|
482
|
+
logger.info(`[${this.agentName}] Checking local copy configuration...`);
|
|
483
|
+
const localConfig = await this.readLocalCopyFromManifest();
|
|
484
|
+
if (localConfig?.enabled) {
|
|
485
|
+
logger.info(`[${this.agentName}] Local copy enabled, copying to working directory...`);
|
|
486
|
+
const localResult = await this.installLocal(sourcePath, localConfig);
|
|
487
|
+
result.localCopy = localResult;
|
|
488
|
+
if (localResult.success && localResult.copiedFiles.length > 0) {
|
|
489
|
+
logger.info(`[${this.agentName}] Local copy: ${localResult.copiedFiles.length} files copied to ${localResult.targetPath}`);
|
|
490
|
+
}
|
|
491
|
+
else if (localResult.success) {
|
|
492
|
+
logger.debug(`[${this.agentName}] Local copy: already up-to-date`);
|
|
493
|
+
}
|
|
494
|
+
else {
|
|
495
|
+
logger.warn(`[${this.agentName}] Local copy failed with ${localResult.errors.length} errors`);
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
else {
|
|
499
|
+
logger.debug(`[${this.agentName}] Local copy not enabled, skipping`);
|
|
500
|
+
}
|
|
501
|
+
// 8. Return detailed result
|
|
502
|
+
logger.info(`[${this.agentName}] Installation complete - returning result`);
|
|
503
|
+
return result;
|
|
504
|
+
}
|
|
505
|
+
catch (error) {
|
|
506
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
507
|
+
const errorStack = error instanceof Error ? error.stack : undefined;
|
|
508
|
+
logger.error(`[${this.agentName}] Extension installation failed: ${errorMsg}`);
|
|
509
|
+
if (errorStack) {
|
|
510
|
+
logger.debug(`[${this.agentName}] Error stack: ${errorStack}`);
|
|
511
|
+
}
|
|
512
|
+
logger.warn(`[${this.agentName}] Continuing without extension - hooks will not be available`);
|
|
513
|
+
return {
|
|
514
|
+
success: false,
|
|
515
|
+
targetPath: this.getTargetPath(),
|
|
516
|
+
action: 'failed',
|
|
517
|
+
error: errorMsg
|
|
518
|
+
};
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
//# sourceMappingURL=BaseExtensionInstaller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseExtensionInstaller.js","sourceRoot":"","sources":["../../../../src/agents/core/extension/BaseExtensionInstaller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-helpers.d.ts","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAA0B,MAAM,YAAY,CAAC;AAGtF,OAAO,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"lifecycle-helpers.d.ts","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAA0B,MAAM,YAAY,CAAC;AAGtF,OAAO,0BAA0B,CAAC;AAiFlC;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAS5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
|
@@ -87,12 +87,26 @@ async function resolveHook(lifecycle, hookName, provider, agentName) {
|
|
|
87
87
|
if (specificHook) {
|
|
88
88
|
return specificHook;
|
|
89
89
|
}
|
|
90
|
-
// Only wildcard hook exists
|
|
90
|
+
// Only wildcard hook exists - chain with agent's default hook if available
|
|
91
91
|
if (wildcardHook) {
|
|
92
|
+
const agentDefaultHook = lifecycle?.[hookName];
|
|
93
|
+
// If agent has a default hook, chain wildcard → agent default
|
|
94
|
+
if (agentDefaultHook) {
|
|
95
|
+
return (async function (...args) {
|
|
96
|
+
// Execute wildcard hook first (provider customization)
|
|
97
|
+
const intermediateResult = await wildcardHook.call(this, ...args);
|
|
98
|
+
// Execute agent's default hook with wildcard's result
|
|
99
|
+
// Replace first arg (env) with intermediate result
|
|
100
|
+
const finalArgs = [...args];
|
|
101
|
+
finalArgs[0] = intermediateResult;
|
|
102
|
+
return await agentDefaultHook.call(this, ...finalArgs);
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
// No agent default hook, just return wildcard
|
|
92
106
|
return wildcardHook;
|
|
93
107
|
}
|
|
94
108
|
}
|
|
95
|
-
// 2. Fall back to agent's default hook
|
|
109
|
+
// 2. Fall back to agent's default hook (no provider hooks)
|
|
96
110
|
if (!lifecycle)
|
|
97
111
|
return undefined;
|
|
98
112
|
return lifecycle[hookName];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-helpers.js","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAGH,uEAAuE;AACvE,kFAAkF;AAClF,OAAO,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE;;;;;;;;;;;;;;;;;;GAkBG;AACH,KAAK,UAAU,WAAW,CACxB,SAAqC,EACrC,QAAW,EACX,QAA4B,EAC5B,SAA6B;IAE7B,6DAA6D;IAC7D,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,cAAc,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE9D,MAAM,YAAY,GAAG,cAAc,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,cAAc,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAEzE,mDAAmD;QACnD,IAAI,YAAY,IAAI,YAAY,EAAE,CAAC;YACjC,gCAAgC;YAChC,OAAO,CAAC,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;gBAC/B,8BAA8B;gBAC9B,MAAM,kBAAkB,GAAG,MAAO,YAAoB,CAAC,GAAG,IAAI,CAAC,CAAC;gBAChE,qDAAqD;gBACrD,wEAAwE;gBACxE,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC5B,SAAS,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC;gBAClC,OAAO,MAAO,YAAoB,CAAC,GAAG,SAAS,CAAC,CAAC;YACnD,CAAC,CAA8B,CAAC;QAClC,CAAC;QAED,kCAAkC;QAClC,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAyC,CAAC;QACnD,CAAC;QAED,
|
|
1
|
+
{"version":3,"file":"lifecycle-helpers.js","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,YAAY,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC"}
|