mcp-adr-analysis-server 2.1.9 → 2.1.19
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 +55 -8
- package/dist/.tsbuildinfo +1 -1
- package/dist/src/index.d.ts +78 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1793 -577
- package/dist/src/index.js.map +1 -1
- package/dist/src/prompts/index.d.ts.map +1 -1
- package/dist/src/prompts/index.js +23 -6
- package/dist/src/prompts/index.js.map +1 -1
- package/dist/src/prompts/validated-pattern-prompts.d.ts +33 -0
- package/dist/src/prompts/validated-pattern-prompts.d.ts.map +1 -0
- package/dist/src/prompts/validated-pattern-prompts.js +337 -0
- package/dist/src/prompts/validated-pattern-prompts.js.map +1 -0
- package/dist/src/resources/adr-by-id-resource.d.ts +116 -0
- package/dist/src/resources/adr-by-id-resource.d.ts.map +1 -0
- package/dist/src/resources/adr-by-id-resource.js +213 -0
- package/dist/src/resources/adr-by-id-resource.js.map +1 -0
- package/dist/src/resources/code-quality-resource.d.ts +105 -0
- package/dist/src/resources/code-quality-resource.d.ts.map +1 -0
- package/dist/src/resources/code-quality-resource.js +282 -0
- package/dist/src/resources/code-quality-resource.js.map +1 -0
- package/dist/src/resources/deployment-history-resource.d.ts +214 -0
- package/dist/src/resources/deployment-history-resource.d.ts.map +1 -0
- package/dist/src/resources/deployment-history-resource.js +308 -0
- package/dist/src/resources/deployment-history-resource.js.map +1 -0
- package/dist/src/resources/deployment-status-resource.d.ts +256 -0
- package/dist/src/resources/deployment-status-resource.d.ts.map +1 -0
- package/dist/src/resources/deployment-status-resource.js +665 -0
- package/dist/src/resources/deployment-status-resource.js.map +1 -0
- package/dist/src/resources/environment-analysis-resource.d.ts +237 -0
- package/dist/src/resources/environment-analysis-resource.d.ts.map +1 -0
- package/dist/src/resources/environment-analysis-resource.js +646 -0
- package/dist/src/resources/environment-analysis-resource.js.map +1 -0
- package/dist/src/resources/index.d.ts +6 -2
- package/dist/src/resources/index.d.ts.map +1 -1
- package/dist/src/resources/index.js +247 -492
- package/dist/src/resources/index.js.map +1 -1
- package/dist/src/resources/memory-snapshots-resource.d.ts +180 -0
- package/dist/src/resources/memory-snapshots-resource.d.ts.map +1 -0
- package/dist/src/resources/memory-snapshots-resource.js +847 -0
- package/dist/src/resources/memory-snapshots-resource.js.map +1 -0
- package/dist/src/resources/pattern-base-code-by-platform-resource.d.ts +35 -0
- package/dist/src/resources/pattern-base-code-by-platform-resource.d.ts.map +1 -0
- package/dist/src/resources/pattern-base-code-by-platform-resource.js +72 -0
- package/dist/src/resources/pattern-base-code-by-platform-resource.js.map +1 -0
- package/dist/src/resources/pattern-by-name-resource.d.ts +53 -0
- package/dist/src/resources/pattern-by-name-resource.d.ts.map +1 -0
- package/dist/src/resources/pattern-by-name-resource.js +200 -0
- package/dist/src/resources/pattern-by-name-resource.js.map +1 -0
- package/dist/src/resources/pattern-sources-by-platform-resource.d.ts +26 -0
- package/dist/src/resources/pattern-sources-by-platform-resource.d.ts.map +1 -0
- package/dist/src/resources/pattern-sources-by-platform-resource.js +59 -0
- package/dist/src/resources/pattern-sources-by-platform-resource.js.map +1 -0
- package/dist/src/resources/project-metrics-resource.d.ts +180 -0
- package/dist/src/resources/project-metrics-resource.d.ts.map +1 -0
- package/dist/src/resources/project-metrics-resource.js +487 -0
- package/dist/src/resources/project-metrics-resource.js.map +1 -0
- package/dist/src/resources/project-status-resource.d.ts +75 -0
- package/dist/src/resources/project-status-resource.d.ts.map +1 -0
- package/dist/src/resources/project-status-resource.js +189 -0
- package/dist/src/resources/project-status-resource.js.map +1 -0
- package/dist/src/resources/research-by-topic-resource.d.ts +21 -0
- package/dist/src/resources/research-by-topic-resource.d.ts.map +1 -0
- package/dist/src/resources/research-by-topic-resource.js +125 -0
- package/dist/src/resources/research-by-topic-resource.js.map +1 -0
- package/dist/src/resources/research-index-resource.d.ts +100 -0
- package/dist/src/resources/research-index-resource.d.ts.map +1 -0
- package/dist/src/resources/research-index-resource.js +200 -0
- package/dist/src/resources/research-index-resource.js.map +1 -0
- package/dist/src/resources/resource-cache.d.ts +144 -0
- package/dist/src/resources/resource-cache.d.ts.map +1 -0
- package/dist/src/resources/resource-cache.js +316 -0
- package/dist/src/resources/resource-cache.js.map +1 -0
- package/dist/src/resources/resource-router.d.ts +45 -0
- package/dist/src/resources/resource-router.d.ts.map +1 -0
- package/dist/src/resources/resource-router.js +96 -0
- package/dist/src/resources/resource-router.js.map +1 -0
- package/dist/src/resources/rule-by-id-resource.d.ts +38 -0
- package/dist/src/resources/rule-by-id-resource.d.ts.map +1 -0
- package/dist/src/resources/rule-by-id-resource.js +104 -0
- package/dist/src/resources/rule-by-id-resource.js.map +1 -0
- package/dist/src/resources/rule-catalog-resource.d.ts +126 -0
- package/dist/src/resources/rule-catalog-resource.d.ts.map +1 -0
- package/dist/src/resources/rule-catalog-resource.js +224 -0
- package/dist/src/resources/rule-catalog-resource.js.map +1 -0
- package/dist/src/resources/rule-generation-resource.d.ts +80 -0
- package/dist/src/resources/rule-generation-resource.d.ts.map +1 -0
- package/dist/src/resources/rule-generation-resource.js +282 -0
- package/dist/src/resources/rule-generation-resource.js.map +1 -0
- package/dist/src/resources/technology-by-name-resource.d.ts +43 -0
- package/dist/src/resources/technology-by-name-resource.d.ts.map +1 -0
- package/dist/src/resources/technology-by-name-resource.js +176 -0
- package/dist/src/resources/technology-by-name-resource.js.map +1 -0
- package/dist/src/resources/todo-by-id-resource.d.ts +46 -0
- package/dist/src/resources/todo-by-id-resource.d.ts.map +1 -0
- package/dist/src/resources/todo-by-id-resource.js +192 -0
- package/dist/src/resources/todo-by-id-resource.js.map +1 -0
- package/dist/src/resources/todo-list-resource.d.ts +96 -0
- package/dist/src/resources/todo-list-resource.d.ts.map +1 -0
- package/dist/src/resources/todo-list-resource.js +209 -0
- package/dist/src/resources/todo-list-resource.js.map +1 -0
- package/dist/src/resources/validated-pattern-by-platform-resource.d.ts +14 -0
- package/dist/src/resources/validated-pattern-by-platform-resource.d.ts.map +1 -0
- package/dist/src/resources/validated-pattern-by-platform-resource.js +45 -0
- package/dist/src/resources/validated-pattern-by-platform-resource.js.map +1 -0
- package/dist/src/resources/validated-patterns-catalog-resource.d.ts +36 -0
- package/dist/src/resources/validated-patterns-catalog-resource.d.ts.map +1 -0
- package/dist/src/resources/validated-patterns-catalog-resource.js +57 -0
- package/dist/src/resources/validated-patterns-catalog-resource.js.map +1 -0
- package/dist/src/templates/domain-knowledge-templates.d.ts.map +1 -1
- package/dist/src/templates/domain-knowledge-templates.js +49 -49
- package/dist/src/templates/domain-knowledge-templates.js.map +1 -1
- package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
- package/dist/src/tools/adr-bootstrap-validation-tool.js +214 -4
- package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
- package/dist/src/tools/adr-suggestion-tool.d.ts +2 -2
- package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
- package/dist/src/tools/adr-suggestion-tool.js +129 -12
- package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
- package/dist/src/tools/adr-validation-tool.d.ts +98 -0
- package/dist/src/tools/adr-validation-tool.d.ts.map +1 -0
- package/dist/src/tools/adr-validation-tool.js +372 -0
- package/dist/src/tools/adr-validation-tool.js.map +1 -0
- package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +262 -0
- package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -0
- package/dist/src/tools/bootstrap-validation-loop-tool.js +1934 -0
- package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -0
- package/dist/src/tools/conversation-memory-tool.d.ts +48 -0
- package/dist/src/tools/conversation-memory-tool.d.ts.map +1 -0
- package/dist/src/tools/conversation-memory-tool.js +254 -0
- package/dist/src/tools/conversation-memory-tool.js.map +1 -0
- package/dist/src/tools/deployment-analysis-tool.d.ts.map +1 -1
- package/dist/src/tools/deployment-analysis-tool.js +82 -6
- package/dist/src/tools/deployment-analysis-tool.js.map +1 -1
- package/dist/src/tools/deployment-guidance-tool.d.ts.map +1 -1
- package/dist/src/tools/deployment-guidance-tool.js +126 -25
- package/dist/src/tools/deployment-guidance-tool.js.map +1 -1
- package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
- package/dist/src/tools/deployment-readiness-tool.js +166 -5
- package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
- package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
- package/dist/src/tools/environment-analysis-tool.js +36 -1
- package/dist/src/tools/environment-analysis-tool.js.map +1 -1
- package/dist/src/tools/expand-analysis-tool.d.ts +23 -0
- package/dist/src/tools/expand-analysis-tool.d.ts.map +1 -0
- package/dist/src/tools/expand-analysis-tool.js +107 -0
- package/dist/src/tools/expand-analysis-tool.js.map +1 -0
- package/dist/src/tools/get-server-context-tool.d.ts +67 -0
- package/dist/src/tools/get-server-context-tool.d.ts.map +1 -0
- package/dist/src/tools/get-server-context-tool.js +75 -0
- package/dist/src/tools/get-server-context-tool.js.map +1 -0
- package/dist/src/tools/interactive-adr-planning-tool.d.ts.map +1 -1
- package/dist/src/tools/interactive-adr-planning-tool.js +82 -9
- package/dist/src/tools/interactive-adr-planning-tool.js.map +1 -1
- package/dist/src/tools/llm-cloud-management-tool.d.ts +62 -0
- package/dist/src/tools/llm-cloud-management-tool.d.ts.map +1 -0
- package/dist/src/tools/llm-cloud-management-tool.js +202 -0
- package/dist/src/tools/llm-cloud-management-tool.js.map +1 -0
- package/dist/src/tools/llm-database-management-tool.d.ts +62 -0
- package/dist/src/tools/llm-database-management-tool.d.ts.map +1 -0
- package/dist/src/tools/llm-database-management-tool.js +203 -0
- package/dist/src/tools/llm-database-management-tool.js.map +1 -0
- package/dist/src/tools/llm-web-search-tool.d.ts +59 -0
- package/dist/src/tools/llm-web-search-tool.d.ts.map +1 -0
- package/dist/src/tools/llm-web-search-tool.js +165 -0
- package/dist/src/tools/llm-web-search-tool.js.map +1 -0
- package/dist/src/tools/mcp-planning-tool.d.ts.map +1 -1
- package/dist/src/tools/mcp-planning-tool.js +10 -3
- package/dist/src/tools/mcp-planning-tool.js.map +1 -1
- package/dist/src/tools/memory-loading-tool.d.ts.map +1 -1
- package/dist/src/tools/memory-loading-tool.js +4 -2
- package/dist/src/tools/memory-loading-tool.js.map +1 -1
- package/dist/src/tools/perform-research-tool.d.ts +61 -0
- package/dist/src/tools/perform-research-tool.d.ts.map +1 -0
- package/dist/src/tools/perform-research-tool.js +324 -0
- package/dist/src/tools/perform-research-tool.js.map +1 -0
- package/dist/src/tools/research-question-tool.d.ts.map +1 -1
- package/dist/src/tools/research-question-tool.js +11 -9
- package/dist/src/tools/research-question-tool.js.map +1 -1
- package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
- package/dist/src/tools/review-existing-adrs-tool.js +42 -3
- package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
- package/dist/src/tools/tool-chain-orchestrator.d.ts +15 -94
- package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
- package/dist/src/tools/tool-chain-orchestrator.js +2 -2
- package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
- package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +25 -120
- package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
- package/dist/src/tools/troubleshoot-guided-workflow-tool.js +91 -2
- package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
- package/dist/src/types/ape-framework.d.ts +50 -283
- package/dist/src/types/ape-framework.d.ts.map +1 -1
- package/dist/src/types/conversation-context.d.ts.map +1 -1
- package/dist/src/types/conversation-context.js +12 -12
- package/dist/src/types/conversation-context.js.map +1 -1
- package/dist/src/types/conversation-memory.d.ts +184 -0
- package/dist/src/types/conversation-memory.d.ts.map +1 -0
- package/dist/src/types/conversation-memory.js +8 -0
- package/dist/src/types/conversation-memory.js.map +1 -0
- package/dist/src/types/index.d.ts +112 -339
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/knowledge-generation.d.ts +96 -401
- package/dist/src/types/knowledge-generation.d.ts.map +1 -1
- package/dist/src/types/knowledge-graph-schemas.d.ts +77 -715
- package/dist/src/types/knowledge-graph-schemas.d.ts.map +1 -1
- package/dist/src/types/knowledge-graph-schemas.js +8 -8
- package/dist/src/types/knowledge-graph-schemas.js.map +1 -1
- package/dist/src/types/memory-entities.d.ts +1230 -6164
- package/dist/src/types/memory-entities.d.ts.map +1 -1
- package/dist/src/types/memory-entities.js +8 -8
- package/dist/src/types/memory-entities.js.map +1 -1
- package/dist/src/types/reflexion-framework.d.ts +35 -264
- package/dist/src/types/reflexion-framework.d.ts.map +1 -1
- package/dist/src/types/reflexion-framework.js +1 -1
- package/dist/src/types/reflexion-framework.js.map +1 -1
- package/dist/src/types/state-reinforcement.d.ts +87 -0
- package/dist/src/types/state-reinforcement.d.ts.map +1 -0
- package/dist/src/types/state-reinforcement.js +5 -0
- package/dist/src/types/state-reinforcement.js.map +1 -0
- package/dist/src/types/tiered-response.d.ts +61 -0
- package/dist/src/types/tiered-response.d.ts.map +1 -0
- package/dist/src/types/tiered-response.js +8 -0
- package/dist/src/types/tiered-response.js.map +1 -0
- package/dist/src/types/tool-context.d.ts +50 -0
- package/dist/src/types/tool-context.d.ts.map +1 -0
- package/dist/src/types/tool-context.js +20 -0
- package/dist/src/types/tool-context.js.map +1 -0
- package/dist/src/utils/adr-action-analyzer.d.ts +23 -0
- package/dist/src/utils/adr-action-analyzer.d.ts.map +1 -0
- package/dist/src/utils/adr-action-analyzer.js +323 -0
- package/dist/src/utils/adr-action-analyzer.js.map +1 -0
- package/dist/src/utils/adr-context-detector.d.ts +33 -0
- package/dist/src/utils/adr-context-detector.d.ts.map +1 -0
- package/dist/src/utils/adr-context-detector.js +279 -0
- package/dist/src/utils/adr-context-detector.js.map +1 -0
- package/dist/src/utils/adr-discovery.d.ts +28 -2
- package/dist/src/utils/adr-discovery.d.ts.map +1 -1
- package/dist/src/utils/adr-discovery.js +91 -7
- package/dist/src/utils/adr-discovery.js.map +1 -1
- package/dist/src/utils/adr-knowledge-initializer.d.ts +54 -0
- package/dist/src/utils/adr-knowledge-initializer.d.ts.map +1 -0
- package/dist/src/utils/adr-knowledge-initializer.js +240 -0
- package/dist/src/utils/adr-knowledge-initializer.js.map +1 -0
- package/dist/src/utils/adr-timeline-extractor.d.ts +21 -0
- package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -0
- package/dist/src/utils/adr-timeline-extractor.js +294 -0
- package/dist/src/utils/adr-timeline-extractor.js.map +1 -0
- package/dist/src/utils/adr-timeline-types.d.ts +234 -0
- package/dist/src/utils/adr-timeline-types.d.ts.map +1 -0
- package/dist/src/utils/adr-timeline-types.js +7 -0
- package/dist/src/utils/adr-timeline-types.js.map +1 -0
- package/dist/src/utils/ai-executor.d.ts +36 -0
- package/dist/src/utils/ai-executor.d.ts.map +1 -1
- package/dist/src/utils/ai-executor.js +39 -3
- package/dist/src/utils/ai-executor.js.map +1 -1
- package/dist/src/utils/apply-cot-enhancement.d.ts.map +1 -1
- package/dist/src/utils/apply-cot-enhancement.js +15 -15
- package/dist/src/utils/apply-cot-enhancement.js.map +1 -1
- package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
- package/dist/src/utils/automatic-prompt-engineering.js +68 -58
- package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
- package/dist/src/utils/conditional-request.d.ts +105 -0
- package/dist/src/utils/conditional-request.d.ts.map +1 -0
- package/dist/src/utils/conditional-request.js +186 -0
- package/dist/src/utils/conditional-request.js.map +1 -0
- package/dist/src/utils/config.d.ts +72 -18
- package/dist/src/utils/config.d.ts.map +1 -1
- package/dist/src/utils/config.js +75 -0
- package/dist/src/utils/config.js.map +1 -1
- package/dist/src/utils/context-document-manager.d.ts +112 -0
- package/dist/src/utils/context-document-manager.d.ts.map +1 -0
- package/dist/src/utils/context-document-manager.js +351 -0
- package/dist/src/utils/context-document-manager.js.map +1 -0
- package/dist/src/utils/conversation-memory-manager.d.ts +86 -0
- package/dist/src/utils/conversation-memory-manager.d.ts.map +1 -0
- package/dist/src/utils/conversation-memory-manager.js +443 -0
- package/dist/src/utils/conversation-memory-manager.js.map +1 -0
- package/dist/src/utils/dag-executor.d.ts +106 -0
- package/dist/src/utils/dag-executor.d.ts.map +1 -0
- package/dist/src/utils/dag-executor.js +420 -0
- package/dist/src/utils/dag-executor.js.map +1 -0
- package/dist/src/utils/deployment-analysis.d.ts.map +1 -1
- package/dist/src/utils/deployment-analysis.js +17 -9
- package/dist/src/utils/deployment-analysis.js.map +1 -1
- package/dist/src/utils/deployment-type-registry.d.ts +52 -0
- package/dist/src/utils/deployment-type-registry.d.ts.map +1 -0
- package/dist/src/utils/deployment-type-registry.js +543 -0
- package/dist/src/utils/deployment-type-registry.js.map +1 -0
- package/dist/src/utils/dynamic-deployment-intelligence.d.ts +117 -0
- package/dist/src/utils/dynamic-deployment-intelligence.d.ts.map +1 -0
- package/dist/src/utils/dynamic-deployment-intelligence.js +445 -0
- package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -0
- package/dist/src/utils/environment-analysis.d.ts.map +1 -1
- package/dist/src/utils/environment-analysis.js +63 -44
- package/dist/src/utils/environment-analysis.js.map +1 -1
- package/dist/src/utils/environment-capability-registry.d.ts +101 -0
- package/dist/src/utils/environment-capability-registry.d.ts.map +1 -0
- package/dist/src/utils/environment-capability-registry.js +489 -0
- package/dist/src/utils/environment-capability-registry.js.map +1 -0
- package/dist/src/utils/index.d.ts +3 -3
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +3 -3
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/knowledge-generation.d.ts.map +1 -1
- package/dist/src/utils/knowledge-generation.js +61 -35
- package/dist/src/utils/knowledge-generation.js.map +1 -1
- package/dist/src/utils/knowledge-graph-manager.d.ts +19 -0
- package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
- package/dist/src/utils/knowledge-graph-manager.js +165 -1
- package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
- package/dist/src/utils/llm-artifact-detector.d.ts.map +1 -1
- package/dist/src/utils/llm-artifact-detector.js +28 -24
- package/dist/src/utils/llm-artifact-detector.js.map +1 -1
- package/dist/src/utils/mermaid-diagrams.d.ts +101 -0
- package/dist/src/utils/mermaid-diagrams.d.ts.map +1 -0
- package/dist/src/utils/mermaid-diagrams.js +445 -0
- package/dist/src/utils/mermaid-diagrams.js.map +1 -0
- package/dist/src/utils/monitoring.d.ts +249 -0
- package/dist/src/utils/monitoring.d.ts.map +1 -0
- package/dist/src/utils/monitoring.js +513 -0
- package/dist/src/utils/monitoring.js.map +1 -0
- package/dist/src/utils/pattern-contribution-helper.d.ts +60 -0
- package/dist/src/utils/pattern-contribution-helper.d.ts.map +1 -0
- package/dist/src/utils/pattern-contribution-helper.js +308 -0
- package/dist/src/utils/pattern-contribution-helper.js.map +1 -0
- package/dist/src/utils/pattern-loader.d.ts +183 -0
- package/dist/src/utils/pattern-loader.d.ts.map +1 -0
- package/dist/src/utils/pattern-loader.js +200 -0
- package/dist/src/utils/pattern-loader.js.map +1 -0
- package/dist/src/utils/pattern-research-utility.d.ts +107 -0
- package/dist/src/utils/pattern-research-utility.d.ts.map +1 -0
- package/dist/src/utils/pattern-research-utility.js +360 -0
- package/dist/src/utils/pattern-research-utility.js.map +1 -0
- package/dist/src/utils/pattern-to-dag-converter.d.ts +62 -0
- package/dist/src/utils/pattern-to-dag-converter.d.ts.map +1 -0
- package/dist/src/utils/pattern-to-dag-converter.js +265 -0
- package/dist/src/utils/pattern-to-dag-converter.js.map +1 -0
- package/dist/src/utils/platform-detector.d.ts +86 -0
- package/dist/src/utils/platform-detector.d.ts.map +1 -0
- package/dist/src/utils/platform-detector.js +509 -0
- package/dist/src/utils/platform-detector.js.map +1 -0
- package/dist/src/utils/prompt-composition.d.ts.map +1 -1
- package/dist/src/utils/prompt-composition.js +1 -4
- package/dist/src/utils/prompt-composition.js.map +1 -1
- package/dist/src/utils/reflexion.d.ts.map +1 -1
- package/dist/src/utils/reflexion.js +51 -42
- package/dist/src/utils/reflexion.js.map +1 -1
- package/dist/src/utils/research-integration.d.ts.map +1 -1
- package/dist/src/utils/research-integration.js +8 -2
- package/dist/src/utils/research-integration.js.map +1 -1
- package/dist/src/utils/research-orchestrator.d.ts +209 -0
- package/dist/src/utils/research-orchestrator.d.ts.map +1 -0
- package/dist/src/utils/research-orchestrator.js +863 -0
- package/dist/src/utils/research-orchestrator.js.map +1 -0
- package/dist/src/utils/research-questions.d.ts.map +1 -1
- package/dist/src/utils/research-questions.js +4 -1
- package/dist/src/utils/research-questions.js.map +1 -1
- package/dist/src/utils/resource-extractor.d.ts +57 -0
- package/dist/src/utils/resource-extractor.d.ts.map +1 -0
- package/dist/src/utils/resource-extractor.js +323 -0
- package/dist/src/utils/resource-extractor.js.map +1 -0
- package/dist/src/utils/resource-versioning.d.ts +124 -0
- package/dist/src/utils/resource-versioning.d.ts.map +1 -0
- package/dist/src/utils/resource-versioning.js +272 -0
- package/dist/src/utils/resource-versioning.js.map +1 -0
- package/dist/src/utils/root-manager.d.ts +118 -0
- package/dist/src/utils/root-manager.d.ts.map +1 -0
- package/dist/src/utils/root-manager.js +154 -0
- package/dist/src/utils/root-manager.js.map +1 -0
- package/dist/src/utils/rule-generation.d.ts.map +1 -1
- package/dist/src/utils/rule-generation.js +4 -1
- package/dist/src/utils/rule-generation.js.map +1 -1
- package/dist/src/utils/server-context-generator.d.ts +47 -0
- package/dist/src/utils/server-context-generator.d.ts.map +1 -0
- package/dist/src/utils/server-context-generator.js +666 -0
- package/dist/src/utils/server-context-generator.js.map +1 -0
- package/dist/src/utils/state-reinforcement-manager.d.ts +60 -0
- package/dist/src/utils/state-reinforcement-manager.d.ts.map +1 -0
- package/dist/src/utils/state-reinforcement-manager.js +200 -0
- package/dist/src/utils/state-reinforcement-manager.js.map +1 -0
- package/dist/src/utils/system-card-manager.d.ts +194 -0
- package/dist/src/utils/system-card-manager.d.ts.map +1 -0
- package/dist/src/utils/system-card-manager.js +336 -0
- package/dist/src/utils/system-card-manager.js.map +1 -0
- package/dist/src/utils/tiered-response-manager.d.ts +40 -0
- package/dist/src/utils/tiered-response-manager.d.ts.map +1 -0
- package/dist/src/utils/tiered-response-manager.js +243 -0
- package/dist/src/utils/tiered-response-manager.js.map +1 -0
- package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
- package/dist/src/utils/tree-sitter-analyzer.js +83 -11
- package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
- package/dist/src/utils/validated-pattern-definitions.d.ts +219 -0
- package/dist/src/utils/validated-pattern-definitions.d.ts.map +1 -0
- package/dist/src/utils/validated-pattern-definitions.js +1511 -0
- package/dist/src/utils/validated-pattern-definitions.js.map +1 -0
- package/package.json +21 -12
- package/dist/src/prompts/todo-prompts.d.ts +0 -49
- package/dist/src/prompts/todo-prompts.d.ts.map +0 -1
- package/dist/src/prompts/todo-prompts.js +0 -824
- package/dist/src/prompts/todo-prompts.js.map +0 -1
- package/dist/src/types/todo-json-schemas.d.ts +0 -17
- package/dist/src/types/todo-json-schemas.d.ts.map +0 -1
- package/dist/src/types/todo-json-schemas.js +0 -9
- package/dist/src/types/todo-json-schemas.js.map +0 -1
- package/dist/src/utils/todo-file-watcher.d.ts +0 -14
- package/dist/src/utils/todo-file-watcher.d.ts.map +0 -1
- package/dist/src/utils/todo-file-watcher.js +0 -25
- package/dist/src/utils/todo-file-watcher.js.map +0 -1
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM-Managed Database Management Tool
|
|
3
|
+
*
|
|
4
|
+
* Provides LLM-driven database operations with research-driven approach
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolContext } from '../types/tool-context.js';
|
|
7
|
+
/**
|
|
8
|
+
* LLM-managed database operations with research-driven approach
|
|
9
|
+
*
|
|
10
|
+
* @description Executes database operations using LLM to research best practices,
|
|
11
|
+
* generate appropriate commands, and execute them. Supports PostgreSQL, MongoDB, Redis, MySQL, and MariaDB.
|
|
12
|
+
*
|
|
13
|
+
* @param {Object} args - Database management configuration parameters
|
|
14
|
+
* @param {string} args.database - Database type (postgresql, mongodb, redis, mysql, mariadb)
|
|
15
|
+
* @param {string} args.action - Action to perform
|
|
16
|
+
* @param {Object} [args.parameters] - Action parameters
|
|
17
|
+
* @param {string} args.llmInstructions - LLM instructions for command generation
|
|
18
|
+
* @param {boolean} [args.researchFirst] - Research best approach first (default: true)
|
|
19
|
+
* @param {string} [args.projectPath] - Path to project root (defaults to cwd)
|
|
20
|
+
* @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
|
|
21
|
+
*
|
|
22
|
+
* @returns {Promise<any>} Database operation results with LLM analysis
|
|
23
|
+
*
|
|
24
|
+
* @throws {McpAdrError} When required parameters are missing or operation fails
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* // PostgreSQL database creation
|
|
29
|
+
* const result = await llmDatabaseManagement({
|
|
30
|
+
* database: 'postgresql',
|
|
31
|
+
* action: 'create_database',
|
|
32
|
+
* parameters: { dbName: 'myapp', owner: 'myuser' },
|
|
33
|
+
* llmInstructions: 'Create a secure database with proper permissions'
|
|
34
|
+
* });
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* // MongoDB collection optimization
|
|
40
|
+
* const result = await llmDatabaseManagement({
|
|
41
|
+
* database: 'mongodb',
|
|
42
|
+
* action: 'optimize_collection',
|
|
43
|
+
* parameters: { collection: 'users', indexFields: ['email', 'created_at'] },
|
|
44
|
+
* llmInstructions: 'Optimize for read-heavy workloads with proper indexing'
|
|
45
|
+
* });
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* @since 2.1.0
|
|
49
|
+
* @category Database Management
|
|
50
|
+
* @category LLM
|
|
51
|
+
* @mcp-tool
|
|
52
|
+
*/
|
|
53
|
+
export declare function llmDatabaseManagement(args: {
|
|
54
|
+
database: 'postgresql' | 'mongodb' | 'redis' | 'mysql' | 'mariadb';
|
|
55
|
+
action: string;
|
|
56
|
+
parameters?: Record<string, any>;
|
|
57
|
+
llmInstructions: string;
|
|
58
|
+
researchFirst?: boolean;
|
|
59
|
+
projectPath?: string;
|
|
60
|
+
adrDirectory?: string;
|
|
61
|
+
}, context?: ToolContext): Promise<any>;
|
|
62
|
+
//# sourceMappingURL=llm-database-management-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-database-management-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/llm-database-management-tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE;IACJ,QAAQ,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,EACD,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,GAAG,CAAC,CAmHd"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM-Managed Database Management Tool
|
|
3
|
+
*
|
|
4
|
+
* Provides LLM-driven database operations with research-driven approach
|
|
5
|
+
*/
|
|
6
|
+
import { McpAdrError } from '../types/index.js';
|
|
7
|
+
import { ResearchOrchestrator } from '../utils/research-orchestrator.js';
|
|
8
|
+
/**
|
|
9
|
+
* LLM-managed database operations with research-driven approach
|
|
10
|
+
*
|
|
11
|
+
* @description Executes database operations using LLM to research best practices,
|
|
12
|
+
* generate appropriate commands, and execute them. Supports PostgreSQL, MongoDB, Redis, MySQL, and MariaDB.
|
|
13
|
+
*
|
|
14
|
+
* @param {Object} args - Database management configuration parameters
|
|
15
|
+
* @param {string} args.database - Database type (postgresql, mongodb, redis, mysql, mariadb)
|
|
16
|
+
* @param {string} args.action - Action to perform
|
|
17
|
+
* @param {Object} [args.parameters] - Action parameters
|
|
18
|
+
* @param {string} args.llmInstructions - LLM instructions for command generation
|
|
19
|
+
* @param {boolean} [args.researchFirst] - Research best approach first (default: true)
|
|
20
|
+
* @param {string} [args.projectPath] - Path to project root (defaults to cwd)
|
|
21
|
+
* @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
|
|
22
|
+
*
|
|
23
|
+
* @returns {Promise<any>} Database operation results with LLM analysis
|
|
24
|
+
*
|
|
25
|
+
* @throws {McpAdrError} When required parameters are missing or operation fails
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* // PostgreSQL database creation
|
|
30
|
+
* const result = await llmDatabaseManagement({
|
|
31
|
+
* database: 'postgresql',
|
|
32
|
+
* action: 'create_database',
|
|
33
|
+
* parameters: { dbName: 'myapp', owner: 'myuser' },
|
|
34
|
+
* llmInstructions: 'Create a secure database with proper permissions'
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* // MongoDB collection optimization
|
|
41
|
+
* const result = await llmDatabaseManagement({
|
|
42
|
+
* database: 'mongodb',
|
|
43
|
+
* action: 'optimize_collection',
|
|
44
|
+
* parameters: { collection: 'users', indexFields: ['email', 'created_at'] },
|
|
45
|
+
* llmInstructions: 'Optimize for read-heavy workloads with proper indexing'
|
|
46
|
+
* });
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* @since 2.1.0
|
|
50
|
+
* @category Database Management
|
|
51
|
+
* @category LLM
|
|
52
|
+
* @mcp-tool
|
|
53
|
+
*/
|
|
54
|
+
export async function llmDatabaseManagement(args, context) {
|
|
55
|
+
const { database, action, parameters = {}, llmInstructions, researchFirst = true, projectPath, adrDirectory, } = args;
|
|
56
|
+
if (!database || !action || !llmInstructions) {
|
|
57
|
+
throw new McpAdrError('Database, action, and llmInstructions are required', 'MISSING_REQUIRED_PARAMS');
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
context?.info(`🗄️ Initializing ${database} database management for: ${action}`);
|
|
61
|
+
context?.report_progress(0, 100);
|
|
62
|
+
// Initialize research orchestrator
|
|
63
|
+
const orchestrator = new ResearchOrchestrator(projectPath, adrDirectory);
|
|
64
|
+
let researchResult = null;
|
|
65
|
+
if (researchFirst) {
|
|
66
|
+
context?.info('📚 Researching best practices and optimization strategies...');
|
|
67
|
+
context?.report_progress(20, 100);
|
|
68
|
+
// Step 1: Research the best approach
|
|
69
|
+
const researchQuery = `
|
|
70
|
+
How to ${action} in ${database}?
|
|
71
|
+
Best practices for ${database} ${action}
|
|
72
|
+
${database} ${action} documentation and examples
|
|
73
|
+
Performance optimization for ${database} ${action}
|
|
74
|
+
Security considerations for ${database} ${action}
|
|
75
|
+
${llmInstructions}
|
|
76
|
+
`;
|
|
77
|
+
researchResult = await orchestrator.answerResearchQuestion(researchQuery);
|
|
78
|
+
}
|
|
79
|
+
// Step 2: Generate command using LLM
|
|
80
|
+
context?.info('🤖 Generating database commands with LLM guidance...');
|
|
81
|
+
context?.report_progress(50, 100);
|
|
82
|
+
const command = await generateDatabaseCommand({
|
|
83
|
+
database,
|
|
84
|
+
action,
|
|
85
|
+
parameters,
|
|
86
|
+
research: researchResult,
|
|
87
|
+
instructions: llmInstructions,
|
|
88
|
+
});
|
|
89
|
+
// Step 3: Execute the command (simulated for now)
|
|
90
|
+
context?.info(`🗄️ Executing ${database} operation...`);
|
|
91
|
+
context?.report_progress(80, 100);
|
|
92
|
+
const executionResult = await executeDatabaseCommand(command);
|
|
93
|
+
context?.info('✅ Database operation complete!');
|
|
94
|
+
context?.report_progress(100, 100);
|
|
95
|
+
return {
|
|
96
|
+
content: [
|
|
97
|
+
{
|
|
98
|
+
type: 'text',
|
|
99
|
+
text: `# LLM-Managed Database Operation
|
|
100
|
+
|
|
101
|
+
## Operation Details
|
|
102
|
+
- **Database**: ${database}
|
|
103
|
+
- **Action**: ${action}
|
|
104
|
+
- **Parameters**: ${JSON.stringify(parameters, null, 2)}
|
|
105
|
+
|
|
106
|
+
## LLM Instructions
|
|
107
|
+
${llmInstructions}
|
|
108
|
+
|
|
109
|
+
${researchResult
|
|
110
|
+
? `
|
|
111
|
+
## Research Results
|
|
112
|
+
- **Confidence**: ${(researchResult.confidence * 100).toFixed(1)}%
|
|
113
|
+
- **Sources**: ${researchResult.metadata.sourcesQueried.join(', ')}
|
|
114
|
+
- **Research Summary**: ${researchResult.answer}
|
|
115
|
+
|
|
116
|
+
`
|
|
117
|
+
: ''}
|
|
118
|
+
|
|
119
|
+
## Generated Command
|
|
120
|
+
\`\`\`sql
|
|
121
|
+
${command.generated}
|
|
122
|
+
\`\`\`
|
|
123
|
+
|
|
124
|
+
## Execution Result
|
|
125
|
+
${executionResult.success ? '✅ Success' : '❌ Failed'}
|
|
126
|
+
${executionResult.output ? `\n\`\`\`\n${executionResult.output}\n\`\`\`` : ''}
|
|
127
|
+
|
|
128
|
+
## LLM Analysis
|
|
129
|
+
${command.analysis || 'No analysis available'}
|
|
130
|
+
|
|
131
|
+
## Metadata
|
|
132
|
+
- **Command Confidence**: ${(command.confidence * 100).toFixed(1)}%
|
|
133
|
+
- **Timestamp**: ${new Date().toISOString()}
|
|
134
|
+
- **Research-Driven**: ${researchFirst ? 'Yes' : 'No'}
|
|
135
|
+
`,
|
|
136
|
+
},
|
|
137
|
+
],
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
throw new McpAdrError(`Database management operation failed: ${error instanceof Error ? error.message : String(error)}`, 'DATABASE_MANAGEMENT_ERROR');
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Generate database command using LLM
|
|
146
|
+
*/
|
|
147
|
+
async function generateDatabaseCommand(context) {
|
|
148
|
+
// const { loadAIConfig, getAIExecutor } = await import('../config/ai-config.js');
|
|
149
|
+
// const aiConfig = loadAIConfig();
|
|
150
|
+
// const executor = getAIExecutor();
|
|
151
|
+
// const prompt = `
|
|
152
|
+
// Generate a ${context.database} command for the following operation:
|
|
153
|
+
//
|
|
154
|
+
// Action: ${context.action}
|
|
155
|
+
// Parameters: ${JSON.stringify(context.parameters, null, 2)}
|
|
156
|
+
// Instructions: ${context.instructions}
|
|
157
|
+
//
|
|
158
|
+
// ${context.research ? `
|
|
159
|
+
// Research Context:
|
|
160
|
+
// - Confidence: ${(context.research.confidence * 100).toFixed(1)}%
|
|
161
|
+
// - Sources: ${context.research.metadata.sourcesQueried.join(', ')}
|
|
162
|
+
// - Key Findings: ${context.research.answer}
|
|
163
|
+
// ` : ''}
|
|
164
|
+
//
|
|
165
|
+
// Database Context:
|
|
166
|
+
// ${getDatabaseContext(context.database)}
|
|
167
|
+
//
|
|
168
|
+
// Generate the appropriate command (SQL, CLI, or API call) and provide analysis of the approach.
|
|
169
|
+
// `;
|
|
170
|
+
// TODO: Implement LLM command generation when AI executor is available
|
|
171
|
+
// const result = await executor.executeStructuredPrompt(prompt, {
|
|
172
|
+
// type: 'object',
|
|
173
|
+
// properties: {
|
|
174
|
+
// command: { type: 'string' },
|
|
175
|
+
// confidence: { type: 'number' },
|
|
176
|
+
// analysis: { type: 'string' }
|
|
177
|
+
// }
|
|
178
|
+
// });
|
|
179
|
+
// return {
|
|
180
|
+
// generated: result.data.command || '-- Command generation failed',
|
|
181
|
+
// confidence: result.data.confidence || 0.5,
|
|
182
|
+
// analysis: result.data.analysis || 'No analysis available'
|
|
183
|
+
// };
|
|
184
|
+
// Placeholder implementation
|
|
185
|
+
return {
|
|
186
|
+
generated: `-- LLM command generation for ${context.database} ${context.action} not yet implemented`,
|
|
187
|
+
confidence: 0.3,
|
|
188
|
+
analysis: 'LLM command generation is not yet available. This is a placeholder implementation.',
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Execute database command (simulated for now)
|
|
193
|
+
*/
|
|
194
|
+
async function executeDatabaseCommand(command) {
|
|
195
|
+
// For now, simulate command execution
|
|
196
|
+
// In a real implementation, this would execute the actual database command
|
|
197
|
+
return {
|
|
198
|
+
success: command.confidence > 0.7,
|
|
199
|
+
output: `Simulated execution of: ${command.generated}\n\nThis is a simulation. In production, this would execute the actual database command.`,
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
// Database context functions will be used when LLM integration is complete
|
|
203
|
+
//# sourceMappingURL=llm-database-management-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-database-management-tool.js","sourceRoot":"","sources":["../../../src/tools/llm-database-management-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM-Managed Web Search Tool
|
|
3
|
+
*
|
|
4
|
+
* Uses Firecrawl for cross-platform web search with LLM-driven query optimization
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolContext } from '../types/tool-context.js';
|
|
7
|
+
/**
|
|
8
|
+
* LLM-managed web search using Firecrawl for cross-platform support
|
|
9
|
+
*
|
|
10
|
+
* @description Executes intelligent web search using Firecrawl with LLM-driven
|
|
11
|
+
* query optimization and content relevance scoring. Supports RHEL, Ubuntu, and macOS.
|
|
12
|
+
*
|
|
13
|
+
* @param {Object} args - Web search configuration parameters
|
|
14
|
+
* @param {string} args.query - The search query to execute
|
|
15
|
+
* @param {number} [args.maxResults] - Maximum results to return (default: 5)
|
|
16
|
+
* @param {boolean} [args.includeContent] - Include full content (default: true)
|
|
17
|
+
* @param {string} [args.llmInstructions] - LLM instructions for search optimization
|
|
18
|
+
* @param {string} [args.projectPath] - Path to project root (defaults to cwd)
|
|
19
|
+
* @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
|
|
20
|
+
*
|
|
21
|
+
* @returns {Promise<any>} Web search results with LLM analysis
|
|
22
|
+
*
|
|
23
|
+
* @throws {McpAdrError} When query is empty or search fails
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Basic web search
|
|
28
|
+
* const result = await llmWebSearch({
|
|
29
|
+
* query: 'Red Hat OpenShift best practices'
|
|
30
|
+
* });
|
|
31
|
+
*
|
|
32
|
+
* console.log(result.results); // Array of search results
|
|
33
|
+
* console.log(result.llmAnalysis); // LLM analysis of results
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* // Advanced search with LLM instructions
|
|
39
|
+
* const result = await llmWebSearch({
|
|
40
|
+
* query: 'Kubernetes security hardening',
|
|
41
|
+
* maxResults: 10,
|
|
42
|
+
* llmInstructions: 'Focus on enterprise security practices and compliance requirements'
|
|
43
|
+
* });
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @since 2.1.0
|
|
47
|
+
* @category Web Search
|
|
48
|
+
* @category LLM
|
|
49
|
+
* @mcp-tool
|
|
50
|
+
*/
|
|
51
|
+
export declare function llmWebSearch(args: {
|
|
52
|
+
query: string;
|
|
53
|
+
maxResults?: number;
|
|
54
|
+
includeContent?: boolean;
|
|
55
|
+
llmInstructions?: string;
|
|
56
|
+
projectPath?: string;
|
|
57
|
+
adrDirectory?: string;
|
|
58
|
+
}, context?: ToolContext): Promise<any>;
|
|
59
|
+
//# sourceMappingURL=llm-web-search-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-web-search-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/llm-web-search-tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE;IACJ,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,EACD,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,GAAG,CAAC,CAiGd"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM-Managed Web Search Tool
|
|
3
|
+
*
|
|
4
|
+
* Uses Firecrawl for cross-platform web search with LLM-driven query optimization
|
|
5
|
+
*/
|
|
6
|
+
import { McpAdrError } from '../types/index.js';
|
|
7
|
+
import { ResearchOrchestrator } from '../utils/research-orchestrator.js';
|
|
8
|
+
/**
|
|
9
|
+
* LLM-managed web search using Firecrawl for cross-platform support
|
|
10
|
+
*
|
|
11
|
+
* @description Executes intelligent web search using Firecrawl with LLM-driven
|
|
12
|
+
* query optimization and content relevance scoring. Supports RHEL, Ubuntu, and macOS.
|
|
13
|
+
*
|
|
14
|
+
* @param {Object} args - Web search configuration parameters
|
|
15
|
+
* @param {string} args.query - The search query to execute
|
|
16
|
+
* @param {number} [args.maxResults] - Maximum results to return (default: 5)
|
|
17
|
+
* @param {boolean} [args.includeContent] - Include full content (default: true)
|
|
18
|
+
* @param {string} [args.llmInstructions] - LLM instructions for search optimization
|
|
19
|
+
* @param {string} [args.projectPath] - Path to project root (defaults to cwd)
|
|
20
|
+
* @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
|
|
21
|
+
*
|
|
22
|
+
* @returns {Promise<any>} Web search results with LLM analysis
|
|
23
|
+
*
|
|
24
|
+
* @throws {McpAdrError} When query is empty or search fails
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* // Basic web search
|
|
29
|
+
* const result = await llmWebSearch({
|
|
30
|
+
* query: 'Red Hat OpenShift best practices'
|
|
31
|
+
* });
|
|
32
|
+
*
|
|
33
|
+
* console.log(result.results); // Array of search results
|
|
34
|
+
* console.log(result.llmAnalysis); // LLM analysis of results
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* // Advanced search with LLM instructions
|
|
40
|
+
* const result = await llmWebSearch({
|
|
41
|
+
* query: 'Kubernetes security hardening',
|
|
42
|
+
* maxResults: 10,
|
|
43
|
+
* llmInstructions: 'Focus on enterprise security practices and compliance requirements'
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* @since 2.1.0
|
|
48
|
+
* @category Web Search
|
|
49
|
+
* @category LLM
|
|
50
|
+
* @mcp-tool
|
|
51
|
+
*/
|
|
52
|
+
export async function llmWebSearch(args, context) {
|
|
53
|
+
const { query, maxResults = 5, includeContent = true, llmInstructions, projectPath, adrDirectory, } = args;
|
|
54
|
+
if (!query || query.trim().length === 0) {
|
|
55
|
+
throw new McpAdrError('Query parameter is required and cannot be empty', 'INVALID_QUERY');
|
|
56
|
+
}
|
|
57
|
+
try {
|
|
58
|
+
context?.info(`🌐 Initializing web search for: ${query}`);
|
|
59
|
+
context?.report_progress(0, 100);
|
|
60
|
+
// Initialize research orchestrator with Firecrawl
|
|
61
|
+
const orchestrator = new ResearchOrchestrator(projectPath, adrDirectory);
|
|
62
|
+
// Enhance query with LLM instructions if provided
|
|
63
|
+
context?.info('🤖 Optimizing search query with LLM guidance...');
|
|
64
|
+
context?.report_progress(25, 100);
|
|
65
|
+
let enhancedQuery = query;
|
|
66
|
+
if (llmInstructions) {
|
|
67
|
+
enhancedQuery = `${query}\n\nLLM Instructions: ${llmInstructions}`;
|
|
68
|
+
}
|
|
69
|
+
// Perform web search using research orchestrator
|
|
70
|
+
context?.info('🔍 Executing web search with Firecrawl...');
|
|
71
|
+
context?.report_progress(50, 100);
|
|
72
|
+
const researchResult = await orchestrator.answerResearchQuestion(enhancedQuery);
|
|
73
|
+
// Extract web search results
|
|
74
|
+
const webSearchSource = researchResult.sources.find(source => source.type === 'web_search');
|
|
75
|
+
const webResults = webSearchSource?.data?.results || [];
|
|
76
|
+
// Limit results
|
|
77
|
+
const limitedResults = webResults.slice(0, maxResults);
|
|
78
|
+
// Generate LLM analysis of results
|
|
79
|
+
context?.info('📊 Analyzing search results with LLM...');
|
|
80
|
+
context?.report_progress(75, 100);
|
|
81
|
+
const llmAnalysis = await generateLLMAnalysis(query, limitedResults, llmInstructions);
|
|
82
|
+
context?.info('✅ Web search complete!');
|
|
83
|
+
context?.report_progress(100, 100);
|
|
84
|
+
return {
|
|
85
|
+
content: [
|
|
86
|
+
{
|
|
87
|
+
type: 'text',
|
|
88
|
+
text: `# LLM-Managed Web Search Results
|
|
89
|
+
|
|
90
|
+
## Query
|
|
91
|
+
${query}
|
|
92
|
+
|
|
93
|
+
${llmInstructions ? `## LLM Instructions\n${llmInstructions}\n` : ''}
|
|
94
|
+
|
|
95
|
+
## Search Results (${limitedResults.length} found)
|
|
96
|
+
|
|
97
|
+
${limitedResults
|
|
98
|
+
.map((result, index) => `
|
|
99
|
+
### ${index + 1}. ${result.title}
|
|
100
|
+
- **URL**: ${result.url}
|
|
101
|
+
- **Relevance**: ${(result.relevance * 100).toFixed(1)}%
|
|
102
|
+
- **Content**: ${includeContent ? result.content?.substring(0, 500) + '...' : 'Content available'}
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
`)
|
|
106
|
+
.join('\n')}
|
|
107
|
+
|
|
108
|
+
## LLM Analysis
|
|
109
|
+
${llmAnalysis}
|
|
110
|
+
|
|
111
|
+
## Search Metadata
|
|
112
|
+
- **Provider**: Firecrawl
|
|
113
|
+
- **Total Results**: ${webResults.length}
|
|
114
|
+
- **Returned Results**: ${limitedResults.length}
|
|
115
|
+
- **Confidence**: ${(researchResult.confidence * 100).toFixed(1)}%
|
|
116
|
+
- **Timestamp**: ${new Date().toISOString()}
|
|
117
|
+
`,
|
|
118
|
+
},
|
|
119
|
+
],
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
throw new McpAdrError(`Web search failed: ${error instanceof Error ? error.message : String(error)}`, 'WEB_SEARCH_ERROR');
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Generate LLM analysis of search results
|
|
128
|
+
*/
|
|
129
|
+
async function generateLLMAnalysis(_query, _results, _instructions) {
|
|
130
|
+
// TODO: Implement LLM analysis when AI executor is available
|
|
131
|
+
// const { loadAIConfig, getAIExecutor } = await import('../config/ai-config.js');
|
|
132
|
+
// const aiConfig = loadAIConfig();
|
|
133
|
+
// const executor = getAIExecutor();
|
|
134
|
+
// const prompt = `
|
|
135
|
+
// Analyze these web search results for the query: "${query}"
|
|
136
|
+
//
|
|
137
|
+
// ${instructions ? `Additional Instructions: ${instructions}` : ''}
|
|
138
|
+
//
|
|
139
|
+
// Search Results:
|
|
140
|
+
// ${results.map((result, index) => `
|
|
141
|
+
// ${index + 1}. ${result.title}
|
|
142
|
+
// URL: ${result.url}
|
|
143
|
+
// Relevance: ${(result.relevance * 100).toFixed(1)}%
|
|
144
|
+
// Content Preview: ${result.content?.substring(0, 300)}...
|
|
145
|
+
// `).join('\n')}
|
|
146
|
+
//
|
|
147
|
+
// Provide analysis covering:
|
|
148
|
+
// 1. Overall quality and relevance of results
|
|
149
|
+
// 2. Key insights and findings
|
|
150
|
+
// 3. Gaps or missing information
|
|
151
|
+
// 4. Recommendations for further research
|
|
152
|
+
// 5. Summary of most valuable sources
|
|
153
|
+
//
|
|
154
|
+
// Keep analysis concise but comprehensive.
|
|
155
|
+
// `;
|
|
156
|
+
// const result = await executor.executeStructuredPrompt(prompt, {
|
|
157
|
+
// type: 'object',
|
|
158
|
+
// properties: {
|
|
159
|
+
// analysis: { type: 'string' }
|
|
160
|
+
// }
|
|
161
|
+
// });
|
|
162
|
+
// return result.data.analysis || 'Analysis unavailable';
|
|
163
|
+
return 'LLM analysis is not yet available. Results are available but require manual review.';
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=llm-web-search-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-web-search-tool.js","sourceRoot":"","sources":["../../../src/tools/llm-web-search-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-planning-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp-planning-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;
|
|
1
|
+
{"version":3,"file":"mcp-planning-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp-planning-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA02CH;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAgCzD"}
|
|
@@ -113,7 +113,11 @@ const ProjectPlanSchema = z.object({
|
|
|
113
113
|
riskAssessmentInterval: z.string().default('weekly'),
|
|
114
114
|
progressUpdateFrequency: z.string().default('daily'),
|
|
115
115
|
})
|
|
116
|
-
.default({
|
|
116
|
+
.default(() => ({
|
|
117
|
+
autoPhaseTransition: false,
|
|
118
|
+
riskAssessmentInterval: 'weekly',
|
|
119
|
+
progressUpdateFrequency: 'daily',
|
|
120
|
+
})),
|
|
117
121
|
});
|
|
118
122
|
// Operation schemas
|
|
119
123
|
const CreateProjectSchema = z.object({
|
|
@@ -334,7 +338,10 @@ async function createProject(args) {
|
|
|
334
338
|
if (importFromAdrs) {
|
|
335
339
|
try {
|
|
336
340
|
const { discoverAdrsInDirectory } = await import('../utils/adr-discovery.js');
|
|
337
|
-
const discoveryResult = await discoverAdrsInDirectory(join(projectPath, 'docs/adrs'),
|
|
341
|
+
const discoveryResult = await discoverAdrsInDirectory(join(projectPath, 'docs/adrs'), projectPath, {
|
|
342
|
+
includeContent: true,
|
|
343
|
+
includeTimeline: false,
|
|
344
|
+
});
|
|
338
345
|
// Link relevant ADRs to phases
|
|
339
346
|
for (const phase of projectPhases) {
|
|
340
347
|
const relatedAdrs = discoveryResult.adrs.filter((adr) => adr.title.toLowerCase().includes(phase.name.toLowerCase()) ||
|
|
@@ -1221,7 +1228,7 @@ export async function mcpPlanning(args) {
|
|
|
1221
1228
|
}
|
|
1222
1229
|
catch (error) {
|
|
1223
1230
|
if (error instanceof z.ZodError) {
|
|
1224
|
-
throw new McpAdrError(`Validation error: ${error.
|
|
1231
|
+
throw new McpAdrError(`Validation error: ${error.issues.map(e => e.message).join(', ')}`, 'VALIDATION_ERROR');
|
|
1225
1232
|
}
|
|
1226
1233
|
throw error;
|
|
1227
1234
|
}
|