feat: add wechat publish recovery and conversation memory
This commit is contained in:
@@ -127,11 +127,33 @@ export function renderUserMemoryProfileForHarness(profile, context = {}) {
|
||||
].join('\n');
|
||||
}
|
||||
|
||||
function renderStoredUserMemoryLines(memories) {
|
||||
const items = Array.isArray(memories) ? memories : [];
|
||||
if (items.length === 0) return ['- (暂无已沉淀的对话记忆)'];
|
||||
return items.slice(0, 50).map((item) => {
|
||||
const label = item?.label ? `[${item.label}] ` : '';
|
||||
const text = String(item?.text ?? item?.memory_text ?? item?.memoryText ?? '').trim();
|
||||
return `- ${label}${text}`;
|
||||
}).filter((line) => line.trim() !== '-');
|
||||
}
|
||||
|
||||
export function renderStoredUserMemoriesForHarness(memories) {
|
||||
return [
|
||||
'## TKMind 已沉淀用户记忆',
|
||||
'',
|
||||
'以下内容来自用户历史对话的长期记忆抽取,仅用于改善当前用户体验。',
|
||||
'不要把这些内容透露给其他用户;如果用户要求忘记或删除,应遵从并更新对应记忆。',
|
||||
'',
|
||||
...renderStoredUserMemoryLines(memories),
|
||||
].join('\n');
|
||||
}
|
||||
|
||||
export function buildSessionMemoryEntries({
|
||||
workingDir,
|
||||
sessionPolicy,
|
||||
sandboxConstraints = null,
|
||||
userContext = null,
|
||||
userMemories = null,
|
||||
}) {
|
||||
const entries = [];
|
||||
|
||||
@@ -179,6 +201,13 @@ export function buildSessionMemoryEntries({
|
||||
});
|
||||
}
|
||||
|
||||
if (Array.isArray(userMemories) && userMemories.length > 0) {
|
||||
entries.push({
|
||||
title: 'TKMind 已沉淀用户记忆',
|
||||
content: renderStoredUserMemoriesForHarness(userMemories),
|
||||
});
|
||||
}
|
||||
|
||||
return entries;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user