mcp-adr-analysis-server 2.1.20 → 2.1.27
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 +63 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/src/config/ai-config.d.ts +54 -6
- package/dist/src/config/ai-config.d.ts.map +1 -1
- package/dist/src/config/ai-config.js +69 -6
- package/dist/src/config/ai-config.js.map +1 -1
- package/dist/src/config/ape-descriptions.d.ts +77 -0
- package/dist/src/config/ape-descriptions.d.ts.map +1 -0
- package/dist/src/config/ape-descriptions.js +177 -0
- package/dist/src/config/ape-descriptions.js.map +1 -0
- package/dist/src/index.d.ts +40 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +934 -8
- package/dist/src/index.js.map +1 -1
- package/dist/src/prompts/adr-suggestion-prompts.d.ts +5 -0
- package/dist/src/prompts/adr-suggestion-prompts.d.ts.map +1 -1
- package/dist/src/prompts/adr-suggestion-prompts.js +22 -1
- package/dist/src/prompts/adr-suggestion-prompts.js.map +1 -1
- package/dist/src/prompts/prompt-catalog.d.ts +95 -0
- package/dist/src/prompts/prompt-catalog.d.ts.map +1 -0
- package/dist/src/prompts/prompt-catalog.js +300 -0
- package/dist/src/prompts/prompt-catalog.js.map +1 -0
- package/dist/src/resources/adrs-discovered-resource.d.ts +124 -0
- package/dist/src/resources/adrs-discovered-resource.d.ts.map +1 -0
- package/dist/src/resources/adrs-discovered-resource.js +174 -0
- package/dist/src/resources/adrs-discovered-resource.js.map +1 -0
- package/dist/src/resources/adrs-review-resource.d.ts +82 -0
- package/dist/src/resources/adrs-review-resource.d.ts.map +1 -0
- package/dist/src/resources/adrs-review-resource.js +160 -0
- package/dist/src/resources/adrs-review-resource.js.map +1 -0
- package/dist/src/resources/architectural-context-resource.d.ts +95 -0
- package/dist/src/resources/architectural-context-resource.d.ts.map +1 -0
- package/dist/src/resources/architectural-context-resource.js +428 -0
- package/dist/src/resources/architectural-context-resource.js.map +1 -0
- package/dist/src/resources/conversation-snapshot-resource.d.ts +92 -0
- package/dist/src/resources/conversation-snapshot-resource.d.ts.map +1 -0
- package/dist/src/resources/conversation-snapshot-resource.js +122 -0
- package/dist/src/resources/conversation-snapshot-resource.js.map +1 -0
- package/dist/src/resources/deployment-status-resource.js +1 -1
- package/dist/src/resources/deployment-status-resource.js.map +1 -1
- package/dist/src/resources/environment-analysis-resource.js +1 -1
- package/dist/src/resources/environment-analysis-resource.js.map +1 -1
- package/dist/src/resources/knowledge-graph-resource.d.ts +129 -0
- package/dist/src/resources/knowledge-graph-resource.d.ts.map +1 -0
- package/dist/src/resources/knowledge-graph-resource.js +217 -0
- package/dist/src/resources/knowledge-graph-resource.js.map +1 -0
- package/dist/src/resources/memory-expand-resource.d.ts +90 -0
- package/dist/src/resources/memory-expand-resource.d.ts.map +1 -0
- package/dist/src/resources/memory-expand-resource.js +176 -0
- package/dist/src/resources/memory-expand-resource.js.map +1 -0
- package/dist/src/resources/memory-stats-resource.d.ts +77 -0
- package/dist/src/resources/memory-stats-resource.d.ts.map +1 -0
- package/dist/src/resources/memory-stats-resource.js +108 -0
- package/dist/src/resources/memory-stats-resource.js.map +1 -0
- package/dist/src/resources/project-metrics-resource.js +1 -1
- package/dist/src/resources/project-metrics-resource.js.map +1 -1
- package/dist/src/resources/resource-cache.d.ts.map +1 -1
- package/dist/src/resources/resource-cache.js +2 -1
- package/dist/src/resources/resource-cache.js.map +1 -1
- package/dist/src/resources/server-context-resource.d.ts +69 -0
- package/dist/src/resources/server-context-resource.d.ts.map +1 -0
- package/dist/src/resources/server-context-resource.js +104 -0
- package/dist/src/resources/server-context-resource.js.map +1 -0
- package/dist/src/resources/tool-catalog-resource.d.ts +122 -0
- package/dist/src/resources/tool-catalog-resource.d.ts.map +1 -0
- package/dist/src/resources/tool-catalog-resource.js +167 -0
- package/dist/src/resources/tool-catalog-resource.js.map +1 -0
- package/dist/src/tools/adr-aggregator-tools.d.ts +185 -0
- package/dist/src/tools/adr-aggregator-tools.d.ts.map +1 -0
- package/dist/src/tools/adr-aggregator-tools.js +872 -0
- package/dist/src/tools/adr-aggregator-tools.js.map +1 -0
- package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
- package/dist/src/tools/adr-bootstrap-validation-tool.js +7 -6
- package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
- package/dist/src/tools/adr-suggestion-tool.d.ts +5 -0
- package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
- package/dist/src/tools/adr-suggestion-tool.js +40 -71
- package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
- package/dist/src/tools/analyze-gaps-tool.d.ts +57 -0
- package/dist/src/tools/analyze-gaps-tool.d.ts.map +1 -0
- package/dist/src/tools/analyze-gaps-tool.js +727 -0
- package/dist/src/tools/analyze-gaps-tool.js.map +1 -0
- package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +23 -1
- package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -1
- package/dist/src/tools/bootstrap-validation-loop-tool.js +15 -5
- package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -1
- package/dist/src/tools/ce-mcp-tools.d.ts +291 -0
- package/dist/src/tools/ce-mcp-tools.d.ts.map +1 -0
- package/dist/src/tools/ce-mcp-tools.js +1188 -0
- package/dist/src/tools/ce-mcp-tools.js.map +1 -0
- package/dist/src/tools/content-masking-tool.d.ts +11 -0
- package/dist/src/tools/content-masking-tool.d.ts.map +1 -1
- package/dist/src/tools/content-masking-tool.js +13 -6
- package/dist/src/tools/content-masking-tool.js.map +1 -1
- package/dist/src/tools/deployment-readiness-tool.d.ts +11 -0
- package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
- package/dist/src/tools/deployment-readiness-tool.js +10 -4
- package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
- package/dist/src/tools/environment-analysis-tool.d.ts +96 -1
- package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
- package/dist/src/tools/environment-analysis-tool.js +38 -46
- package/dist/src/tools/environment-analysis-tool.js.map +1 -1
- package/dist/src/tools/research-question-tool.d.ts.map +1 -1
- package/dist/src/tools/research-question-tool.js +3 -2
- package/dist/src/tools/research-question-tool.js.map +1 -1
- package/dist/src/tools/review-existing-adrs-tool.d.ts +5 -0
- package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
- package/dist/src/tools/review-existing-adrs-tool.js +123 -42
- package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
- package/dist/src/tools/rule-generation-tool.d.ts.map +1 -1
- package/dist/src/tools/rule-generation-tool.js +3 -5
- package/dist/src/tools/rule-generation-tool.js.map +1 -1
- package/dist/src/tools/search-codebase-tool.d.ts +148 -0
- package/dist/src/tools/search-codebase-tool.d.ts.map +1 -0
- package/dist/src/tools/search-codebase-tool.js +406 -0
- package/dist/src/tools/search-codebase-tool.js.map +1 -0
- package/dist/src/tools/smart-git-push-tool-v2.js +1 -1
- package/dist/src/tools/smart-git-push-tool-v2.js.map +1 -1
- package/dist/src/tools/tool-catalog.d.ts +134 -0
- package/dist/src/tools/tool-catalog.d.ts.map +1 -0
- package/dist/src/tools/tool-catalog.js +1813 -0
- package/dist/src/tools/tool-catalog.js.map +1 -0
- package/dist/src/tools/tool-chain-orchestrator.d.ts +11 -2
- package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
- package/dist/src/tools/tool-chain-orchestrator.js +11 -2
- package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
- package/dist/src/tools/tool-dispatcher.d.ts +98 -0
- package/dist/src/tools/tool-dispatcher.d.ts.map +1 -0
- package/dist/src/tools/tool-dispatcher.js +229 -0
- package/dist/src/tools/tool-dispatcher.js.map +1 -0
- package/dist/src/tools/tree-sitter-code-tools.d.ts +184 -0
- package/dist/src/tools/tree-sitter-code-tools.d.ts.map +1 -0
- package/dist/src/tools/tree-sitter-code-tools.js +642 -0
- package/dist/src/tools/tree-sitter-code-tools.js.map +1 -0
- package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +22 -0
- package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
- package/dist/src/tools/troubleshoot-guided-workflow-tool.js +20 -3
- package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
- package/dist/src/tools/update-knowledge-tool.d.ts +89 -0
- package/dist/src/tools/update-knowledge-tool.d.ts.map +1 -0
- package/dist/src/tools/update-knowledge-tool.js +222 -0
- package/dist/src/tools/update-knowledge-tool.js.map +1 -0
- package/dist/src/types/adr-aggregator.d.ts +692 -0
- package/dist/src/types/adr-aggregator.d.ts.map +1 -0
- package/dist/src/types/adr-aggregator.js +8 -0
- package/dist/src/types/adr-aggregator.js.map +1 -0
- package/dist/src/types/ce-mcp.d.ts +248 -0
- package/dist/src/types/ce-mcp.d.ts.map +1 -0
- package/dist/src/types/ce-mcp.js +27 -0
- package/dist/src/types/ce-mcp.js.map +1 -0
- package/dist/src/types/index.d.ts +3 -2
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/memory-entities.d.ts +48 -48
- package/dist/src/utils/adr-aggregator-client.d.ts +177 -0
- package/dist/src/utils/adr-aggregator-client.d.ts.map +1 -0
- package/dist/src/utils/adr-aggregator-client.js +396 -0
- package/dist/src/utils/adr-aggregator-client.js.map +1 -0
- package/dist/src/utils/adr-context-detector.js +1 -1
- package/dist/src/utils/adr-context-detector.js.map +1 -1
- package/dist/src/utils/adr-planning-task-integration.d.ts +260 -0
- package/dist/src/utils/adr-planning-task-integration.d.ts.map +1 -0
- package/dist/src/utils/adr-planning-task-integration.js +466 -0
- package/dist/src/utils/adr-planning-task-integration.js.map +1 -0
- package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -1
- package/dist/src/utils/adr-timeline-extractor.js +3 -2
- package/dist/src/utils/adr-timeline-extractor.js.map +1 -1
- package/dist/src/utils/ai-executor.d.ts +10 -0
- package/dist/src/utils/ai-executor.d.ts.map +1 -1
- package/dist/src/utils/ai-executor.js +14 -3
- package/dist/src/utils/ai-executor.js.map +1 -1
- package/dist/src/utils/automatic-prompt-engineering.d.ts +5 -0
- package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
- package/dist/src/utils/automatic-prompt-engineering.js +10 -90
- package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
- package/dist/src/utils/bootstrap-task-integration.d.ts +214 -0
- package/dist/src/utils/bootstrap-task-integration.d.ts.map +1 -0
- package/dist/src/utils/bootstrap-task-integration.js +365 -0
- package/dist/src/utils/bootstrap-task-integration.js.map +1 -0
- package/dist/src/utils/config.d.ts +3 -0
- package/dist/src/utils/config.d.ts.map +1 -1
- package/dist/src/utils/config.js +13 -0
- package/dist/src/utils/config.js.map +1 -1
- package/dist/src/utils/dag-executor.js +1 -1
- package/dist/src/utils/dag-executor.js.map +1 -1
- package/dist/src/utils/deployment-task-integration.d.ts +260 -0
- package/dist/src/utils/deployment-task-integration.d.ts.map +1 -0
- package/dist/src/utils/deployment-task-integration.js +393 -0
- package/dist/src/utils/deployment-task-integration.js.map +1 -0
- package/dist/src/utils/dynamic-deployment-intelligence.js +1 -1
- package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -1
- package/dist/src/utils/enhanced-logging.d.ts +3 -0
- package/dist/src/utils/enhanced-logging.d.ts.map +1 -1
- package/dist/src/utils/enhanced-logging.js +9 -30
- package/dist/src/utils/enhanced-logging.js.map +1 -1
- package/dist/src/utils/environment-capability-registry.js +1 -1
- package/dist/src/utils/environment-capability-registry.js.map +1 -1
- package/dist/src/utils/file-system.d.ts.map +1 -1
- package/dist/src/utils/file-system.js +33 -3
- package/dist/src/utils/file-system.js.map +1 -1
- package/dist/src/utils/git-remote-detector.d.ts +67 -0
- package/dist/src/utils/git-remote-detector.d.ts.map +1 -0
- package/dist/src/utils/git-remote-detector.js +194 -0
- package/dist/src/utils/git-remote-detector.js.map +1 -0
- package/dist/src/utils/gitleaks-detector.js +1 -1
- package/dist/src/utils/gitleaks-detector.js.map +1 -1
- package/dist/src/utils/knowledge-graph-manager.d.ts +13 -0
- package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
- package/dist/src/utils/knowledge-graph-manager.js +13 -0
- package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
- package/dist/src/utils/prompt-execution.d.ts +29 -1
- package/dist/src/utils/prompt-execution.d.ts.map +1 -1
- package/dist/src/utils/prompt-execution.js +29 -1
- package/dist/src/utils/prompt-execution.js.map +1 -1
- package/dist/src/utils/research-orchestrator.d.ts +87 -1
- package/dist/src/utils/research-orchestrator.d.ts.map +1 -1
- package/dist/src/utils/research-orchestrator.js +121 -17
- package/dist/src/utils/research-orchestrator.js.map +1 -1
- package/dist/src/utils/research-task-integration.d.ts +297 -0
- package/dist/src/utils/research-task-integration.d.ts.map +1 -0
- package/dist/src/utils/research-task-integration.js +449 -0
- package/dist/src/utils/research-task-integration.js.map +1 -0
- package/dist/src/utils/ripgrep-wrapper.d.ts.map +1 -1
- package/dist/src/utils/ripgrep-wrapper.js +17 -3
- package/dist/src/utils/ripgrep-wrapper.js.map +1 -1
- package/dist/src/utils/sandbox-executor.d.ts +145 -0
- package/dist/src/utils/sandbox-executor.d.ts.map +1 -0
- package/dist/src/utils/sandbox-executor.js +642 -0
- package/dist/src/utils/sandbox-executor.js.map +1 -0
- package/dist/src/utils/server-context-generator.d.ts +5 -0
- package/dist/src/utils/server-context-generator.d.ts.map +1 -1
- package/dist/src/utils/server-context-generator.js +38 -0
- package/dist/src/utils/server-context-generator.js.map +1 -1
- package/dist/src/utils/task-manager.d.ts +239 -0
- package/dist/src/utils/task-manager.d.ts.map +1 -0
- package/dist/src/utils/task-manager.js +528 -0
- package/dist/src/utils/task-manager.js.map +1 -0
- package/dist/src/utils/task-persistence.d.ts +82 -0
- package/dist/src/utils/task-persistence.d.ts.map +1 -0
- package/dist/src/utils/task-persistence.js +248 -0
- package/dist/src/utils/task-persistence.js.map +1 -0
- package/dist/src/utils/test-aware-defaults.d.ts +57 -0
- package/dist/src/utils/test-aware-defaults.d.ts.map +1 -0
- package/dist/src/utils/test-aware-defaults.js +71 -0
- package/dist/src/utils/test-aware-defaults.js.map +1 -0
- package/dist/src/utils/tree-sitter-analyzer.d.ts +42 -5
- package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
- package/dist/src/utils/tree-sitter-analyzer.js +499 -17
- package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
- package/package.json +24 -19
- package/dist/src/tools/smart-git-push-tool.d.ts +0 -55
- package/dist/src/tools/smart-git-push-tool.d.ts.map +0 -1
- package/dist/src/tools/smart-git-push-tool.js +0 -1011
- package/dist/src/tools/smart-git-push-tool.js.map +0 -1
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Tasks Integration for Research Orchestrator
|
|
3
|
+
*
|
|
4
|
+
* This module provides standardized task tracking for research operations,
|
|
5
|
+
* implementing ADR-020: MCP Tasks Integration Strategy.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Creates MCP Tasks for research operations
|
|
9
|
+
* - Returns research plans for LLM delegation (non-blocking)
|
|
10
|
+
* - Tracks progress through research phases
|
|
11
|
+
* - Supports cancellation between phases
|
|
12
|
+
*
|
|
13
|
+
* @see ADR-020: MCP Tasks Integration Strategy
|
|
14
|
+
* @see https://modelcontextprotocol.io/specification/2025-11-25/basic/utilities/tasks
|
|
15
|
+
*/
|
|
16
|
+
import { type AdrTask, type TaskResult, type TaskManager } from './task-manager.js';
|
|
17
|
+
/**
|
|
18
|
+
* Research phases that map to MCP Task phases
|
|
19
|
+
*/
|
|
20
|
+
export declare const RESEARCH_PHASES: readonly ["initialization", "project_files_search", "knowledge_graph_query", "environment_analysis", "web_search", "synthesis"];
|
|
21
|
+
export type ResearchPhase = (typeof RESEARCH_PHASES)[number];
|
|
22
|
+
/**
|
|
23
|
+
* Research task context for tracking state across research steps
|
|
24
|
+
*/
|
|
25
|
+
export interface ResearchTaskContext {
|
|
26
|
+
taskId: string;
|
|
27
|
+
currentPhase: ResearchPhase;
|
|
28
|
+
question: string;
|
|
29
|
+
projectPath: string;
|
|
30
|
+
cancelled: boolean;
|
|
31
|
+
projectFilesResult?: {
|
|
32
|
+
filesFound: number;
|
|
33
|
+
relevantFiles: string[];
|
|
34
|
+
confidence: number;
|
|
35
|
+
};
|
|
36
|
+
knowledgeGraphResult?: {
|
|
37
|
+
nodesFound: number;
|
|
38
|
+
relationshipsFound: number;
|
|
39
|
+
confidence: number;
|
|
40
|
+
};
|
|
41
|
+
environmentResult?: {
|
|
42
|
+
capabilitiesFound: number;
|
|
43
|
+
relevantData: Record<string, unknown>;
|
|
44
|
+
confidence: number;
|
|
45
|
+
};
|
|
46
|
+
webSearchResult?: {
|
|
47
|
+
resultsFound: number;
|
|
48
|
+
sources: string[];
|
|
49
|
+
confidence: number;
|
|
50
|
+
};
|
|
51
|
+
synthesizedAnswer?: string;
|
|
52
|
+
overallConfidence?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Options for creating a research task
|
|
56
|
+
*/
|
|
57
|
+
export interface CreateResearchTaskOptions {
|
|
58
|
+
question: string;
|
|
59
|
+
projectPath: string;
|
|
60
|
+
includeWebSearch?: boolean;
|
|
61
|
+
confidenceThreshold?: number;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Result from research task execution
|
|
65
|
+
*/
|
|
66
|
+
export interface ResearchTaskResult extends TaskResult {
|
|
67
|
+
data?: {
|
|
68
|
+
answer: string;
|
|
69
|
+
confidence: number;
|
|
70
|
+
sources: ResearchSource[];
|
|
71
|
+
phasesCompleted: ResearchPhase[];
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Research source from a phase
|
|
76
|
+
*/
|
|
77
|
+
export interface ResearchSource {
|
|
78
|
+
type: 'project_files' | 'knowledge_graph' | 'environment' | 'web_search';
|
|
79
|
+
confidence: number;
|
|
80
|
+
data: unknown;
|
|
81
|
+
timestamp: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Research plan phase - describes a tool to execute
|
|
85
|
+
*/
|
|
86
|
+
export interface ResearchPlanPhase {
|
|
87
|
+
phase: ResearchPhase;
|
|
88
|
+
tool: string;
|
|
89
|
+
params: Record<string, unknown>;
|
|
90
|
+
purpose: string;
|
|
91
|
+
condition?: string;
|
|
92
|
+
expectedOutput: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Research plan returned for LLM delegation
|
|
96
|
+
*/
|
|
97
|
+
export interface ResearchPlan {
|
|
98
|
+
taskId: string;
|
|
99
|
+
question: string;
|
|
100
|
+
phases: ResearchPlanPhase[];
|
|
101
|
+
synthesisInstructions: string;
|
|
102
|
+
expectedResultFormat: string;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Research Task Manager - Provides MCP Tasks integration for research operations
|
|
106
|
+
*
|
|
107
|
+
* This class wraps the TaskManager to provide research-specific functionality:
|
|
108
|
+
* - Creates tasks with research phases
|
|
109
|
+
* - Returns research plans for LLM delegation (non-blocking)
|
|
110
|
+
* - Tracks research progress through multiple phases
|
|
111
|
+
* - Supports cancellation between phases
|
|
112
|
+
*/
|
|
113
|
+
export declare class ResearchTaskManager {
|
|
114
|
+
private taskManager;
|
|
115
|
+
private activeContexts;
|
|
116
|
+
constructor(taskManager?: TaskManager);
|
|
117
|
+
/**
|
|
118
|
+
* Initialize the research task manager
|
|
119
|
+
*/
|
|
120
|
+
initialize(): Promise<void>;
|
|
121
|
+
/**
|
|
122
|
+
* Create a new research task and return a research plan for LLM delegation
|
|
123
|
+
*
|
|
124
|
+
* This method does NOT execute research - it returns a plan that the calling
|
|
125
|
+
* LLM should execute using atomic tools.
|
|
126
|
+
*
|
|
127
|
+
* @returns The created task, context, and research plan for LLM delegation
|
|
128
|
+
*/
|
|
129
|
+
createResearchTask(options: CreateResearchTaskOptions): Promise<{
|
|
130
|
+
task: AdrTask;
|
|
131
|
+
context: ResearchTaskContext;
|
|
132
|
+
plan: ResearchPlan;
|
|
133
|
+
}>;
|
|
134
|
+
/**
|
|
135
|
+
* Generate a research plan for LLM delegation
|
|
136
|
+
*
|
|
137
|
+
* This creates a structured plan that tells the calling LLM what tools
|
|
138
|
+
* to use and in what order to complete the research.
|
|
139
|
+
*/
|
|
140
|
+
private generateResearchPlan;
|
|
141
|
+
/**
|
|
142
|
+
* Get research task context
|
|
143
|
+
*/
|
|
144
|
+
getContext(taskId: string): ResearchTaskContext | undefined;
|
|
145
|
+
/**
|
|
146
|
+
* Start a research phase
|
|
147
|
+
*/
|
|
148
|
+
startPhase(taskId: string, phase: ResearchPhase, message?: string): Promise<void>;
|
|
149
|
+
/**
|
|
150
|
+
* Update phase progress
|
|
151
|
+
*/
|
|
152
|
+
updatePhaseProgress(taskId: string, phase: ResearchPhase, phaseProgress: number, message?: string): Promise<void>;
|
|
153
|
+
/**
|
|
154
|
+
* Complete a research phase
|
|
155
|
+
*/
|
|
156
|
+
completePhase(taskId: string, phase: ResearchPhase, _message?: string): Promise<void>;
|
|
157
|
+
/**
|
|
158
|
+
* Fail a research phase
|
|
159
|
+
*/
|
|
160
|
+
failPhase(taskId: string, phase: ResearchPhase, error: string): Promise<void>;
|
|
161
|
+
/**
|
|
162
|
+
* Store project files search result
|
|
163
|
+
*/
|
|
164
|
+
storeProjectFilesResult(taskId: string, result: {
|
|
165
|
+
filesFound: number;
|
|
166
|
+
relevantFiles: string[];
|
|
167
|
+
confidence: number;
|
|
168
|
+
}): Promise<void>;
|
|
169
|
+
/**
|
|
170
|
+
* Store knowledge graph query result
|
|
171
|
+
*/
|
|
172
|
+
storeKnowledgeGraphResult(taskId: string, result: {
|
|
173
|
+
nodesFound: number;
|
|
174
|
+
relationshipsFound: number;
|
|
175
|
+
confidence: number;
|
|
176
|
+
}): Promise<void>;
|
|
177
|
+
/**
|
|
178
|
+
* Store environment analysis result
|
|
179
|
+
*/
|
|
180
|
+
storeEnvironmentResult(taskId: string, result: {
|
|
181
|
+
capabilitiesFound: number;
|
|
182
|
+
relevantData: Record<string, unknown>;
|
|
183
|
+
confidence: number;
|
|
184
|
+
}): Promise<void>;
|
|
185
|
+
/**
|
|
186
|
+
* Store web search result
|
|
187
|
+
*/
|
|
188
|
+
storeWebSearchResult(taskId: string, result: {
|
|
189
|
+
resultsFound: number;
|
|
190
|
+
sources: string[];
|
|
191
|
+
confidence: number;
|
|
192
|
+
}): Promise<void>;
|
|
193
|
+
/**
|
|
194
|
+
* Store synthesized answer
|
|
195
|
+
*/
|
|
196
|
+
storeSynthesizedAnswer(taskId: string, answer: string, confidence: number): Promise<void>;
|
|
197
|
+
/**
|
|
198
|
+
* Check if task is cancelled
|
|
199
|
+
*/
|
|
200
|
+
isCancelled(taskId: string): Promise<boolean>;
|
|
201
|
+
/**
|
|
202
|
+
* Cancel a research task
|
|
203
|
+
*/
|
|
204
|
+
cancelTask(taskId: string, reason?: string): Promise<void>;
|
|
205
|
+
/**
|
|
206
|
+
* Complete a research task successfully
|
|
207
|
+
*/
|
|
208
|
+
completeTask(taskId: string, result: ResearchTaskResult): Promise<void>;
|
|
209
|
+
/**
|
|
210
|
+
* Fail a research task
|
|
211
|
+
*/
|
|
212
|
+
failTask(taskId: string, error: string): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* Get task status
|
|
215
|
+
*/
|
|
216
|
+
getTaskStatus(taskId: string): Promise<{
|
|
217
|
+
task: AdrTask | null;
|
|
218
|
+
context: ResearchTaskContext | undefined;
|
|
219
|
+
}>;
|
|
220
|
+
}
|
|
221
|
+
export declare function getResearchTaskManager(): ResearchTaskManager;
|
|
222
|
+
/**
|
|
223
|
+
* Reset the global ResearchTaskManager (for testing)
|
|
224
|
+
*/
|
|
225
|
+
export declare function resetResearchTaskManager(): Promise<void>;
|
|
226
|
+
/**
|
|
227
|
+
* Helper function to create a research task and get the LLM delegation plan
|
|
228
|
+
*
|
|
229
|
+
* This is the primary entry point for research operations. It:
|
|
230
|
+
* 1. Creates an MCP Task for tracking
|
|
231
|
+
* 2. Returns a research plan for the calling LLM to execute
|
|
232
|
+
* 3. The LLM executes each phase using atomic tools
|
|
233
|
+
* 4. The LLM reports progress back via the tracker interface
|
|
234
|
+
*
|
|
235
|
+
* @example
|
|
236
|
+
* ```typescript
|
|
237
|
+
* const { taskId, plan, tracker } = await createResearchWithDelegation({
|
|
238
|
+
* question: 'How does authentication work in this codebase?',
|
|
239
|
+
* projectPath: '/path/to/project',
|
|
240
|
+
* });
|
|
241
|
+
*
|
|
242
|
+
* // LLM receives the plan and executes each phase:
|
|
243
|
+
* // Phase 1: searchCodebase({ query: question, ... })
|
|
244
|
+
* // Phase 2: query_knowledge_graph({ question, ... })
|
|
245
|
+
* // etc.
|
|
246
|
+
*
|
|
247
|
+
* // After each phase, LLM reports progress:
|
|
248
|
+
* await tracker.storeProjectFilesResult({ filesFound: 10, ... });
|
|
249
|
+
* await tracker.completePhase('project_files_search');
|
|
250
|
+
*
|
|
251
|
+
* // Finally, LLM synthesizes and completes:
|
|
252
|
+
* await tracker.storeSynthesizedAnswer(answer, confidence);
|
|
253
|
+
* await tracker.complete({ success: true, data: { answer, ... } });
|
|
254
|
+
* ```
|
|
255
|
+
*/
|
|
256
|
+
export declare function createResearchWithDelegation(options: CreateResearchTaskOptions): Promise<{
|
|
257
|
+
taskId: string;
|
|
258
|
+
plan: ResearchPlan;
|
|
259
|
+
tracker: ResearchTaskTracker;
|
|
260
|
+
}>;
|
|
261
|
+
/**
|
|
262
|
+
* Task tracker interface provided to LLM for research execution
|
|
263
|
+
*/
|
|
264
|
+
export interface ResearchTaskTracker {
|
|
265
|
+
taskId: string;
|
|
266
|
+
startPhase: (phase: ResearchPhase, message?: string) => Promise<void>;
|
|
267
|
+
updatePhaseProgress: (phase: ResearchPhase, progress: number, message?: string) => Promise<void>;
|
|
268
|
+
completePhase: (phase: ResearchPhase, message?: string) => Promise<void>;
|
|
269
|
+
failPhase: (phase: ResearchPhase, error: string) => Promise<void>;
|
|
270
|
+
storeProjectFilesResult: (result: {
|
|
271
|
+
filesFound: number;
|
|
272
|
+
relevantFiles: string[];
|
|
273
|
+
confidence: number;
|
|
274
|
+
}) => Promise<void>;
|
|
275
|
+
storeKnowledgeGraphResult: (result: {
|
|
276
|
+
nodesFound: number;
|
|
277
|
+
relationshipsFound: number;
|
|
278
|
+
confidence: number;
|
|
279
|
+
}) => Promise<void>;
|
|
280
|
+
storeEnvironmentResult: (result: {
|
|
281
|
+
capabilitiesFound: number;
|
|
282
|
+
relevantData: Record<string, unknown>;
|
|
283
|
+
confidence: number;
|
|
284
|
+
}) => Promise<void>;
|
|
285
|
+
storeWebSearchResult: (result: {
|
|
286
|
+
resultsFound: number;
|
|
287
|
+
sources: string[];
|
|
288
|
+
confidence: number;
|
|
289
|
+
}) => Promise<void>;
|
|
290
|
+
storeSynthesizedAnswer: (answer: string, confidence: number) => Promise<void>;
|
|
291
|
+
isCancelled: () => Promise<boolean>;
|
|
292
|
+
cancel: (reason?: string) => Promise<void>;
|
|
293
|
+
complete: (result: ResearchTaskResult) => Promise<void>;
|
|
294
|
+
fail: (error: string) => Promise<void>;
|
|
295
|
+
getContext: () => ResearchTaskContext;
|
|
296
|
+
}
|
|
297
|
+
//# sourceMappingURL=research-task-integration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"research-task-integration.d.ts","sourceRoot":"","sources":["../../../src/utils/research-task-integration.ts"],"names":[],"mappings":"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"}
|