UNPKG

zettelkasten-memory-server

Version:

基于 Zettelkasten 记忆片段盒方法的 MCP 记忆服务器 v1.6.X

45 lines 2.25 kB
import { checkLatestContent, resetMemoryAccessCounter, removeLatestContentFetched } from './utils.js'; /** * 重命名记忆片段内容处理器 */ function createRenameMemoryHandler(manager) { return async (args) => { try { const { sourceFragmentName, targetFragmentName, conversationId } = args; if (!sourceFragmentName || typeof sourceFragmentName !== 'string') { throw new Error('sourceFragmentName is required and must be a string'); } if (!targetFragmentName || typeof targetFragmentName !== 'string') { throw new Error('targetFragmentName is required and must be a string'); } // 验证 conversationId 参数 if (!conversationId || typeof conversationId !== 'string') { throw new Error('conversationId is required and must be a string'); } await checkLatestContent(manager, sourceFragmentName, conversationId); await manager.renameMemory(sourceFragmentName, targetFragmentName); // 编辑后移除已获取最新内容标记(旧文件和重命名目标) removeLatestContentFetched(sourceFragmentName, conversationId); removeLatestContentFetched(targetFragmentName, conversationId); // 重置读取计数器 resetMemoryAccessCounter(sourceFragmentName, conversationId); resetMemoryAccessCounter(targetFragmentName, conversationId); return { content: [{ type: "text", text: `✅ 记忆片段 "${sourceFragmentName}" 已重命名为 "${targetFragmentName}"\n\n💡 **提示**:重构完成后,可使用 getOptimizeSuggestions 工具检查是否需要进一步优化。` }] }; } catch (error) { return { content: [{ type: "text", text: `❌ 重命名记忆片段失败: ${error && error.message ? error.message : String(error)}` }] }; } }; } export default createRenameMemoryHandler; //# sourceMappingURL=createRenameMemoryHandler.js.map