mcp-chain-of-thought
Version:
Chain of Thought is a 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 developer behavi
63 lines • 2.59 kB
JavaScript
/**
* listMemoryFiles prompt generator
* Responsible for combining templates and parameters into the final prompt
*/
import { loadPrompt, generatePrompt, loadPromptFromTemplate, } from "../loader.js";
/**
* Get the complete listMemoryFiles prompt
* @param params prompt parameters
* @returns generated prompt
*/
export function getListMemoryFilesPrompt(params) {
const { success, message, files } = params;
let content = "";
if (success) {
if (!files || files.length === 0) {
// No memory files found
const emptyResultTemplate = loadPromptFromTemplate("listMemoryFiles/emptyResult.md");
content = generatePrompt(emptyResultTemplate, {});
}
else {
// Format file list
let fileList = "| File | Created At | Task Count | Size |\n|------|------------|------------|------|\n";
files.forEach(file => {
// Format date
const dateFormatted = file.createdAt.toLocaleString();
// Format size
let sizeFormatted = file.size.toString() + " B";
if (file.size > 1024) {
sizeFormatted = (file.size / 1024).toFixed(1) + " KB";
}
if (file.size > 1024 * 1024) {
sizeFormatted = (file.size / (1024 * 1024)).toFixed(1) + " MB";
}
fileList += `| \`${file.name}\` | ${dateFormatted} | ${file.taskCount} | ${sizeFormatted} |\n`;
});
// Load success template
const successTemplate = loadPromptFromTemplate("listMemoryFiles/success.md");
// Load usage instructions template
const usageInstructionsTemplate = loadPromptFromTemplate("listMemoryFiles/usageInstructions.md");
const usageInstructions = generatePrompt(usageInstructionsTemplate, {
exampleFile: files[0].name,
});
content = generatePrompt(successTemplate, {
fileList,
usageInstructions,
});
}
}
else {
// Error occurred
const errorTemplate = loadPromptFromTemplate("listMemoryFiles/error.md");
content = generatePrompt(errorTemplate, {
message,
});
}
const indexTemplate = loadPromptFromTemplate("listMemoryFiles/index.md");
let prompt = generatePrompt(indexTemplate, {
content,
});
// Load possible custom prompt
return loadPrompt(prompt, "LIST_MEMORY_FILES");
}
//# sourceMappingURL=listMemoryFiles.js.map