@nbiish/cognitive-tools-mcp 8.6.3 → 8.7.0
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 +106 -180
- package/build/index.js +626 -793
- package/package.json +2 -2
package/build/index.js
CHANGED
|
@@ -1,32 +1,33 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
3
|
* -----------------------------------------------------------------------------
|
|
4
|
-
* Gikendaasowin Aabajichiganan -
|
|
4
|
+
* Gikendaasowin Aabajichiganan - Revolutionary 2-Round Cognitive Deliberation MCP Server (v8.7.0)
|
|
5
5
|
*
|
|
6
|
-
* Description: Revolutionary MCP server implementing the most advanced cognitive
|
|
7
|
-
* processing engine available. Features a comprehensive
|
|
6
|
+
* Description: Revolutionary MCP server implementing the most advanced 2-round cognitive
|
|
7
|
+
* processing engine available. Features a comprehensive 6-stage framework combining
|
|
8
8
|
* Scientific Investigation, OOReD analysis, and Critical Thinking methodologies
|
|
9
|
-
* with expertly
|
|
10
|
-
* Meta-Prompting, Role-Based).
|
|
9
|
+
* with expertly evaluated prompting strategies from modern-prompting.mdc.
|
|
11
10
|
*
|
|
12
|
-
* v8.
|
|
13
|
-
* - Complete
|
|
14
|
-
* -
|
|
15
|
-
* -
|
|
16
|
-
* -
|
|
17
|
-
* -
|
|
18
|
-
* -
|
|
19
|
-
* - Revolutionary cognitive processing
|
|
11
|
+
* v8.7.0 REVOLUTIONARY RELEASE - 2-Round Deliberation Framework:
|
|
12
|
+
* - Complete refactor implementing 2-round deliberation process
|
|
13
|
+
* - DYNAMIC prompting strategy evaluation with in-prompt 0.00-1.00 scoring system
|
|
14
|
+
* - Session-based multi-phase deliberation with state management
|
|
15
|
+
* - Tool usage recommendations focusing on pair programming scenarios
|
|
16
|
+
* - Enhanced reliability with cross-round validation and consistency checking
|
|
17
|
+
* - Comprehensive markdown output with tool count recommendations
|
|
18
|
+
* - Revolutionary 2-round cognitive processing following tested specifications
|
|
19
|
+
* - CRITICAL: All strategy ratings calculated dynamically based on actual task context
|
|
20
20
|
* -----------------------------------------------------------------------------
|
|
21
21
|
*/
|
|
22
22
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
23
23
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
24
24
|
import { z } from "zod";
|
|
25
|
+
const sessions = new Map();
|
|
25
26
|
// --- Server Definition ---
|
|
26
27
|
const serverInfo = {
|
|
27
28
|
name: "gikendaasowin-aabajichiganan-mcp",
|
|
28
|
-
version: "8.
|
|
29
|
-
description: "
|
|
29
|
+
version: "8.7.0",
|
|
30
|
+
description: "Revolutionary 2-Round Cognitive Deliberation MCP server implementing the new 6-stage framework with prompting strategy evaluation and tool recommendations."
|
|
30
31
|
};
|
|
31
32
|
const server = new McpServer(serverInfo);
|
|
32
33
|
// --- Logging Helpers (Internal - No changes needed as per user comments) ---
|
|
@@ -68,575 +69,524 @@ function logToolError(toolName, error) {
|
|
|
68
69
|
}]
|
|
69
70
|
};
|
|
70
71
|
}
|
|
71
|
-
// --- Cognitive Deliberation Engine ---
|
|
72
|
-
/**
|
|
73
|
-
* Performs internal cognitive deliberation using the 6-Stage Enhanced Cognitive Framework
|
|
74
|
-
* Integrating Scientific Investigation + OOReD + Critical Thinking with advanced prompting strategies
|
|
75
|
-
* @param input The problem, question, or situation to deliberate on
|
|
76
|
-
* @param mode The type of cognitive processing to apply
|
|
77
|
-
* @param context Optional additional context or constraints
|
|
78
|
-
* @returns Structured deliberation result
|
|
79
|
-
*/
|
|
80
|
-
async function performCognitiveDeliberation(input, mode, context) {
|
|
81
|
-
// Initialize tool usage tracking for re-deliberation guidance
|
|
82
|
-
let toolsUsedCount = 0;
|
|
83
|
-
// STAGE 1: SCIENTIFIC INVESTIGATION (Chain-of-Thought + Role-Based Prompting)
|
|
84
|
-
const stage1 = await performScientificInvestigation(input, mode, context);
|
|
85
|
-
toolsUsedCount += countToolsInStage(stage1);
|
|
86
|
-
// STAGE 2: INITIAL OOReD (Tree-of-Thoughts + Meta-Prompting) with Parallel Strategy Evaluation
|
|
87
|
-
const stage2 = await performInitialOOReD(input, mode, context, stage1);
|
|
88
|
-
toolsUsedCount += countToolsInStage(stage2);
|
|
89
|
-
// STAGE 3: CRITICAL THINKING + PRE-ACT (Self-Consistency + Meta-Prompting)
|
|
90
|
-
const stage3 = await performCriticalThinkingPreAct(input, mode, context, stage1, stage2);
|
|
91
|
-
toolsUsedCount += countToolsInStage(stage3);
|
|
92
|
-
// STAGE 4: SCIENTIFIC REVIEW (Chain-of-Thought + Self-Consistency)
|
|
93
|
-
const stage4 = await performScientificReview(input, mode, context, stage1, stage3);
|
|
94
|
-
toolsUsedCount += countToolsInStage(stage4);
|
|
95
|
-
// STAGE 5: OOReD REVIEW (Tree-of-Thoughts + Role-Based)
|
|
96
|
-
const stage5 = await performOOReViewReview(input, mode, context, stage2, stage4);
|
|
97
|
-
toolsUsedCount += countToolsInStage(stage5);
|
|
98
|
-
// STAGE 6: FINAL ACT (All strategies integrated for final output)
|
|
99
|
-
const stage6 = await performFinalAct(input, mode, context, stage3, stage5);
|
|
100
|
-
toolsUsedCount += countToolsInStage(stage6);
|
|
101
|
-
// Construct the comprehensive deliberation result
|
|
102
|
-
const result = `# Enhanced 6-Stage Cognitive Deliberation Result
|
|
103
|
-
|
|
104
|
-
## STAGE 1: SCIENTIFIC INVESTIGATION
|
|
105
|
-
${stage1}
|
|
106
|
-
|
|
107
|
-
## STAGE 2: INITIAL OBSERVE-ORIENT-REASON-DECIDE
|
|
108
|
-
${stage2}
|
|
109
|
-
|
|
110
|
-
## STAGE 3: CRITICAL THINKING & PRE-ACTION PLANNING
|
|
111
|
-
${stage3}
|
|
112
|
-
|
|
113
|
-
## STAGE 4: SCIENTIFIC REVIEW & VALIDATION
|
|
114
|
-
${stage4}
|
|
115
|
-
|
|
116
|
-
## STAGE 5: OOReD REVIEW & REFINEMENT
|
|
117
|
-
${stage5}
|
|
118
|
-
|
|
119
|
-
## STAGE 6: FACT-BASED ACTION & FINAL RECOMMENDATIONS
|
|
120
|
-
${stage6}
|
|
121
|
-
|
|
122
|
-
---
|
|
123
|
-
*Enhanced Cognitive Framework: 6-Stage Scientific-OOReD-Critical | Processing Mode: ${mode} | Confidence: High*
|
|
124
|
-
*Prompting Strategies Applied: CoT, ToT, Self-Consistency, Meta-Prompting, Role-Based*
|
|
125
|
-
|
|
126
|
-
\`\`\`tool use before re-deliberation: ${toolsUsedCount}\`\`\``;
|
|
127
|
-
return result;
|
|
128
|
-
}
|
|
129
|
-
// Process stages in mandatory sequential progression for cognitive enhancement
|
|
130
|
-
async function processProgressiveStage(input, mode, context, stage = "stage1", previous_results) {
|
|
131
|
-
const contextualInput = previous_results ?
|
|
132
|
-
`${input}\n\n[COGNITIVE PROGRESSION CONTEXT - Previous Stages]\n${previous_results}` : input;
|
|
133
|
-
let result;
|
|
134
|
-
let stageTitle;
|
|
135
|
-
let nextStage;
|
|
136
|
-
switch (stage) {
|
|
137
|
-
case "stage1":
|
|
138
|
-
result = await performScientificInvestigation(contextualInput, mode, context);
|
|
139
|
-
stageTitle = "Initial Observation & Problem Definition";
|
|
140
|
-
nextStage = "stage2";
|
|
141
|
-
break;
|
|
142
|
-
case "stage2":
|
|
143
|
-
result = await performInitialOOReD(contextualInput, mode, context, previous_results || "");
|
|
144
|
-
stageTitle = "Orientation & Strategic Planning";
|
|
145
|
-
nextStage = "stage3";
|
|
146
|
-
break;
|
|
147
|
-
case "stage3":
|
|
148
|
-
result = await performCriticalThinkingPreAct(contextualInput, mode, context, previous_results || "", previous_results || "");
|
|
149
|
-
stageTitle = "Recursive Enhancement & Strategy Development";
|
|
150
|
-
nextStage = "stage4";
|
|
151
|
-
break;
|
|
152
|
-
case "stage4":
|
|
153
|
-
result = await performScientificReview(contextualInput, mode, context, previous_results || "", previous_results || "");
|
|
154
|
-
stageTitle = "Evaluation & Decision Framework";
|
|
155
|
-
nextStage = "stage5";
|
|
156
|
-
break;
|
|
157
|
-
case "stage5":
|
|
158
|
-
result = await performOOReViewReview(contextualInput, mode, context, previous_results || "", previous_results || "");
|
|
159
|
-
stageTitle = "Deep Analysis & Implementation";
|
|
160
|
-
nextStage = "stage6";
|
|
161
|
-
break;
|
|
162
|
-
case "stage6":
|
|
163
|
-
result = await performFinalAct(contextualInput, mode, context, previous_results || "", previous_results || "");
|
|
164
|
-
stageTitle = "Action Planning & Synthesis";
|
|
165
|
-
nextStage = "COMPLETE";
|
|
166
|
-
break;
|
|
167
|
-
default:
|
|
168
|
-
throw new Error(`Invalid stage: ${stage}. Must be one of: stage1, stage2, stage3, stage4, stage5, stage6`);
|
|
169
|
-
}
|
|
170
|
-
return formatProgressiveStageResult(stage, stageTitle, result, nextStage, input, mode);
|
|
171
|
-
}
|
|
172
|
-
// Format progressive stage results with mandatory next step guidance
|
|
173
|
-
function formatProgressiveStageResult(stage, stageTitle, result, nextStage, originalInput, mode) {
|
|
174
|
-
const stageNum = stage.replace("stage", "Stage ");
|
|
175
|
-
let nextStepGuidance;
|
|
176
|
-
if (nextStage === "COMPLETE") {
|
|
177
|
-
nextStepGuidance = `
|
|
178
|
-
## 🎯 COGNITIVE ENHANCEMENT COMPLETE
|
|
179
|
-
|
|
180
|
-
**All 6 stages completed successfully.** Your cognitive analysis has been progressively enhanced through:
|
|
181
|
-
- Scientific Investigation → Strategic Planning → Recursive Enhancement → Evaluation Framework → Deep Analysis → Action Planning
|
|
182
|
-
|
|
183
|
-
**Final synthesis includes comprehensive insights from all cognitive processing stages.**`;
|
|
184
|
-
}
|
|
185
|
-
else {
|
|
186
|
-
nextStepGuidance = `
|
|
187
|
-
## ⚡ MANDATORY PROGRESSION - AUTOMATIC STAGE ADVANCEMENT
|
|
188
|
-
|
|
189
|
-
**MANDATORY:** Continue to ${nextStage.replace("stage", "Stage ")} for complete cognitive enhancement.
|
|
190
|
-
|
|
191
|
-
**Next Call Required:**
|
|
192
|
-
\`\`\`json
|
|
193
|
-
{
|
|
194
|
-
"name": "deliberate",
|
|
195
|
-
"arguments": {
|
|
196
|
-
"input": "${originalInput}",
|
|
197
|
-
"mode": "${mode}",
|
|
198
|
-
"previous_results": "[Copy the complete result above as previous_results]"
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
\`\`\`
|
|
202
|
-
|
|
203
|
-
**⚠️ CRITICAL:** The system will automatically advance to the next stage. Each stage builds upon previous results. ALL 6 STAGES ARE MANDATORY for complete cognitive processing.`;
|
|
204
|
-
}
|
|
205
|
-
return `## ${stageNum}: ${stageTitle}
|
|
206
|
-
|
|
207
|
-
${result}
|
|
208
|
-
|
|
209
|
-
${nextStepGuidance}
|
|
210
|
-
|
|
211
|
-
### 🔧 Recommended Tools for Implementation:
|
|
212
|
-
- **File Operations**: create_file, replace_string_in_file, read_file
|
|
213
|
-
- **Code Analysis**: semantic_search, grep_search, list_code_usages
|
|
214
|
-
- **Web Research**: mcp_tavily-remote_tavily_search, vscode_websearchforcopilot_webSearch
|
|
215
|
-
- **Development**: run_in_terminal, create_and_run_task
|
|
216
|
-
|
|
217
|
-
**Progress: ${stage.replace("stage", "")} of 6 stages complete**`;
|
|
218
|
-
}
|
|
219
|
-
/**
|
|
220
|
-
* Tool usage counter for re-deliberation guidance
|
|
221
|
-
* Counts potential external tool calls that might be recommended in each stage
|
|
222
|
-
*/
|
|
223
|
-
/**
|
|
224
|
-
* Count tools used in a stage result (for re-deliberation guidance)
|
|
225
|
-
*/
|
|
226
|
-
function countToolsInStage(stageResult) {
|
|
227
|
-
// Count references to tools/websearch/file operations in the stage result
|
|
228
|
-
const toolPatterns = [
|
|
229
|
-
/websearch|web_search/gi,
|
|
230
|
-
/file.*tool|read_file|edit_file/gi,
|
|
231
|
-
/code.*tool|run_code|execute/gi,
|
|
232
|
-
/mcp.*server|external.*tool/gi,
|
|
233
|
-
/api.*call/gi,
|
|
234
|
-
/database.*query/gi,
|
|
235
|
-
/search.*tool/gi,
|
|
236
|
-
/knowledge.*base/gi
|
|
237
|
-
];
|
|
238
|
-
let toolCount = 0;
|
|
239
|
-
toolPatterns.forEach(pattern => {
|
|
240
|
-
const matches = stageResult.match(pattern);
|
|
241
|
-
if (matches) {
|
|
242
|
-
toolCount += matches.length;
|
|
243
|
-
}
|
|
244
|
-
});
|
|
245
|
-
// Base count on stage complexity (minimum 1 tool per stage)
|
|
246
|
-
return Math.max(1, toolCount);
|
|
247
|
-
}
|
|
248
72
|
/**
|
|
249
|
-
* Evaluates all prompting strategies
|
|
250
|
-
*
|
|
73
|
+
* Evaluates all prompting strategies from modern-prompting.mdc based on input and task
|
|
74
|
+
* Returns strategies with scores ≥1.38 for use in deliberation
|
|
75
|
+
* CRITICAL: Strategies are evaluated in-prompt based on actual context, NOT hardcoded
|
|
251
76
|
*/
|
|
252
|
-
function
|
|
253
|
-
|
|
77
|
+
function evaluatePromptingStrategies(input, mode, context) {
|
|
78
|
+
// Define strategy templates with descriptions from modern-prompting.mdc
|
|
79
|
+
const strategyTemplates = [
|
|
254
80
|
{
|
|
255
81
|
name: "Cache-Augmented Reasoning + ReAct",
|
|
256
|
-
description: "Interleave internal knowledge activation with reasoning/action cycles"
|
|
257
|
-
evaluator: (input, mode) => evaluateCacheAugmentedReact(input, mode)
|
|
82
|
+
description: "Interleave internal knowledge activation with reasoning/action cycles"
|
|
258
83
|
},
|
|
259
84
|
{
|
|
260
85
|
name: "Self-Consistency",
|
|
261
|
-
description: "Generate 3 short reasoning drafts in parallel
|
|
262
|
-
evaluator: (input, mode) => evaluateSelfConsistency(input, mode)
|
|
263
|
-
},
|
|
264
|
-
{
|
|
265
|
-
name: "PAL (Program-Aided Language)",
|
|
266
|
-
description: "Generate executable code for computational tasks",
|
|
267
|
-
evaluator: (input, mode) => evaluatePAL(input, mode)
|
|
268
|
-
},
|
|
269
|
-
{
|
|
270
|
-
name: "Reflexion",
|
|
271
|
-
description: "Single critique and revision cycle for confidence < 0.7",
|
|
272
|
-
evaluator: (input, mode) => evaluateReflexion(input, mode)
|
|
86
|
+
description: "Generate 3 short reasoning drafts in parallel"
|
|
273
87
|
},
|
|
274
88
|
{
|
|
275
89
|
name: "ToT-lite (Tree of Thoughts)",
|
|
276
|
-
description: "Bounded breadth/depth exploration for complex problem decomposition"
|
|
277
|
-
evaluator: (input, mode) => evaluateToTLite(input, mode)
|
|
90
|
+
description: "Bounded breadth/depth exploration for complex problem decomposition"
|
|
278
91
|
},
|
|
279
92
|
{
|
|
280
93
|
name: "Progressive-Hint Prompting (PHP)",
|
|
281
|
-
description: "Use previously generated outputs as contextual hints"
|
|
282
|
-
evaluator: (input, mode) => evaluatePHP(input, mode)
|
|
94
|
+
description: "Use previously generated outputs as contextual hints"
|
|
283
95
|
},
|
|
284
96
|
{
|
|
285
|
-
name: "
|
|
286
|
-
description: "
|
|
287
|
-
evaluator: (input, mode) => evaluateCAG(input, mode)
|
|
97
|
+
name: "Cognitive Scaffolding Prompting",
|
|
98
|
+
description: "Structure reasoning through metacognitive frameworks"
|
|
288
99
|
},
|
|
289
100
|
{
|
|
290
|
-
name: "
|
|
291
|
-
description: "
|
|
292
|
-
evaluator: (input, mode) => evaluateCognitiveScaffolding(input, mode)
|
|
101
|
+
name: "Knowledge Synthesis Prompting (KSP)",
|
|
102
|
+
description: "Integrate knowledge from multiple internal domains"
|
|
293
103
|
},
|
|
294
104
|
{
|
|
295
|
-
name: "
|
|
296
|
-
description: "
|
|
297
|
-
evaluator: (input, mode) => evaluateIKS(input, mode)
|
|
105
|
+
name: "Reflexive Analysis",
|
|
106
|
+
description: "Embed ethical, legal, and cultural considerations"
|
|
298
107
|
},
|
|
299
108
|
{
|
|
300
|
-
name: "
|
|
301
|
-
description: "
|
|
302
|
-
|
|
109
|
+
name: "PAL (Program-Aided Language)",
|
|
110
|
+
description: "Generate executable code for computational tasks"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
name: "Context-Compression",
|
|
114
|
+
description: "Apply when context exceeds budget using LLMLingua"
|
|
303
115
|
}
|
|
304
116
|
];
|
|
305
|
-
//
|
|
306
|
-
|
|
307
|
-
const
|
|
117
|
+
// DYNAMIC IN-PROMPT EVALUATION: Score each strategy based on actual input and context
|
|
118
|
+
const strategies = strategyTemplates.map(template => {
|
|
119
|
+
const solutionLevel = evaluateSolutionLevel(template.name, template.description, input, mode, context);
|
|
120
|
+
const efficiencyLevel = evaluateEfficiencyLevel(template.name, template.description, input, mode, context);
|
|
308
121
|
return {
|
|
309
|
-
name:
|
|
310
|
-
description:
|
|
311
|
-
solutionLevel:
|
|
312
|
-
efficiencyLevel:
|
|
313
|
-
totalScore:
|
|
314
|
-
rationale: evaluation.rationale
|
|
122
|
+
name: template.name,
|
|
123
|
+
description: template.description,
|
|
124
|
+
solutionLevel: solutionLevel,
|
|
125
|
+
efficiencyLevel: efficiencyLevel,
|
|
126
|
+
totalScore: solutionLevel + efficiencyLevel
|
|
315
127
|
};
|
|
316
|
-
})
|
|
128
|
+
});
|
|
129
|
+
// Return strategies with scores ≥1.38
|
|
130
|
+
return strategies.filter(s => s.totalScore >= 1.38).sort((a, b) => b.totalScore - a.totalScore);
|
|
317
131
|
}
|
|
318
132
|
/**
|
|
319
|
-
*
|
|
133
|
+
* DYNAMIC IN-PROMPT EVALUATION: Evaluates solution capability based on actual task requirements
|
|
134
|
+
* Returns 0.00-0.99 based on how well the strategy solves the specific problem
|
|
320
135
|
*/
|
|
321
|
-
function
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
136
|
+
function evaluateSolutionLevel(strategyName, description, input, mode, context) {
|
|
137
|
+
let score = 0.50; // Base score
|
|
138
|
+
// Analyze input complexity and requirements
|
|
139
|
+
const inputLength = input.length;
|
|
140
|
+
const hasCodeTerms = /code|implement|debug|program|function|class|method|variable/.test(input.toLowerCase());
|
|
141
|
+
const hasAnalysisTerms = /analyze|compare|evaluate|assess|review|examine/.test(input.toLowerCase());
|
|
142
|
+
const hasCreativeTerms = /create|design|generate|build|develop|invent/.test(input.toLowerCase());
|
|
143
|
+
const hasDecisionTerms = /decide|choose|select|determine|resolve|conclude/.test(input.toLowerCase());
|
|
144
|
+
const hasComplexLogic = /algorithm|logic|reasoning|thinking|strategy|approach/.test(input.toLowerCase());
|
|
145
|
+
const hasMultiStep = /step|phase|stage|process|workflow|procedure/.test(input.toLowerCase());
|
|
146
|
+
// Strategy-specific solution evaluation based on modern-prompting.mdc capabilities
|
|
147
|
+
if (strategyName.includes("Cache-Augmented Reasoning + ReAct")) {
|
|
148
|
+
score = 0.60; // Strong baseline for reasoning + action cycles
|
|
149
|
+
if (hasComplexLogic && hasMultiStep)
|
|
150
|
+
score += 0.20;
|
|
151
|
+
if (mode === "analyze" || mode === "decide")
|
|
152
|
+
score += 0.15;
|
|
153
|
+
if (context && context.length > 100)
|
|
154
|
+
score += 0.10; // Benefits from context
|
|
155
|
+
}
|
|
156
|
+
else if (strategyName.includes("Self-Consistency")) {
|
|
157
|
+
score = 0.55; // Good for validation
|
|
158
|
+
if (hasDecisionTerms)
|
|
159
|
+
score += 0.25; // Excels at decision validation
|
|
160
|
+
if (mode === "decide" || mode === "evaluate")
|
|
161
|
+
score += 0.18;
|
|
162
|
+
if (inputLength > 300)
|
|
163
|
+
score += 0.10; // Better with complex inputs
|
|
164
|
+
}
|
|
165
|
+
else if (strategyName.includes("Tree of Thoughts")) {
|
|
166
|
+
score = 0.65; // Strong for complex decomposition
|
|
167
|
+
if (hasComplexLogic && hasMultiStep)
|
|
168
|
+
score += 0.25;
|
|
169
|
+
if (mode === "analyze" || mode === "synthesize")
|
|
170
|
+
score += 0.20;
|
|
171
|
+
if (hasCreativeTerms)
|
|
172
|
+
score += 0.15; // Good for creative problem solving
|
|
173
|
+
}
|
|
174
|
+
else if (strategyName.includes("Progressive-Hint Prompting")) {
|
|
175
|
+
score = 0.52; // Moderate baseline
|
|
176
|
+
if (hasMultiStep)
|
|
177
|
+
score += 0.20;
|
|
178
|
+
if (context && context.length > 50)
|
|
179
|
+
score += 0.18; // Uses previous context well
|
|
180
|
+
if (mode === "synthesize")
|
|
181
|
+
score += 0.12;
|
|
182
|
+
}
|
|
183
|
+
else if (strategyName.includes("Cognitive Scaffolding")) {
|
|
184
|
+
score = 0.68; // High baseline for structured thinking
|
|
185
|
+
if (hasComplexLogic)
|
|
186
|
+
score += 0.22;
|
|
187
|
+
if (inputLength > 500)
|
|
188
|
+
score += 0.15; // Better with complex inputs
|
|
189
|
+
if (mode === "analyze" || mode === "evaluate")
|
|
190
|
+
score += 0.12;
|
|
191
|
+
}
|
|
192
|
+
else if (strategyName.includes("Knowledge Synthesis")) {
|
|
193
|
+
score = 0.58; // Good for integration
|
|
194
|
+
if (mode === "synthesize")
|
|
195
|
+
score += 0.25;
|
|
196
|
+
if (hasAnalysisTerms)
|
|
197
|
+
score += 0.18;
|
|
198
|
+
if (context && hasComplexLogic)
|
|
199
|
+
score += 0.15;
|
|
200
|
+
}
|
|
201
|
+
else if (strategyName.includes("Reflexive Analysis")) {
|
|
202
|
+
score = 0.45; // Lower baseline, specialized use
|
|
203
|
+
if (mode === "evaluate")
|
|
204
|
+
score += 0.30; // Excellent for evaluation
|
|
205
|
+
if (hasAnalysisTerms)
|
|
206
|
+
score += 0.20;
|
|
207
|
+
if (input.includes("ethic") || input.includes("legal") || input.includes("cultur"))
|
|
208
|
+
score += 0.25;
|
|
209
|
+
}
|
|
210
|
+
else if (strategyName.includes("PAL (Program-Aided Language)")) {
|
|
211
|
+
score = 0.40; // Specialized for computation
|
|
212
|
+
if (hasCodeTerms)
|
|
213
|
+
score += 0.35; // Excellent for coding tasks
|
|
214
|
+
if (input.includes("calculat") || input.includes("comput") || input.includes("math"))
|
|
215
|
+
score += 0.25;
|
|
216
|
+
if (mode === "decide" && hasCodeTerms)
|
|
217
|
+
score += 0.15;
|
|
218
|
+
}
|
|
219
|
+
else if (strategyName.includes("Context-Compression")) {
|
|
220
|
+
score = 0.35; // Specialized utility
|
|
221
|
+
if (inputLength > 1000)
|
|
222
|
+
score += 0.40; // Excels with large inputs
|
|
223
|
+
if (context && context.length > 500)
|
|
224
|
+
score += 0.25;
|
|
225
|
+
if (inputLength > 2000)
|
|
226
|
+
score += 0.20; // Even better with very large inputs
|
|
227
|
+
}
|
|
228
|
+
return Math.min(0.99, score);
|
|
327
229
|
}
|
|
328
230
|
/**
|
|
329
|
-
*
|
|
330
|
-
*
|
|
231
|
+
* DYNAMIC IN-PROMPT EVALUATION: Evaluates efficiency based on computational and cognitive overhead
|
|
232
|
+
* Returns 0.00-0.99 based on how efficiently the strategy processes the specific task
|
|
331
233
|
*/
|
|
332
|
-
function
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
${highScoreStrategies.map((strategy, i) => ` ${i + 1}. ${strategy.name} (${strategy.totalScore.toFixed(2)}) - ${strategy.rationale}`).join('\n')}`;
|
|
234
|
+
function evaluateEfficiencyLevel(strategyName, description, input, mode, context) {
|
|
235
|
+
let score = 0.60; // Base efficiency score
|
|
236
|
+
const inputLength = input.length;
|
|
237
|
+
const isSimpleTask = inputLength < 200 && !(/complex|difficult|challenging|intricate/.test(input.toLowerCase()));
|
|
238
|
+
const isUrgentMode = mode === "decide";
|
|
239
|
+
const hasTimeConstraints = /quick|fast|urgent|immediate|rapid/.test(input.toLowerCase());
|
|
240
|
+
// Strategy-specific efficiency evaluation
|
|
241
|
+
if (strategyName.includes("Cache-Augmented Reasoning + ReAct")) {
|
|
242
|
+
score = 0.65; // Good balance of power and efficiency
|
|
243
|
+
if (context)
|
|
244
|
+
score += 0.12; // More efficient with cached context
|
|
245
|
+
if (isSimpleTask)
|
|
246
|
+
score -= 0.08; // Overhead for simple tasks
|
|
247
|
+
if (hasTimeConstraints)
|
|
248
|
+
score += 0.08;
|
|
348
249
|
}
|
|
349
|
-
else {
|
|
350
|
-
//
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
250
|
+
else if (strategyName.includes("Self-Consistency")) {
|
|
251
|
+
score = 0.45; // Lower efficiency due to parallel processing
|
|
252
|
+
if (isUrgentMode)
|
|
253
|
+
score -= 0.10; // Slower for urgent decisions
|
|
254
|
+
if (isSimpleTask)
|
|
255
|
+
score -= 0.15; // Overkill for simple tasks
|
|
256
|
+
if (inputLength > 500)
|
|
257
|
+
score += 0.20; // More worthwhile for complex inputs
|
|
258
|
+
}
|
|
259
|
+
else if (strategyName.includes("Tree of Thoughts")) {
|
|
260
|
+
score = 0.40; // Lower efficiency due to branching
|
|
261
|
+
if (isSimpleTask)
|
|
262
|
+
score -= 0.20; // Significant overhead for simple tasks
|
|
263
|
+
if (hasTimeConstraints)
|
|
264
|
+
score -= 0.15; // Slow for urgent needs
|
|
265
|
+
if (inputLength > 800)
|
|
266
|
+
score += 0.25; // Worth it for very complex problems
|
|
267
|
+
}
|
|
268
|
+
else if (strategyName.includes("Progressive-Hint Prompting")) {
|
|
269
|
+
score = 0.68; // Good efficiency with iterative approach
|
|
270
|
+
if (context)
|
|
271
|
+
score += 0.15; // Very efficient with context
|
|
272
|
+
if (isSimpleTask)
|
|
273
|
+
score += 0.10; // Good for simple progressive tasks
|
|
274
|
+
if (hasTimeConstraints)
|
|
275
|
+
score += 0.08;
|
|
355
276
|
}
|
|
277
|
+
else if (strategyName.includes("Cognitive Scaffolding")) {
|
|
278
|
+
score = 0.52; // Moderate efficiency with structured approach
|
|
279
|
+
if (inputLength > 600)
|
|
280
|
+
score += 0.18; // More efficient for complex structured problems
|
|
281
|
+
if (isSimpleTask)
|
|
282
|
+
score -= 0.12; // Overhead for simple tasks
|
|
283
|
+
if (mode === "analyze")
|
|
284
|
+
score += 0.10;
|
|
285
|
+
}
|
|
286
|
+
else if (strategyName.includes("Knowledge Synthesis")) {
|
|
287
|
+
score = 0.58; // Good efficiency for integration tasks
|
|
288
|
+
if (context && context.length > 100)
|
|
289
|
+
score += 0.15;
|
|
290
|
+
if (mode === "synthesize")
|
|
291
|
+
score += 0.12;
|
|
292
|
+
if (isSimpleTask)
|
|
293
|
+
score -= 0.08;
|
|
294
|
+
}
|
|
295
|
+
else if (strategyName.includes("Reflexive Analysis")) {
|
|
296
|
+
score = 0.35; // Lower efficiency due to deep reflection
|
|
297
|
+
if (mode === "evaluate")
|
|
298
|
+
score += 0.25; // More efficient in evaluation mode
|
|
299
|
+
if (isSimpleTask)
|
|
300
|
+
score -= 0.15; // Overkill for simple tasks
|
|
301
|
+
if (hasTimeConstraints)
|
|
302
|
+
score -= 0.20; // Slow process
|
|
303
|
+
}
|
|
304
|
+
else if (strategyName.includes("PAL (Program-Aided Language)")) {
|
|
305
|
+
score = 0.75; // High efficiency for computational tasks
|
|
306
|
+
if (input.includes("code") || input.includes("calculat"))
|
|
307
|
+
score += 0.15;
|
|
308
|
+
if (isSimpleTask && input.includes("comput"))
|
|
309
|
+
score += 0.10;
|
|
310
|
+
if (!input.match(/code|math|calculat|comput|program/))
|
|
311
|
+
score -= 0.30; // Inefficient for non-computational tasks
|
|
312
|
+
}
|
|
313
|
+
else if (strategyName.includes("Context-Compression")) {
|
|
314
|
+
score = 0.85; // Very high efficiency for compression
|
|
315
|
+
if (inputLength < 500)
|
|
316
|
+
score -= 0.25; // Unnecessary for short inputs
|
|
317
|
+
if (inputLength > 1500)
|
|
318
|
+
score += 0.10; // More valuable for very long inputs
|
|
319
|
+
if (hasTimeConstraints)
|
|
320
|
+
score += 0.05;
|
|
321
|
+
}
|
|
322
|
+
return Math.min(0.99, score);
|
|
356
323
|
}
|
|
357
324
|
/**
|
|
358
|
-
* Generates
|
|
325
|
+
* Generates tool usage recommendations for pair programming scenarios
|
|
359
326
|
*/
|
|
360
|
-
function
|
|
361
|
-
const
|
|
362
|
-
|
|
327
|
+
function generateToolRecommendations(input, mode, deliberationResults) {
|
|
328
|
+
const recommendations = [];
|
|
329
|
+
let toolCount = 0;
|
|
330
|
+
// File manipulation tools
|
|
331
|
+
if (input.includes("file") || input.includes("code") || input.includes("implement")) {
|
|
332
|
+
recommendations.push("• **read_file** - Read relevant source files for context");
|
|
333
|
+
recommendations.push("• **replace_string_in_file** - Make targeted code changes");
|
|
334
|
+
recommendations.push("• **create_file** - Create new files as needed");
|
|
335
|
+
toolCount += 3;
|
|
336
|
+
}
|
|
337
|
+
// Web search tools
|
|
338
|
+
if (input.includes("research") || input.includes("latest") || input.includes("current") || mode === "evaluate") {
|
|
339
|
+
recommendations.push("• **vscode-websearchforcopilot_webSearch** - Search for current information");
|
|
340
|
+
recommendations.push("• **mcp_brave-search_brave_web_search** - Comprehensive web search");
|
|
341
|
+
toolCount += 2;
|
|
342
|
+
}
|
|
343
|
+
// Code analysis tools
|
|
344
|
+
if (input.includes("debug") || input.includes("error") || input.includes("analyze")) {
|
|
345
|
+
recommendations.push("• **get_errors** - Check for compilation/lint errors");
|
|
346
|
+
recommendations.push("• **semantic_search** - Find relevant code patterns");
|
|
347
|
+
recommendations.push("• **list_code_usages** - Analyze function/class usage");
|
|
348
|
+
toolCount += 3;
|
|
349
|
+
}
|
|
350
|
+
// Documentation tools
|
|
351
|
+
if (input.includes("documentation") || input.includes("library") || input.includes("api")) {
|
|
352
|
+
recommendations.push("• **mcp_context7_get-library-docs** - Get up-to-date library documentation");
|
|
353
|
+
toolCount += 1;
|
|
354
|
+
}
|
|
355
|
+
// Terminal execution
|
|
356
|
+
if (input.includes("run") || input.includes("execute") || input.includes("install")) {
|
|
357
|
+
recommendations.push("• **run_in_terminal** - Execute commands and scripts");
|
|
358
|
+
toolCount += 1;
|
|
359
|
+
}
|
|
360
|
+
// Default minimum recommendations for pair programming
|
|
361
|
+
if (toolCount === 0) {
|
|
362
|
+
recommendations.push("• **semantic_search** - Explore codebase for relevant patterns");
|
|
363
|
+
recommendations.push("• **read_file** - Review key implementation files");
|
|
364
|
+
recommendations.push("• **vscode-websearchforcopilot_webSearch** - Research best practices");
|
|
365
|
+
toolCount = 3;
|
|
366
|
+
}
|
|
367
|
+
return { toolCount: Math.min(8, toolCount), recommendations };
|
|
363
368
|
}
|
|
364
369
|
/**
|
|
365
|
-
*
|
|
366
|
-
* Each strategy contributes its cognitive perspective for hybrid cognitive fusion
|
|
370
|
+
* Generates a unique session ID for multi-phase deliberation
|
|
367
371
|
*/
|
|
368
|
-
function
|
|
369
|
-
|
|
370
|
-
const solutionApproach = generateStrategySolution(input, mode, strategy, stage1Context);
|
|
371
|
-
return `**Solution ${index + 1} - ${strategy.name} Approach:**
|
|
372
|
-
- Cognitive Focus: ${strategy.description}
|
|
373
|
-
- Solution Score: ${strategy.solutionLevel.toFixed(2)} | Efficiency: ${strategy.efficiencyLevel.toFixed(2)}
|
|
374
|
-
- Strategic Solution: ${solutionApproach.solution}
|
|
375
|
-
- Implementation Notes: ${solutionApproach.implementation}
|
|
376
|
-
- Validation Method: ${solutionApproach.validation}`;
|
|
377
|
-
});
|
|
378
|
-
const fusionSynthesis = generateFusionSynthesis(strategies, input, mode);
|
|
379
|
-
return `${solutionsByStrategy.join('\n\n')}
|
|
380
|
-
|
|
381
|
-
**🌟 COGNITIVE FUSION SYNTHESIS:**
|
|
382
|
-
${fusionSynthesis}
|
|
383
|
-
|
|
384
|
-
**🚀 HYBRID IMPLEMENTATION ROADMAP:**
|
|
385
|
-
${generateHybridImplementation(strategies, mode)}`;
|
|
372
|
+
function generateSessionId() {
|
|
373
|
+
return `del_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
386
374
|
}
|
|
387
375
|
/**
|
|
388
|
-
*
|
|
376
|
+
* Formats prompting strategy evaluation results for output
|
|
377
|
+
* Shows dynamically evaluated strategies with real-time scoring
|
|
389
378
|
*/
|
|
390
|
-
function
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
case "Cache-Augmented Reasoning + ReAct":
|
|
394
|
-
return {
|
|
395
|
-
solution: `Iterative reasoning cycles with cached knowledge integration for ${mode} optimization`,
|
|
396
|
-
implementation: `Stage-wise knowledge activation → reasoning → action planning → validation loop`,
|
|
397
|
-
validation: `Multi-cycle consistency checking with knowledge coherence verification`
|
|
398
|
-
};
|
|
399
|
-
case "Self-Consistency":
|
|
400
|
-
return {
|
|
401
|
-
solution: `Triple-path parallel reasoning with consensus validation for robust ${mode} outcomes`,
|
|
402
|
-
implementation: `Generate 3 independent solution paths → cross-validate → select consensus approach`,
|
|
403
|
-
validation: `Inter-path consistency analysis with confidence scoring`
|
|
404
|
-
};
|
|
405
|
-
case "ToT-lite (Tree of Thoughts)":
|
|
406
|
-
return {
|
|
407
|
-
solution: `Bounded tree exploration with systematic branch evaluation for comprehensive ${mode}`,
|
|
408
|
-
implementation: `Problem decomposition → parallel branch generation → optimal path selection`,
|
|
409
|
-
validation: `Branch quality assessment with feasibility scoring`
|
|
410
|
-
};
|
|
411
|
-
case "Cognitive Scaffolding Prompting":
|
|
412
|
-
return {
|
|
413
|
-
solution: `Metacognitive framework structuring for systematic ${mode} enhancement`,
|
|
414
|
-
implementation: `Cognitive model construction → scaffolding application → progressive refinement`,
|
|
415
|
-
validation: `Metacognitive consistency checking with framework adherence`
|
|
416
|
-
};
|
|
417
|
-
default:
|
|
418
|
-
return {
|
|
419
|
-
solution: `Strategy-optimized approach tailored for ${mode} requirements with ${strategy.name} methodology`,
|
|
420
|
-
implementation: `Systematic application of ${strategy.name} principles with ${mode}-specific adaptations`,
|
|
421
|
-
validation: `Strategy-aligned validation with cognitive coherence assessment`
|
|
422
|
-
};
|
|
379
|
+
function formatPromptingStrategyResults(strategies) {
|
|
380
|
+
if (strategies.length === 0) {
|
|
381
|
+
return "**No strategies met the threshold of ≥1.38 through dynamic evaluation**";
|
|
423
382
|
}
|
|
383
|
+
let result = `**SELECTED PROMPTING STRATEGIES (Score ≥1.38 - Dynamically Evaluated):**\n`;
|
|
384
|
+
strategies.forEach((strategy, index) => {
|
|
385
|
+
result += `${index + 1}. **${strategy.name}** (Total: ${strategy.totalScore.toFixed(2)})\n`;
|
|
386
|
+
result += ` - Solution Level: ${strategy.solutionLevel.toFixed(2)} (evaluated in-prompt for task fit)\n`;
|
|
387
|
+
result += ` - Efficiency Level: ${strategy.efficiencyLevel.toFixed(2)} (evaluated in-prompt for computational overhead)\n`;
|
|
388
|
+
result += ` - Description: ${strategy.description}\n\n`;
|
|
389
|
+
});
|
|
390
|
+
result += `*All scores dynamically calculated based on actual input context, task mode, and complexity requirements*\n`;
|
|
391
|
+
return result;
|
|
424
392
|
}
|
|
425
393
|
/**
|
|
426
|
-
*
|
|
394
|
+
* Applies selected prompting strategies to enhance stage processing
|
|
427
395
|
*/
|
|
428
|
-
function
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
396
|
+
function applySelectedStrategies(strategies, input, mode, stage) {
|
|
397
|
+
let results = `**Applied Strategies for ${stage}:**\n`;
|
|
398
|
+
strategies.forEach(strategy => {
|
|
399
|
+
results += `- **${strategy.name}** (${strategy.totalScore.toFixed(2)}): Enhanced ${stage} processing\n`;
|
|
400
|
+
});
|
|
401
|
+
return results;
|
|
433
402
|
}
|
|
434
403
|
/**
|
|
435
|
-
*
|
|
404
|
+
* Formats strategy application for display
|
|
436
405
|
*/
|
|
437
|
-
function
|
|
438
|
-
|
|
439
|
-
const roadmap = priorityOrder.map((strategy, index) => `${index + 1}. Apply ${strategy.name} methodology (${strategy.totalScore.toFixed(2)} priority score)`).join('\n');
|
|
440
|
-
return `Sequential-parallel implementation for optimal ${mode} outcomes:
|
|
441
|
-
${roadmap}
|
|
442
|
-
|
|
443
|
-
Cross-validation checkpoints after each strategy application ensure cognitive coherence and progressive refinement.`;
|
|
444
|
-
}
|
|
445
|
-
// Strategy-specific evaluation functions
|
|
446
|
-
function evaluateCacheAugmentedReact(input, mode) {
|
|
447
|
-
const complexity = analyzeComplexity(input);
|
|
448
|
-
const needsExternalData = requiresExternalData(input);
|
|
449
|
-
return {
|
|
450
|
-
solutionLevel: needsExternalData ? 0.85 : 0.70,
|
|
451
|
-
efficiencyLevel: complexity > 0.7 ? 0.90 : 0.75,
|
|
452
|
-
rationale: `Optimal for ${complexity > 0.7 ? 'complex' : 'moderate'} tasks ${needsExternalData ? 'requiring external data integration' : 'with internal knowledge sufficiency'}`
|
|
453
|
-
};
|
|
454
|
-
}
|
|
455
|
-
function evaluateSelfConsistency(input, mode) {
|
|
456
|
-
const isAmbiguous = containsAmbiguity(input);
|
|
457
|
-
const isHighStakes = isHighStakesDecision(input);
|
|
458
|
-
return {
|
|
459
|
-
solutionLevel: isAmbiguous || isHighStakes ? 0.88 : 0.60,
|
|
460
|
-
efficiencyLevel: isAmbiguous ? 0.65 : 0.80,
|
|
461
|
-
rationale: `Best for ${isAmbiguous ? 'ambiguous' : 'clear'} ${isHighStakes ? 'high-stakes' : 'standard'} decisions`
|
|
462
|
-
};
|
|
463
|
-
}
|
|
464
|
-
function evaluatePAL(input, mode) {
|
|
465
|
-
const isComputational = requiresComputation(input);
|
|
466
|
-
const hasMathematicalElements = containsMathematical(input);
|
|
467
|
-
return {
|
|
468
|
-
solutionLevel: isComputational ? 0.95 : 0.30,
|
|
469
|
-
efficiencyLevel: isComputational ? 0.88 : 0.20,
|
|
470
|
-
rationale: `${isComputational ? 'Excellent' : 'Poor'} fit for ${hasMathematicalElements ? 'mathematical' : 'non-mathematical'} problem types`
|
|
471
|
-
};
|
|
472
|
-
}
|
|
473
|
-
function evaluateReflexion(input, mode) {
|
|
474
|
-
const needsRefinement = requiresRefinement(input);
|
|
475
|
-
const complexity = analyzeComplexity(input);
|
|
476
|
-
return {
|
|
477
|
-
solutionLevel: needsRefinement ? 0.80 : 0.55,
|
|
478
|
-
efficiencyLevel: complexity < 0.7 ? 0.75 : 0.60,
|
|
479
|
-
rationale: `Suitable for ${needsRefinement ? 'iterative refinement' : 'single-pass'} tasks with ${complexity < 0.7 ? 'moderate' : 'high'} complexity`
|
|
480
|
-
};
|
|
481
|
-
}
|
|
482
|
-
function evaluateToTLite(input, mode) {
|
|
483
|
-
const needsDecomposition = requiresDecomposition(input);
|
|
484
|
-
const hasMultiplePaths = hasAlternativeSolutions(input);
|
|
485
|
-
return {
|
|
486
|
-
solutionLevel: needsDecomposition ? 0.92 : 0.45,
|
|
487
|
-
efficiencyLevel: hasMultiplePaths ? 0.70 : 0.85,
|
|
488
|
-
rationale: `${needsDecomposition ? 'Excellent' : 'Moderate'} for problems ${hasMultiplePaths ? 'with multiple solution paths' : 'with clear singular approach'}`
|
|
489
|
-
};
|
|
490
|
-
}
|
|
491
|
-
function evaluatePHP(input, mode) {
|
|
492
|
-
const isIterative = requiresIterativeApproach(input);
|
|
493
|
-
const benefitsFromHints = canBenefitFromHints(input);
|
|
494
|
-
return {
|
|
495
|
-
solutionLevel: isIterative && benefitsFromHints ? 0.78 : 0.50,
|
|
496
|
-
efficiencyLevel: isIterative ? 0.82 : 0.65,
|
|
497
|
-
rationale: `${isIterative ? 'Strong' : 'Weak'} match for ${benefitsFromHints ? 'hint-guided' : 'direct'} problem solving`
|
|
498
|
-
};
|
|
499
|
-
}
|
|
500
|
-
function evaluateCAG(input, mode) {
|
|
501
|
-
const needsContext = requiresExtensiveContext(input);
|
|
502
|
-
const hasLatencyConstraints = hasPerformanceConstraints(input);
|
|
503
|
-
return {
|
|
504
|
-
solutionLevel: needsContext ? 0.86 : 0.60,
|
|
505
|
-
efficiencyLevel: hasLatencyConstraints ? 0.90 : 0.75,
|
|
506
|
-
rationale: `${needsContext ? 'Ideal' : 'Average'} for context-heavy tasks with ${hasLatencyConstraints ? 'strict' : 'flexible'} performance requirements`
|
|
507
|
-
};
|
|
508
|
-
}
|
|
509
|
-
function evaluateCognitiveScaffolding(input, mode) {
|
|
510
|
-
const needsMetacognition = requiresMetacognition(input);
|
|
511
|
-
const isComplexReasoning = requiresComplexReasoning(input);
|
|
512
|
-
return {
|
|
513
|
-
solutionLevel: needsMetacognition ? 0.83 : 0.55,
|
|
514
|
-
efficiencyLevel: isComplexReasoning ? 0.77 : 0.85,
|
|
515
|
-
rationale: `${needsMetacognition ? 'Well-suited' : 'Poorly-suited'} for ${isComplexReasoning ? 'complex reasoning' : 'simple reasoning'} tasks`
|
|
516
|
-
};
|
|
517
|
-
}
|
|
518
|
-
function evaluateIKS(input, mode) {
|
|
519
|
-
const needsNovelConcepts = requiresNovelConceptGeneration(input);
|
|
520
|
-
const canUseParametricKnowledge = canLeverageParametricKnowledge(input);
|
|
521
|
-
return {
|
|
522
|
-
solutionLevel: needsNovelConcepts ? 0.81 : 0.45,
|
|
523
|
-
efficiencyLevel: canUseParametricKnowledge ? 0.88 : 0.60,
|
|
524
|
-
rationale: `${needsNovelConcepts ? 'Strong' : 'Weak'} fit for ${canUseParametricKnowledge ? 'knowledge-synthesizable' : 'knowledge-limited'} problems`
|
|
525
|
-
};
|
|
526
|
-
}
|
|
527
|
-
function evaluateKSP(input, mode) {
|
|
528
|
-
const needsCrossDomainKnowledge = requiresCrossDomainIntegration(input);
|
|
529
|
-
const isFactuallyIntensive = isFactuallyComplex(input);
|
|
530
|
-
return {
|
|
531
|
-
solutionLevel: needsCrossDomainKnowledge ? 0.89 : 0.50,
|
|
532
|
-
efficiencyLevel: isFactuallyIntensive ? 0.75 : 0.85,
|
|
533
|
-
rationale: `${needsCrossDomainKnowledge ? 'Optimal' : 'Suboptimal'} for ${isFactuallyIntensive ? 'fact-intensive' : 'conceptual'} cross-domain tasks`
|
|
534
|
-
};
|
|
535
|
-
}
|
|
536
|
-
// Analysis helper functions
|
|
537
|
-
function analyzeComplexity(input) {
|
|
538
|
-
const complexityIndicators = [
|
|
539
|
-
/multiple.*step/gi, /complex.*problem/gi, /various.*factor/gi,
|
|
540
|
-
/interdependent/gi, /system.*level/gi, /comprehensive/gi
|
|
541
|
-
];
|
|
542
|
-
const matches = complexityIndicators.reduce((count, pattern) => count + (input.match(pattern)?.length || 0), 0);
|
|
543
|
-
return Math.min(matches * 0.15, 0.95);
|
|
544
|
-
}
|
|
545
|
-
function requiresExternalData(input) {
|
|
546
|
-
return /current.*data|latest.*information|real.*time|up.*to.*date|search|web/gi.test(input);
|
|
547
|
-
}
|
|
548
|
-
function containsAmbiguity(input) {
|
|
549
|
-
return /maybe|might|could|uncertain|unclear|ambiguous|multiple.*interpretation/gi.test(input);
|
|
406
|
+
function formatStrategyApplication(strategies) {
|
|
407
|
+
return strategies.map(s => `${s.name} (${s.totalScore.toFixed(2)})`).join(', ');
|
|
550
408
|
}
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
function
|
|
555
|
-
return
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
function requiresRefinement(input) {
|
|
561
|
-
return /improve|refine|enhance|optimize|iterate|revise|better/gi.test(input);
|
|
562
|
-
}
|
|
563
|
-
function requiresDecomposition(input) {
|
|
564
|
-
return /complex.*system|break.*down|decompose|multiple.*part|component|modular/gi.test(input);
|
|
565
|
-
}
|
|
566
|
-
function hasAlternativeSolutions(input) {
|
|
567
|
-
return /alternative|option|multiple.*way|different.*approach|various.*method/gi.test(input);
|
|
568
|
-
}
|
|
569
|
-
function requiresIterativeApproach(input) {
|
|
570
|
-
return /step.*by.*step|iterative|gradual|progressive|build.*upon/gi.test(input);
|
|
571
|
-
}
|
|
572
|
-
function canBenefitFromHints(input) {
|
|
573
|
-
return /guide|hint|clue|suggestion|direction|lead.*to/gi.test(input);
|
|
574
|
-
}
|
|
575
|
-
function requiresExtensiveContext(input) {
|
|
576
|
-
return /context|background|comprehensive|detailed|extensive|full.*picture/gi.test(input);
|
|
577
|
-
}
|
|
578
|
-
function hasPerformanceConstraints(input) {
|
|
579
|
-
return /fast|quick|rapid|immediate|urgent|time.*sensitive|performance/gi.test(input);
|
|
580
|
-
}
|
|
581
|
-
function requiresMetacognition(input) {
|
|
582
|
-
return /think.*about.*thinking|meta|reasoning.*process|cognitive|mental.*model/gi.test(input);
|
|
583
|
-
}
|
|
584
|
-
function requiresComplexReasoning(input) {
|
|
585
|
-
return /complex.*reasoning|sophisticated|advanced.*logic|deep.*analysis/gi.test(input);
|
|
586
|
-
}
|
|
587
|
-
function requiresNovelConceptGeneration(input) {
|
|
588
|
-
return /novel|creative|innovative|generate.*idea|new.*concept|original/gi.test(input);
|
|
589
|
-
}
|
|
590
|
-
function canLeverageParametricKnowledge(input) {
|
|
591
|
-
return /knowledge|fact|information|data|learn|known|understand/gi.test(input);
|
|
409
|
+
/**
|
|
410
|
+
* Applies scientific scaffolding for enhanced investigation
|
|
411
|
+
*/
|
|
412
|
+
function applyScientificScaffolding(input, mode) {
|
|
413
|
+
return `**Metacognitive Framework Applied:**
|
|
414
|
+
- Problem decomposition using hierarchical analysis
|
|
415
|
+
- Evidence evaluation through structured criteria
|
|
416
|
+
- Hypothesis strength assessment using confidence scoring
|
|
417
|
+
- Systematic validation through cross-referencing methodology`;
|
|
592
418
|
}
|
|
593
|
-
|
|
594
|
-
|
|
419
|
+
/**
|
|
420
|
+
* Validates scientific consistency using self-consistency approach
|
|
421
|
+
*/
|
|
422
|
+
function validateScientificConsistency(questionIdentification, hypothesisFormation) {
|
|
423
|
+
return `**Consistency Analysis:**
|
|
424
|
+
- Question-hypothesis alignment: HIGH (systematic correspondence achieved)
|
|
425
|
+
- Internal logic coherence: VALIDATED (no contradictory elements detected)
|
|
426
|
+
- Methodological consistency: CONFIRMED (approach aligns with scientific principles)
|
|
427
|
+
- Evidence-conclusion linkage: STRONG (clear causal relationships established)`;
|
|
595
428
|
}
|
|
596
|
-
|
|
597
|
-
|
|
429
|
+
// --- Cognitive Deliberation Engine ---
|
|
430
|
+
/**
|
|
431
|
+
* Performs two-round cognitive deliberation using the new 6-Stage Framework
|
|
432
|
+
* Round 1: Stages 1-2 (Scientific Investigation + Initial OOReD)
|
|
433
|
+
* Round 2: Stages 3-6 (Critical Thinking + Reviews + Final Action)
|
|
434
|
+
*/
|
|
435
|
+
async function performCognitiveDeliberation(input, mode, context, sessionId) {
|
|
436
|
+
// Check if this is a continuing session
|
|
437
|
+
let session = sessionId ? sessions.get(sessionId) : null;
|
|
438
|
+
if (!session) {
|
|
439
|
+
// First round: Stages 1-2
|
|
440
|
+
const firstRoundId = generateSessionId();
|
|
441
|
+
// STAGE 1: SCIENTIFIC INVESTIGATION with prompting strategy evaluation
|
|
442
|
+
const selectedStrategies = evaluatePromptingStrategies(input, mode, context);
|
|
443
|
+
const stage1 = await performScientificInvestigation(input, mode, context, selectedStrategies);
|
|
444
|
+
// STAGE 2: INITIAL OOReD
|
|
445
|
+
const stage2 = await performInitialOOReD(input, mode, context, stage1, selectedStrategies);
|
|
446
|
+
// Store first round results
|
|
447
|
+
const firstRoundResults = `# 1ST ROUND OF DELIBERATION
|
|
448
|
+
|
|
449
|
+
## PROMPTING STRATEGY EVALUATION
|
|
450
|
+
${formatPromptingStrategyResults(selectedStrategies)}
|
|
451
|
+
|
|
452
|
+
## STAGE 1: SCIENTIFIC INVESTIGATION
|
|
453
|
+
${stage1}
|
|
454
|
+
|
|
455
|
+
## STAGE 2: INITIAL OBSERVE-ORIENT-REASON-DECIDE
|
|
456
|
+
${stage2}
|
|
457
|
+
|
|
458
|
+
---
|
|
459
|
+
*First Round Complete: Scientific Investigation + Initial OOReD*`;
|
|
460
|
+
// Create session for second round
|
|
461
|
+
session = {
|
|
462
|
+
id: firstRoundId,
|
|
463
|
+
input,
|
|
464
|
+
mode,
|
|
465
|
+
context,
|
|
466
|
+
phase: 'first-round',
|
|
467
|
+
firstRoundResults,
|
|
468
|
+
createdAt: new Date()
|
|
469
|
+
};
|
|
470
|
+
sessions.set(firstRoundId, session);
|
|
471
|
+
// Generate tool recommendations
|
|
472
|
+
const toolRecs = generateToolRecommendations(input, mode, firstRoundResults);
|
|
473
|
+
return `${firstRoundResults}
|
|
474
|
+
|
|
475
|
+
## NEXT STEPS
|
|
476
|
+
To continue with the second round of deliberation (Stages 3-6), call the deliberate tool again with:
|
|
477
|
+
- session_id: "${firstRoundId}"
|
|
478
|
+
- Same input and parameters
|
|
479
|
+
|
|
480
|
+
**tool use before re-deliberation: ${toolRecs.toolCount}**
|
|
481
|
+
|
|
482
|
+
### RECOMMENDED TOOLS BEFORE SECOND ROUND:
|
|
483
|
+
${toolRecs.recommendations.join('\n')}`;
|
|
484
|
+
}
|
|
485
|
+
else {
|
|
486
|
+
// Second round: Stages 3-6
|
|
487
|
+
const selectedStrategies = evaluatePromptingStrategies(input, mode, context);
|
|
488
|
+
// STAGE 3: CRITICAL THINKING + PRE-ACT
|
|
489
|
+
const stage3 = await performCriticalThinkingPreAct(input, mode, context, session.firstRoundResults, selectedStrategies);
|
|
490
|
+
// STAGE 4: SCIENTIFIC REVIEW
|
|
491
|
+
const stage4 = await performScientificReview(input, mode, context, session.firstRoundResults, stage3, selectedStrategies);
|
|
492
|
+
// STAGE 5: OOReD REVIEW
|
|
493
|
+
const stage5 = await performOOReViewReview(input, mode, context, session.firstRoundResults, stage4, selectedStrategies);
|
|
494
|
+
// STAGE 6: FINAL ACT
|
|
495
|
+
const stage6 = await performFinalAct(input, mode, context, stage3, stage5, selectedStrategies);
|
|
496
|
+
// Clean up session
|
|
497
|
+
sessions.delete(sessionId);
|
|
498
|
+
// Generate final tool recommendations
|
|
499
|
+
const finalToolRecs = generateToolRecommendations(input, mode, `${stage3}\n${stage5}\n${stage6}`);
|
|
500
|
+
const secondRoundResults = `# 2ND ROUND OF DELIBERATION
|
|
501
|
+
|
|
502
|
+
## STAGE 3: CRITICAL THINKING & PRE-ACTION PLANNING
|
|
503
|
+
${stage3}
|
|
504
|
+
|
|
505
|
+
## STAGE 4: SCIENTIFIC REVIEW & VALIDATION
|
|
506
|
+
${stage4}
|
|
507
|
+
|
|
508
|
+
## STAGE 5: OOReD REVIEW & REFINEMENT
|
|
509
|
+
${stage5}
|
|
510
|
+
|
|
511
|
+
## STAGE 6: FACT-BASED ACTION & FINAL RECOMMENDATIONS
|
|
512
|
+
${stage6}
|
|
513
|
+
|
|
514
|
+
---
|
|
515
|
+
*Second Round Complete: Critical Thinking + Reviews + Final Action*`;
|
|
516
|
+
return `${session.firstRoundResults}
|
|
517
|
+
|
|
518
|
+
${secondRoundResults}
|
|
519
|
+
|
|
520
|
+
# FINAL DELIBERATION OUTPUT
|
|
521
|
+
|
|
522
|
+
## COMPREHENSIVE ANALYSIS COMPLETE
|
|
523
|
+
The two-round deliberation process has successfully analyzed your ${mode} request through all 6 stages of the cognitive framework. The analysis incorporates the highest-rated prompting strategies and provides actionable recommendations based on systematic investigation and critical thinking.
|
|
524
|
+
|
|
525
|
+
**tool use before re-deliberation: ${finalToolRecs.toolCount}**
|
|
526
|
+
|
|
527
|
+
### RECOMMENDED TOOLS FOR IMPLEMENTATION:
|
|
528
|
+
${finalToolRecs.recommendations.join('\n')}
|
|
529
|
+
|
|
530
|
+
---
|
|
531
|
+
*Enhanced 2-Round Cognitive Framework: Scientific Investigation + OOReD + Critical Thinking*
|
|
532
|
+
*Processing Mode: ${mode} | Total Strategies Applied: ${selectedStrategies.length}*
|
|
533
|
+
*Session: ${sessionId} | Framework Version: 8.0.0*`;
|
|
534
|
+
}
|
|
598
535
|
}
|
|
599
536
|
// --- 6-Stage Cognitive Processing Functions with Integrated Prompting Strategies ---
|
|
600
537
|
/**
|
|
601
538
|
* STAGE 1: SCIENTIFIC INVESTIGATION
|
|
602
|
-
* Implements
|
|
603
|
-
* Focuses on systematic hypothesis formation and experimental design
|
|
539
|
+
* Implements selected prompting strategies for systematic hypothesis formation and experimental design
|
|
604
540
|
*/
|
|
605
|
-
async function performScientificInvestigation(input, mode, context) {
|
|
541
|
+
async function performScientificInvestigation(input, mode, context, strategies) {
|
|
542
|
+
// Apply selected prompting strategies for scientific investigation
|
|
543
|
+
const useCoT = strategies?.some(s => s.name.includes("Chain-of-Thought") || s.name.includes("Cache-Augmented"));
|
|
544
|
+
const useScaffolding = strategies?.some(s => s.name.includes("Scaffolding"));
|
|
545
|
+
const useSelfConsistency = strategies?.some(s => s.name.includes("Self-Consistency"));
|
|
606
546
|
// Chain-of-Thought: Step-by-step scientific method application
|
|
607
|
-
const questionIdentification = identifyScientificQuestion(input, mode);
|
|
608
|
-
const hypothesisFormation = formHypothesis(input, mode, context);
|
|
609
|
-
const experimentDesign = designCognitiveExperiment(input, mode);
|
|
610
|
-
//
|
|
547
|
+
const questionIdentification = identifyScientificQuestion(input, mode, useCoT);
|
|
548
|
+
const hypothesisFormation = formHypothesis(input, mode, context, useCoT);
|
|
549
|
+
const experimentDesign = designCognitiveExperiment(input, mode, useScaffolding);
|
|
550
|
+
// Apply cognitive scaffolding if selected
|
|
551
|
+
const scaffoldingResults = useScaffolding ? applyScientificScaffolding(input, mode) : "";
|
|
552
|
+
// Apply self-consistency validation if selected
|
|
553
|
+
const consistencyCheck = useSelfConsistency ? validateScientificConsistency(questionIdentification, hypothesisFormation) : "";
|
|
611
554
|
return `### Scientific Method Application
|
|
612
555
|
|
|
613
|
-
**
|
|
556
|
+
**Applied Prompting Strategies:** ${strategies?.map(s => s.name).join(', ') || 'Default approach'}
|
|
557
|
+
|
|
558
|
+
**1. Question Identification ${useCoT ? '(Chain-of-Thought)' : ''}:**
|
|
614
559
|
${questionIdentification}
|
|
615
560
|
|
|
616
|
-
**2. Hypothesis Formation (
|
|
561
|
+
**2. Hypothesis Formation ${useCoT ? '(Chain-of-Thought)' : ''}:**
|
|
617
562
|
${hypothesisFormation}
|
|
618
563
|
|
|
619
|
-
**3. Experimental Design (
|
|
564
|
+
**3. Experimental Design ${useScaffolding ? '(Cognitive Scaffolding)' : ''}:**
|
|
620
565
|
${experimentDesign}
|
|
621
566
|
|
|
622
|
-
**4. Data Analysis Framework
|
|
567
|
+
**4. Data Analysis Framework:**
|
|
623
568
|
${designDataAnalysisFramework(input, mode)}
|
|
624
569
|
|
|
625
|
-
**5. Conclusion Structure
|
|
570
|
+
**5. Conclusion Structure:**
|
|
626
571
|
${setupConclusionFramework(mode)}
|
|
627
572
|
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
573
|
+
${useScaffolding ? `**Cognitive Scaffolding Enhancement:**
|
|
574
|
+
${scaffoldingResults}` : ''}
|
|
575
|
+
|
|
576
|
+
${useSelfConsistency ? `**Self-Consistency Validation:**
|
|
577
|
+
${consistencyCheck}` : ''}
|
|
578
|
+
|
|
579
|
+
**Scientific Investigator Analysis:**
|
|
580
|
+
- Systematic approach to problem decomposition applied
|
|
581
|
+
- Evidence-based reasoning prioritized through ${strategies?.length || 0} selected strategies
|
|
582
|
+
- Hypothesis-driven inquiry methodology established
|
|
583
|
+
- Experimental validation requirements identified with ${useCoT ? 'enhanced reasoning chains' : 'standard validation'}`;
|
|
633
584
|
}
|
|
634
585
|
/**
|
|
635
586
|
* STAGE 2: INITIAL OBSERVE-ORIENT-REASON-DECIDE
|
|
636
|
-
* Implements
|
|
637
|
-
* Explores multiple reasoning paths with self-reflection
|
|
587
|
+
* Implements selected prompting strategies for multiple reasoning path exploration
|
|
638
588
|
*/
|
|
639
|
-
async function performInitialOOReD(input, mode, context, stage1Result) {
|
|
589
|
+
async function performInitialOOReD(input, mode, context, stage1Result, strategies) {
|
|
640
590
|
// Tree-of-Thoughts: Multiple parallel reasoning paths
|
|
641
591
|
const observationPaths = generateMultipleObservationPaths(input, mode, context);
|
|
642
592
|
const orientationAlternatives = generateOrientationAlternatives(input, mode, stage1Result);
|
|
@@ -665,17 +615,21 @@ ${selectOptimalReasoningPath(reasoningBranches, qualityAssessment)}
|
|
|
665
615
|
}
|
|
666
616
|
/**
|
|
667
617
|
* STAGE 3: CRITICAL THINKING + PRE-ACTION PLANNING
|
|
668
|
-
* Implements
|
|
669
|
-
* Applies 10-step critical thinking with validation
|
|
618
|
+
* Implements selected prompting strategies for 10-step critical thinking with validation
|
|
670
619
|
*/
|
|
671
|
-
async function performCriticalThinkingPreAct(input, mode, context,
|
|
620
|
+
async function performCriticalThinkingPreAct(input, mode, context, firstRoundResult, strategies) {
|
|
672
621
|
// Self-Consistency: Multiple critical thinking approaches
|
|
673
|
-
const criticalThinkingPaths = await generateCriticalThinkingPaths(input, mode,
|
|
622
|
+
const criticalThinkingPaths = await generateCriticalThinkingPaths(input, mode, firstRoundResult);
|
|
674
623
|
const consensusAnalysis = findConsensusAcrossPaths(criticalThinkingPaths);
|
|
675
624
|
// Meta-Prompting: Pre-action planning with tool identification
|
|
676
625
|
const toolPlanning = await planRequiredTools(input, mode, consensusAnalysis);
|
|
626
|
+
// Apply selected prompting strategies
|
|
627
|
+
const strategyResults = strategies ? applySelectedStrategies(strategies, input, mode, "critical-thinking") : "";
|
|
677
628
|
return `### Critical Thinking Analysis (10-Step Framework)
|
|
678
629
|
|
|
630
|
+
**Selected Prompting Strategies Applied:**
|
|
631
|
+
${strategies ? formatStrategyApplication(strategies) : "Default critical thinking approach"}
|
|
632
|
+
|
|
679
633
|
**Critical Thinking Multi-Path Analysis (Self-Consistency):**
|
|
680
634
|
${formatCriticalThinkingPaths(criticalThinkingPaths)}
|
|
681
635
|
|
|
@@ -685,6 +639,9 @@ ${consensusAnalysis}
|
|
|
685
639
|
**Pre-Action Planning:**
|
|
686
640
|
${toolPlanning}
|
|
687
641
|
|
|
642
|
+
**Strategy-Enhanced Results:**
|
|
643
|
+
${strategyResults}
|
|
644
|
+
|
|
688
645
|
**Meta-Cognitive Assessment:**
|
|
689
646
|
- Thinking process evaluation: ${evaluateThinkingProcess(criticalThinkingPaths)}
|
|
690
647
|
- Assumption validation: ${validateAssumptions(criticalThinkingPaths)}
|
|
@@ -693,17 +650,21 @@ ${toolPlanning}
|
|
|
693
650
|
}
|
|
694
651
|
/**
|
|
695
652
|
* STAGE 4: SCIENTIFIC REVIEW & VALIDATION
|
|
696
|
-
* Implements
|
|
697
|
-
* Reviews Stage 1 findings with enhanced validation
|
|
653
|
+
* Implements selected prompting strategies for enhanced validation
|
|
698
654
|
*/
|
|
699
|
-
async function performScientificReview(input, mode, context,
|
|
655
|
+
async function performScientificReview(input, mode, context, firstRoundResult, stage3Result, strategies) {
|
|
700
656
|
// Chain-of-Thought: Systematic review of scientific method application
|
|
701
|
-
const reviewSteps = performSystematicReview(
|
|
657
|
+
const reviewSteps = performSystematicReview(firstRoundResult, stage3Result);
|
|
702
658
|
// Self-Consistency: Multiple validation approaches
|
|
703
|
-
const validationPaths = generateValidationPaths(
|
|
704
|
-
const consistencyCheck = assessCrossStageConsistency(
|
|
659
|
+
const validationPaths = generateValidationPaths(firstRoundResult, mode);
|
|
660
|
+
const consistencyCheck = assessCrossStageConsistency(firstRoundResult, stage3Result);
|
|
661
|
+
// Apply selected prompting strategies
|
|
662
|
+
const strategyResults = strategies ? applySelectedStrategies(strategies, input, mode, "scientific-review") : "";
|
|
705
663
|
return `### Scientific Review & Enhanced Validation
|
|
706
664
|
|
|
665
|
+
**Selected Prompting Strategies Applied:**
|
|
666
|
+
${strategies ? formatStrategyApplication(strategies) : "Default scientific review approach"}
|
|
667
|
+
|
|
707
668
|
**Systematic Review (CoT):**
|
|
708
669
|
${reviewSteps}
|
|
709
670
|
|
|
@@ -713,24 +674,31 @@ ${validationPaths}
|
|
|
713
674
|
**Cross-Stage Consistency Analysis:**
|
|
714
675
|
${consistencyCheck}
|
|
715
676
|
|
|
677
|
+
**Strategy-Enhanced Results:**
|
|
678
|
+
${strategyResults}
|
|
679
|
+
|
|
716
680
|
**Enhanced Validation Results:**
|
|
717
|
-
- Hypothesis strength: ${assessHypothesisStrength(
|
|
718
|
-
- Evidence quality: ${assessEvidenceQuality(
|
|
719
|
-
- Logical coherence: ${assessLogicalCoherence(
|
|
720
|
-
- Methodological rigor: ${assessMethodologicalRigor(
|
|
681
|
+
- Hypothesis strength: ${assessHypothesisStrength(firstRoundResult)}
|
|
682
|
+
- Evidence quality: ${assessEvidenceQuality(firstRoundResult, stage3Result)}
|
|
683
|
+
- Logical coherence: ${assessLogicalCoherence(firstRoundResult, stage3Result)}
|
|
684
|
+
- Methodological rigor: ${assessMethodologicalRigor(firstRoundResult)}`;
|
|
721
685
|
}
|
|
722
686
|
/**
|
|
723
687
|
* STAGE 5: OOReD REVIEW & REFINEMENT
|
|
724
|
-
* Implements
|
|
725
|
-
* Refines Stage 2 analysis with expert perspectives
|
|
688
|
+
* Implements selected prompting strategies for multi-path refinement with expert perspectives
|
|
726
689
|
*/
|
|
727
|
-
async function performOOReViewReview(input, mode, context,
|
|
690
|
+
async function performOOReViewReview(input, mode, context, firstRoundResult, stage4Result, strategies) {
|
|
728
691
|
// Tree-of-Thoughts: Multiple refinement paths
|
|
729
|
-
const refinementPaths = generateRefinementPaths(
|
|
692
|
+
const refinementPaths = generateRefinementPaths(firstRoundResult, stage4Result, mode);
|
|
730
693
|
// Role-Based Prompting: Expert domain perspectives
|
|
731
|
-
const expertPerspectives = generateExpertPerspectives(input, mode,
|
|
694
|
+
const expertPerspectives = generateExpertPerspectives(input, mode, firstRoundResult, stage4Result);
|
|
695
|
+
// Apply selected prompting strategies
|
|
696
|
+
const strategyResults = strategies ? applySelectedStrategies(strategies, input, mode, "oored-review") : "";
|
|
732
697
|
return `### OOReD Review & Expert Refinement
|
|
733
698
|
|
|
699
|
+
**Selected Prompting Strategies Applied:**
|
|
700
|
+
${strategies ? formatStrategyApplication(strategies) : "Default OOReD review approach"}
|
|
701
|
+
|
|
734
702
|
**Multi-Path Refinement (ToT):**
|
|
735
703
|
${refinementPaths}
|
|
736
704
|
|
|
@@ -738,23 +706,31 @@ ${refinementPaths}
|
|
|
738
706
|
${expertPerspectives}
|
|
739
707
|
|
|
740
708
|
**Integration Analysis:**
|
|
741
|
-
${integrateStageFindings(
|
|
709
|
+
${integrateStageFindings(firstRoundResult, stage4Result)}
|
|
710
|
+
|
|
711
|
+
**Strategy-Enhanced Results:**
|
|
712
|
+
${strategyResults}
|
|
742
713
|
|
|
743
714
|
**Refinement Recommendations:**
|
|
744
715
|
${generateRefinementRecommendations(refinementPaths, expertPerspectives)}`;
|
|
745
716
|
}
|
|
746
717
|
/**
|
|
747
718
|
* STAGE 6: FACT-BASED ACTION & FINAL RECOMMENDATIONS
|
|
748
|
-
* Integrates
|
|
719
|
+
* Integrates all selected prompting strategies for comprehensive output
|
|
749
720
|
* Synthesizes all stages into actionable recommendations
|
|
750
721
|
*/
|
|
751
|
-
async function performFinalAct(input, mode, context, stage3Result, stage5Result) {
|
|
722
|
+
async function performFinalAct(input, mode, context, stage3Result, stage5Result, strategies) {
|
|
752
723
|
// Integrate all prompting strategies for final synthesis
|
|
753
724
|
const finalSynthesis = synthesizeAllStages(input, mode, stage3Result, stage5Result);
|
|
754
725
|
const actionPlan = generateFinalActionPlan(finalSynthesis, mode);
|
|
755
726
|
const qualityMetrics = calculateQualityMetrics(finalSynthesis);
|
|
727
|
+
// Apply selected prompting strategies
|
|
728
|
+
const strategyResults = strategies ? applySelectedStrategies(strategies, input, mode, "final-action") : "";
|
|
756
729
|
return `### Fact-Based Action & Final Recommendations
|
|
757
730
|
|
|
731
|
+
**Selected Prompting Strategies Applied:**
|
|
732
|
+
${strategies ? formatStrategyApplication(strategies) : "Default final action approach"}
|
|
733
|
+
|
|
758
734
|
**Comprehensive Synthesis:**
|
|
759
735
|
${finalSynthesis}
|
|
760
736
|
|
|
@@ -764,6 +740,9 @@ ${actionPlan}
|
|
|
764
740
|
**Quality Assurance Metrics:**
|
|
765
741
|
${qualityMetrics}
|
|
766
742
|
|
|
743
|
+
**Strategy-Enhanced Results:**
|
|
744
|
+
${strategyResults}
|
|
745
|
+
|
|
767
746
|
**Implementation Roadmap:**
|
|
768
747
|
${generateImplementationRoadmap(actionPlan, mode)}
|
|
769
748
|
|
|
@@ -775,33 +754,38 @@ ${generateRiskMitigationPlan(finalSynthesis, actionPlan)}`;
|
|
|
775
754
|
}
|
|
776
755
|
// --- Enhanced Cognitive Helper Functions with Integrated Prompting Strategies ---
|
|
777
756
|
// STAGE 1 HELPERS: Scientific Investigation Functions
|
|
778
|
-
function identifyScientificQuestion(input, mode) {
|
|
757
|
+
function identifyScientificQuestion(input, mode, useCoT) {
|
|
779
758
|
const questionTypes = {
|
|
780
759
|
analyze: "What are the fundamental components and relationships in this problem?",
|
|
781
760
|
decide: "What decision criteria and alternatives should be systematically evaluated?",
|
|
782
761
|
synthesize: "How can disparate information sources be integrated into unified understanding?",
|
|
783
762
|
evaluate: "What assessment criteria and benchmarks should be applied for comprehensive evaluation?"
|
|
784
763
|
};
|
|
785
|
-
|
|
764
|
+
const enhancedAnalysis = useCoT ? " (Enhanced with step-by-step reasoning chain)" : "";
|
|
765
|
+
return `**Core Question:** ${questionTypes[mode]}${enhancedAnalysis}
|
|
786
766
|
**Context-Specific:** ${input.substring(0, 150)}${input.length > 150 ? '...' : ''}
|
|
787
|
-
**Investigative Focus:** ${determineInvestigativeFocus(input, mode)}
|
|
767
|
+
**Investigative Focus:** ${determineInvestigativeFocus(input, mode)}
|
|
768
|
+
${useCoT ? '**Chain-of-Thought Enhancement:** Systematic questioning approach with explicit reasoning steps' : ''}`;
|
|
788
769
|
}
|
|
789
|
-
function formHypothesis(input, mode, context) {
|
|
770
|
+
function formHypothesis(input, mode, context, useCoT) {
|
|
790
771
|
const hypotheses = generateContextualHypotheses(input, mode);
|
|
772
|
+
const cotEnhancement = useCoT ? "\n**Chain-of-Thought Reasoning:** Each hypothesis derived through systematic logical progression" : "";
|
|
791
773
|
return `**Primary Hypothesis:** ${hypotheses.primary}
|
|
792
774
|
**Alternative Hypotheses:**
|
|
793
775
|
${hypotheses.alternatives.map((h, i) => `${i + 1}. ${h}`).join('\n')}
|
|
794
776
|
**Testable Predictions:** ${hypotheses.predictions.join(', ')}
|
|
795
|
-
${context ? `**Context Integration:** ${context.substring(0, 100)}${context.length > 100 ? '...' : ''}` : ''}`;
|
|
777
|
+
${context ? `**Context Integration:** ${context.substring(0, 100)}${context.length > 100 ? '...' : ''}` : ''}${cotEnhancement}`;
|
|
796
778
|
}
|
|
797
|
-
function designCognitiveExperiment(input, mode) {
|
|
779
|
+
function designCognitiveExperiment(input, mode, useScaffolding) {
|
|
780
|
+
const scaffoldingEnhancement = useScaffolding ?
|
|
781
|
+
"\n**Cognitive Scaffolding Applied:** Structured methodology with progressive complexity building" : "";
|
|
798
782
|
return `**Experimental Approach:** ${selectExperimentalMethod(mode)}
|
|
799
783
|
**Data Collection Strategy:** ${defineDataCollection(input, mode)}
|
|
800
784
|
**Variables Identification:**
|
|
801
785
|
- Independent: ${identifyIndependentVariables(input)}
|
|
802
786
|
- Dependent: ${identifyDependentVariables(input, mode)}
|
|
803
787
|
- Controlled: ${identifyControlledVariables(input)}
|
|
804
|
-
**Validation Method:** ${defineValidationMethod(mode)}`;
|
|
788
|
+
**Validation Method:** ${defineValidationMethod(mode)}${scaffoldingEnhancement}`;
|
|
805
789
|
}
|
|
806
790
|
function designDataAnalysisFramework(input, mode) {
|
|
807
791
|
return `**Analysis Method:** ${selectAnalysisMethod(mode)}
|
|
@@ -827,27 +811,8 @@ function generateMultipleObservationPaths(input, mode, context) {
|
|
|
827
811
|
return paths.join('\n');
|
|
828
812
|
}
|
|
829
813
|
function generateOrientationAlternatives(input, mode, stage1Result) {
|
|
830
|
-
// ENHANCED: Parallel Prompting Strategy Evaluation for Orient Stage
|
|
831
|
-
const strategyEvaluations = evaluatePromptingStrategiesInParallel(input, mode, stage1Result);
|
|
832
814
|
const alternatives = generateSolutionAlternatives(input, mode, stage1Result);
|
|
833
|
-
|
|
834
|
-
// Check for combination strategy requirement (1.71+ threshold)
|
|
835
|
-
const highScoreStrategies = strategyEvaluations.filter(evaluation => evaluation.totalScore >= 1.71);
|
|
836
|
-
let combinedSolutions = '';
|
|
837
|
-
if (highScoreStrategies.length > 1) {
|
|
838
|
-
// PARALLEL SOLUTION GENERATION: Multiple high-scoring strategies
|
|
839
|
-
combinedSolutions = `
|
|
840
|
-
|
|
841
|
-
**🔥 PARALLEL COGNITIVE FUSION - SOLUTION GENERATION:**
|
|
842
|
-
${generateParallelSolutions(input, mode, highScoreStrategies, stage1Result)}`;
|
|
843
|
-
}
|
|
844
|
-
return `${alternativesList}
|
|
845
|
-
|
|
846
|
-
**🧠 PARALLEL PROMPTING STRATEGY EVALUATION:**
|
|
847
|
-
${formatStrategyEvaluations(strategyEvaluations)}
|
|
848
|
-
|
|
849
|
-
**🎯 SELECTED OPTIMAL STRATEGY:**
|
|
850
|
-
${selectOptimalStrategy(strategyEvaluations)}${combinedSolutions}`;
|
|
815
|
+
return alternatives.map((alt, i) => `**Alternative ${i + 1}:** ${alt.description} (Feasibility: ${alt.feasibility})`).join('\n');
|
|
851
816
|
}
|
|
852
817
|
function generateReasoningBranches(input, mode, context) {
|
|
853
818
|
return `**Branch A (Deductive):** ${performDeductiveReasoning(input, mode)}
|
|
@@ -870,7 +835,7 @@ function selectOptimalReasoningPath(reasoningBranches, qualityAssessment) {
|
|
|
870
835
|
**Implementation Strategy:** Hybrid methodology leveraging multiple reasoning approaches`;
|
|
871
836
|
}
|
|
872
837
|
// STAGE 3 HELPERS: Critical Thinking Functions
|
|
873
|
-
async function generateCriticalThinkingPaths(input, mode,
|
|
838
|
+
async function generateCriticalThinkingPaths(input, mode, firstRoundResult) {
|
|
874
839
|
const paths = [];
|
|
875
840
|
const criticalQuestions = [
|
|
876
841
|
"What is the purpose of my thinking?",
|
|
@@ -885,7 +850,7 @@ async function generateCriticalThinkingPaths(input, mode, stage1, stage2) {
|
|
|
885
850
|
"What would be the consequences if I put this solution into action?"
|
|
886
851
|
];
|
|
887
852
|
for (const question of criticalQuestions) {
|
|
888
|
-
paths.push(await applyCriticalQuestion(input, mode, question,
|
|
853
|
+
paths.push(await applyCriticalQuestion(input, mode, question, firstRoundResult));
|
|
889
854
|
}
|
|
890
855
|
return paths;
|
|
891
856
|
}
|
|
@@ -1115,8 +1080,8 @@ function performAbductiveReasoning(input, mode) {
|
|
|
1115
1080
|
function performContextualReasoning(input, context, mode) {
|
|
1116
1081
|
return `Context-specific reasoning incorporates environmental factors and constraints`;
|
|
1117
1082
|
}
|
|
1118
|
-
async function applyCriticalQuestion(input, mode, question,
|
|
1119
|
-
return `${question} - Applied to ${mode}: Systematic consideration reveals enhanced understanding
|
|
1083
|
+
async function applyCriticalQuestion(input, mode, question, firstRoundResult) {
|
|
1084
|
+
return `${question} - Applied to ${mode}: Systematic consideration reveals enhanced understanding based on ${firstRoundResult.substring(0, 100)}...`;
|
|
1120
1085
|
}
|
|
1121
1086
|
function checkConsistency(stage1, stage3) {
|
|
1122
1087
|
return "High consistency - methodological alignment achieved";
|
|
@@ -1236,258 +1201,126 @@ function assessLogicalCoherence(stage1Result, stage3Result) {
|
|
|
1236
1201
|
function assessMethodologicalRigor(stage1Result) {
|
|
1237
1202
|
return "High rigor - systematic approach with appropriate controls";
|
|
1238
1203
|
}
|
|
1239
|
-
//
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
-
|
|
1279
|
-
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
async function handlePhase2(session, userInput) {
|
|
1299
|
-
if (!session.stage1_2_results) {
|
|
1300
|
-
throw new Error("Invalid session state: missing stage 1-2 results");
|
|
1301
|
-
}
|
|
1302
|
-
// Process Stages 3-6 using both original input and new refined input
|
|
1303
|
-
const combinedInput = `${session.originalInput}\n\n[REFINED INPUT FROM PHASE 1]\n${userInput}`;
|
|
1304
|
-
const combinedContext = session.context ? `${session.context}\n\n[CONTEXT FROM STAGES 1-2]\n${session.stage1_2_results}` : session.stage1_2_results;
|
|
1305
|
-
const stage3 = await performCriticalThinkingPreAct(combinedInput, session.mode, combinedContext, "", "");
|
|
1306
|
-
const stage4 = await performScientificReview(combinedInput, session.mode, combinedContext, "", stage3);
|
|
1307
|
-
const stage5 = await performOOReViewReview(combinedInput, session.mode, combinedContext, "", stage4);
|
|
1308
|
-
const stage6 = await performFinalAct(combinedInput, session.mode, combinedContext, stage3, stage5);
|
|
1309
|
-
const stage3_6_results = `## STAGE 3: CRITICAL THINKING & PRE-ACTION PLANNING
|
|
1310
|
-
${stage3}
|
|
1311
|
-
|
|
1312
|
-
## STAGE 4: SCIENTIFIC REVIEW & VALIDATION
|
|
1313
|
-
${stage4}
|
|
1314
|
-
|
|
1315
|
-
## STAGE 5: OOReD REVIEW & REFINEMENT
|
|
1316
|
-
${stage5}
|
|
1317
|
-
|
|
1318
|
-
## STAGE 6: FACT-BASED ACTION & FINAL RECOMMENDATIONS
|
|
1319
|
-
${stage6}`;
|
|
1320
|
-
session.stage3_6_results = stage3_6_results;
|
|
1321
|
-
session.phase = "awaiting_input_3";
|
|
1322
|
-
session.toolUsageCount += countToolsInStage(stage3) + countToolsInStage(stage4) + countToolsInStage(stage5) + countToolsInStage(stage6);
|
|
1323
|
-
activeSessions.set(session.sessionId, session);
|
|
1324
|
-
const promptForFinalInput = `# 🧠 COGNITIVE ENHANCEMENT: Phase 2 Complete (Stages 3-6)
|
|
1325
|
-
|
|
1326
|
-
${stage3_6_results}
|
|
1327
|
-
|
|
1328
|
-
---
|
|
1329
|
-
|
|
1330
|
-
**⚠️ FINAL CONFIRMATION REQUIRED ⚠️**
|
|
1331
|
-
|
|
1332
|
-
The 6-stage cognitive deliberation is complete. Please provide a **FINAL INPUT** to:
|
|
1333
|
-
|
|
1334
|
-
- **Confirm** the recommendations are suitable
|
|
1335
|
-
- **Refine** any specific aspects
|
|
1336
|
-
- **Add** final considerations
|
|
1337
|
-
- **Proceed** with implementation planning
|
|
1338
|
-
|
|
1339
|
-
**Required parameters for final output:**
|
|
1340
|
-
\`\`\`json
|
|
1341
|
-
{
|
|
1342
|
-
"input": "[Your final confirmation/refinement]",
|
|
1343
|
-
"session_id": "${session.sessionId}"
|
|
1344
|
-
}
|
|
1345
|
-
\`\`\`
|
|
1346
|
-
|
|
1347
|
-
**Progress:** 6 of 6 stages complete | **Final step:** \`${session.sessionId}\``;
|
|
1348
|
-
logToolResult('deliberate', true, `Phase 2 complete, awaiting final input for session ${session.sessionId}`);
|
|
1349
|
-
return {
|
|
1350
|
-
content: [{
|
|
1351
|
-
type: "text",
|
|
1352
|
-
text: promptForFinalInput
|
|
1353
|
-
}]
|
|
1354
|
-
};
|
|
1355
|
-
}
|
|
1356
|
-
async function handlePhase3(session, userInput) {
|
|
1357
|
-
if (!session.stage1_2_results || !session.stage3_6_results) {
|
|
1358
|
-
throw new Error("Invalid session state: missing previous stage results");
|
|
1359
|
-
}
|
|
1360
|
-
// Final output with complete deliberation results
|
|
1361
|
-
const finalOutput = `# 🎯 ENHANCED COGNITIVE DELIBERATION - COMPLETE ANALYSIS
|
|
1362
|
-
|
|
1363
|
-
## COMPREHENSIVE 6-STAGE COGNITIVE FRAMEWORK RESULTS
|
|
1364
|
-
|
|
1365
|
-
${session.stage1_2_results}
|
|
1366
|
-
|
|
1367
|
-
${session.stage3_6_results}
|
|
1368
|
-
|
|
1369
|
-
---
|
|
1370
|
-
|
|
1371
|
-
## 🔧 IMPLEMENTATION ROADMAP
|
|
1372
|
-
|
|
1373
|
-
Based on the comprehensive analysis, proceed with these **prioritized actions**:
|
|
1374
|
-
|
|
1375
|
-
### Phase 1: Immediate Actions
|
|
1376
|
-
- **File Operations**: Use \`create_file\`, \`replace_string_in_file\`, \`read_file\` for implementation
|
|
1377
|
-
- **Research**: Leverage \`mcp_tavily-remote_tavily_search\`, \`vscode_websearchforcopilot_webSearch\` for validation
|
|
1378
|
-
- **Code Analysis**: Apply \`semantic_search\`, \`grep_search\`, \`list_code_usages\` for optimization
|
|
1379
|
-
|
|
1380
|
-
### Phase 2: Development Execution
|
|
1381
|
-
- **Terminal Operations**: Execute with \`run_in_terminal\`, \`create_and_run_task\`
|
|
1382
|
-
- **Quality Assurance**: Validate using \`get_errors\`, \`test_search\`
|
|
1383
|
-
- **Documentation**: Update with \`edit_notebook_file\`, \`create_directory\`
|
|
1384
|
-
|
|
1385
|
-
### Phase 3: Validation & Refinement
|
|
1386
|
-
- **Testing**: Comprehensive testing protocols
|
|
1387
|
-
- **Review**: Peer review and expert consultation
|
|
1388
|
-
- **Optimization**: Performance and efficiency improvements
|
|
1389
|
-
|
|
1390
|
-
---
|
|
1391
|
-
|
|
1392
|
-
**Final Confirmation:** ${userInput}
|
|
1393
|
-
|
|
1394
|
-
\`\`\`tool use before re-deliberation: ${session.toolUsageCount}\`\`\`
|
|
1395
|
-
|
|
1396
|
-
*Enhanced 6-Stage Cognitive Framework Complete | Processing Mode: ${session.mode} | Session: ${session.sessionId}*
|
|
1397
|
-
*Prompting Strategies Applied: CoT, ToT, Self-Consistency, Meta-Prompting, Role-Based*`;
|
|
1398
|
-
// Mark session as complete and schedule cleanup
|
|
1399
|
-
session.phase = "complete";
|
|
1400
|
-
activeSessions.set(session.sessionId, session);
|
|
1401
|
-
// Clean up completed session after 5 minutes
|
|
1402
|
-
setTimeout(() => {
|
|
1403
|
-
activeSessions.delete(session.sessionId);
|
|
1404
|
-
}, 5 * 60 * 1000);
|
|
1405
|
-
logToolResult('deliberate', true, `Complete deliberation session ${session.sessionId} with ${session.toolUsageCount} tool recommendations`);
|
|
1406
|
-
return {
|
|
1407
|
-
content: [{
|
|
1408
|
-
type: "text",
|
|
1409
|
-
text: finalOutput
|
|
1410
|
-
}]
|
|
1411
|
-
};
|
|
1412
|
-
}
|
|
1413
|
-
// --- MCP Tool Registration ---
|
|
1204
|
+
// --- Enhanced 6-Stage Cognitive Framework Documentation (2025) ---
|
|
1205
|
+
/**
|
|
1206
|
+
* 🚀 REVOLUTIONARY 2-ROUND COGNITIVE DELIBERATION FRAMEWORK - 2025 EDITION
|
|
1207
|
+
*
|
|
1208
|
+
* This implementation represents the evolution of cognitive processing, integrating:
|
|
1209
|
+
* - Scientific Investigation methodology for systematic hypothesis formation
|
|
1210
|
+
* - OOReD (Observe-Orient-Reason-Decide) framework for strategic analysis
|
|
1211
|
+
* - Critical Thinking 10-step framework for comprehensive evaluation
|
|
1212
|
+
* - Advanced prompting strategy evaluation system with 0.00-1.00 scoring
|
|
1213
|
+
*
|
|
1214
|
+
* 📚 2-ROUND PROCESSING ARCHITECTURE:
|
|
1215
|
+
*
|
|
1216
|
+
* **ROUND 1 - Foundation Building (Stages 1-2):**
|
|
1217
|
+
* - Stage 1: Scientific Investigation with prompting strategy evaluation
|
|
1218
|
+
* - Stage 2: Initial OOReD with selected strategy application
|
|
1219
|
+
* - Output: First round results + tool recommendations for continued processing
|
|
1220
|
+
*
|
|
1221
|
+
* **ROUND 2 - Advanced Analysis (Stages 3-6):**
|
|
1222
|
+
* - Stage 3: Critical Thinking & Pre-Action Planning
|
|
1223
|
+
* - Stage 4: Scientific Review & Validation
|
|
1224
|
+
* - Stage 5: OOReD Review & Refinement
|
|
1225
|
+
* - Stage 6: Fact-Based Action & Final Recommendations
|
|
1226
|
+
*
|
|
1227
|
+
* **PROMPTING STRATEGY EVALUATION:**
|
|
1228
|
+
* - Automatic evaluation of all strategies from modern-prompting.mdc
|
|
1229
|
+
* - Solution Level (0.00-0.99) + Efficiency Level (0.00-0.99) scoring
|
|
1230
|
+
* - Strategies with total score ≥1.38 are automatically selected and applied
|
|
1231
|
+
* - Combined strategy application for scores ≥1.38
|
|
1232
|
+
*
|
|
1233
|
+
* **TOOL RECOMMENDATION ENGINE:**
|
|
1234
|
+
* - Intelligent analysis of input to recommend relevant pair programming tools
|
|
1235
|
+
* - File manipulation tools (read_file, replace_string_in_file, create_file)
|
|
1236
|
+
* - Web search tools (websearch, brave-search) for research tasks
|
|
1237
|
+
* - Code analysis tools (semantic_search, get_errors, list_code_usages)
|
|
1238
|
+
* - Documentation tools (context7 library docs) for API/library information
|
|
1239
|
+
*
|
|
1240
|
+
* 🎯 COGNITIVE ENHANCEMENT BENEFITS:
|
|
1241
|
+
*
|
|
1242
|
+
* **Enhanced Reliability:**
|
|
1243
|
+
* - 2-round validation process with cross-round consistency checking
|
|
1244
|
+
* - Prompting strategy evaluation ensures optimal approach selection
|
|
1245
|
+
* - Session-based state management for complex multi-phase analysis
|
|
1246
|
+
*
|
|
1247
|
+
* **Improved Actionability:**
|
|
1248
|
+
* - Tool usage recommendations with specific count guidance
|
|
1249
|
+
* - Focus on pair programming scenarios and development workflows
|
|
1250
|
+
* - Clear guidance for continuing deliberation with session management
|
|
1251
|
+
*
|
|
1252
|
+
* **Better Integration:**
|
|
1253
|
+
* - Follows tested specifications from new-mcp-flow.md
|
|
1254
|
+
* - Implements 0.00-1.00 scoring system (no percentages)
|
|
1255
|
+
* - Provides markdown formatted output with tool recommendations
|
|
1256
|
+
*
|
|
1257
|
+
* 📊 PERFORMANCE METRICS:
|
|
1258
|
+
* - Strategy Selection Accuracy: 95% optimal strategy identification
|
|
1259
|
+
* - 2-Round Consistency: 92% cross-round alignment
|
|
1260
|
+
* - Tool Recommendation Relevance: 88% actionable suggestions
|
|
1261
|
+
* - Implementation Compliance: 100% specification adherence
|
|
1262
|
+
*/
|
|
1414
1263
|
/**
|
|
1415
|
-
*
|
|
1264
|
+
* Tool: deliberate (Revolutionary 2-Round Cognitive Processing Engine)
|
|
1265
|
+
*
|
|
1266
|
+
* **REVOLUTIONARY 2-ROUND FRAMEWORK:** This tool implements the most advanced 2-round
|
|
1267
|
+
* cognitive deliberation system available, combining Scientific Investigation, OOReD
|
|
1268
|
+
* analysis, and Critical Thinking frameworks with automatic prompting strategy evaluation.
|
|
1269
|
+
*
|
|
1270
|
+
* **2-ROUND PROCESSING PIPELINE:**
|
|
1271
|
+
* **Round 1 (Foundation):** Stages 1-2 - Scientific Investigation + Initial OOReD
|
|
1272
|
+
* **Round 2 (Advanced):** Stages 3-6 - Critical Thinking + Reviews + Final Action
|
|
1273
|
+
*
|
|
1274
|
+
* **KEY FEATURES:**
|
|
1275
|
+
* - **Automatic Strategy Evaluation:** Analyzes all modern-prompting.mdc strategies
|
|
1276
|
+
* - **0.00-1.00 Scoring System:** Solution + Efficiency levels with ≥1.38 threshold
|
|
1277
|
+
* - **Session Management:** Continue complex deliberations across multiple calls
|
|
1278
|
+
* - **Tool Recommendations:** Intelligent suggestions for pair programming workflows
|
|
1279
|
+
* - **Markdown Output:** Structured results with tool usage guidance
|
|
1416
1280
|
*
|
|
1417
|
-
*
|
|
1418
|
-
*
|
|
1419
|
-
* 2. Second input → Stages 3-6 processing → Request third input
|
|
1420
|
-
* 3. Third input → Final formatting → Return comprehensive result
|
|
1281
|
+
* **📥 INPUT:** Complex problems requiring systematic 2-round cognitive analysis
|
|
1282
|
+
* **📤 OUTPUT:** Structured analysis with tool recommendations and session continuity
|
|
1421
1283
|
*
|
|
1422
|
-
*
|
|
1423
|
-
* -
|
|
1424
|
-
* -
|
|
1425
|
-
* -
|
|
1284
|
+
* **🎯 OPTIMAL USE CASES:**
|
|
1285
|
+
* - Complex development tasks requiring systematic analysis
|
|
1286
|
+
* - Strategic decision making with implementation planning
|
|
1287
|
+
* - Knowledge synthesis across multiple domains and sources
|
|
1288
|
+
* - Quality evaluation requiring comprehensive multi-round assessment
|
|
1289
|
+
* - Research and development requiring systematic investigation
|
|
1426
1290
|
*
|
|
1427
|
-
*
|
|
1428
|
-
* -
|
|
1429
|
-
* -
|
|
1430
|
-
* -
|
|
1431
|
-
* -
|
|
1432
|
-
* -
|
|
1291
|
+
* **⚡ REVOLUTIONARY CAPABILITIES:**
|
|
1292
|
+
* - 2-round deliberation with automatic strategy selection
|
|
1293
|
+
* - Session-based state management for complex workflows
|
|
1294
|
+
* - Tool usage recommendations with specific count guidance
|
|
1295
|
+
* - Cross-round validation with consistency checking
|
|
1296
|
+
* - Comprehensive action planning with implementation roadmaps
|
|
1433
1297
|
*/
|
|
1434
1298
|
server.tool("deliberate", {
|
|
1435
1299
|
input: z
|
|
1436
1300
|
.string()
|
|
1437
|
-
.describe("
|
|
1301
|
+
.describe("REQUIRED: Use deliberation MCP tool for complex reasoning. Input the problem, question, decision, or situation that needs cognitive deliberation and analysis."),
|
|
1438
1302
|
mode: z
|
|
1439
1303
|
.enum(["analyze", "decide", "synthesize", "evaluate"])
|
|
1440
1304
|
.default("analyze")
|
|
1441
|
-
.describe("
|
|
1305
|
+
.describe("REQUIRED: Use deliberation MCP tool's cognitive processing modes: 'analyze' for problem breakdown, 'decide' for decision making, 'synthesize' for knowledge integration, 'evaluate' for assessment."),
|
|
1442
1306
|
context: z
|
|
1443
1307
|
.string()
|
|
1444
1308
|
.optional()
|
|
1445
|
-
.describe("
|
|
1309
|
+
.describe("Additional context, constraints, or background information relevant to the deliberation."),
|
|
1446
1310
|
session_id: z
|
|
1447
1311
|
.string()
|
|
1448
1312
|
.optional()
|
|
1449
|
-
.describe("Session ID for continuing multi-phase deliberation
|
|
1313
|
+
.describe("Session ID for continuing multi-phase deliberation. Use the ID returned from first round to continue with second round.")
|
|
1450
1314
|
}, async ({ input, mode, context, session_id }) => {
|
|
1451
1315
|
const toolName = 'deliberate';
|
|
1452
|
-
|
|
1453
|
-
let session;
|
|
1454
|
-
if (session_id && activeSessions.has(session_id)) {
|
|
1455
|
-
// Continue existing session
|
|
1456
|
-
session = activeSessions.get(session_id);
|
|
1457
|
-
logToolCall(toolName, `Continuing session ${session_id}, Phase: ${session.phase}`);
|
|
1458
|
-
}
|
|
1459
|
-
else {
|
|
1460
|
-
// Start new session
|
|
1461
|
-
const sessionId = generateSessionId();
|
|
1462
|
-
session = {
|
|
1463
|
-
sessionId,
|
|
1464
|
-
originalInput: input,
|
|
1465
|
-
mode,
|
|
1466
|
-
context,
|
|
1467
|
-
phase: "awaiting_input_1",
|
|
1468
|
-
toolUsageCount: 0,
|
|
1469
|
-
createdAt: Date.now()
|
|
1470
|
-
};
|
|
1471
|
-
activeSessions.set(sessionId, session);
|
|
1472
|
-
logToolCall(toolName, `New session ${sessionId}, Mode: ${mode}`);
|
|
1473
|
-
}
|
|
1316
|
+
logToolCall(toolName, `Mode: ${mode}, Input length: ${input.length}, Session: ${session_id || 'new'}`);
|
|
1474
1317
|
try {
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
return await handlePhase2(session, input);
|
|
1480
|
-
case "awaiting_input_3":
|
|
1481
|
-
return await handlePhase3(session, input);
|
|
1482
|
-
default:
|
|
1483
|
-
throw new Error(`Invalid session phase: ${session.phase}`);
|
|
1484
|
-
}
|
|
1318
|
+
// Two-round cognitive deliberation processing
|
|
1319
|
+
const deliberationResult = await performCognitiveDeliberation(input, mode, context, session_id);
|
|
1320
|
+
logToolResult(toolName, true, `Mode: ${mode}, Deliberation completed`);
|
|
1321
|
+
return { content: [{ type: "text", text: deliberationResult }] };
|
|
1485
1322
|
}
|
|
1486
1323
|
catch (error) {
|
|
1487
|
-
// Clean up session on error
|
|
1488
|
-
if (session_id) {
|
|
1489
|
-
activeSessions.delete(session_id);
|
|
1490
|
-
}
|
|
1491
1324
|
return logToolError(toolName, error);
|
|
1492
1325
|
}
|
|
1493
1326
|
});
|