mcp-shrimp-task-manager
Version:
Shrimp Task Manager is a task tool built for AI Agents, emphasizing chain-of-thought, reflection, and style consistency. It converts natural language into structured dev tasks with dependency tracking and iterative refinement, enabling agent-like develope
58 lines (52 loc) • 1.53 kB
text/typescript
/**
* researchMode prompt 生成器
* 負責將模板和參數組合成最終的 prompt
*/
import {
loadPrompt,
generatePrompt,
loadPromptFromTemplate,
} from "../loader.js";
/**
* researchMode prompt 參數介面
*/
export interface ResearchModePromptParams {
topic: string;
previousState: string;
currentState: string;
nextSteps: string;
memoryDir: string;
}
/**
* 獲取 researchMode 的完整 prompt
* @param params prompt 參數
* @returns 生成的 prompt
*/
export async function getResearchModePrompt(
params: ResearchModePromptParams
): Promise<string> {
// 處理之前的研究狀態
let previousStateContent = "";
if (params.previousState && params.previousState.trim() !== "") {
const previousStateTemplate = await loadPromptFromTemplate(
"researchMode/previousState.md"
);
previousStateContent = generatePrompt(previousStateTemplate, {
previousState: params.previousState,
});
} else {
previousStateContent = "這是第一次進行此主題的研究,沒有之前的研究狀態。";
}
// 載入主要模板
const indexTemplate = await loadPromptFromTemplate("researchMode/index.md");
let prompt = generatePrompt(indexTemplate, {
topic: params.topic,
previousStateContent: previousStateContent,
currentState: params.currentState,
nextSteps: params.nextSteps,
memoryDir: params.memoryDir,
time: new Date().toLocaleString(),
});
// 載入可能的自定義 prompt
return loadPrompt(prompt, "RESEARCH_MODE");
}