123
return turns;
124
}
126
>
const text = first.message.text;
127
>
if (!text.startsWith(SIDE_CHAT_CONTEXT_START)) {
128
return turns;
129
}
130
>
const lengthHeaderStart = SIDE_CHAT_CONTEXT_START.length + 1;
agentPeerChats.ts
131
>
if (text.slice(lengthHeaderStart).startsWith(SIDE_CHAT_CONTEXT_LENGTH_PREFIX)) {
132
>
const lengthLineEnd = text.indexOf('\n', lengthHeaderStart);
133
>
const parsedLength = lengthLineEnd > 0
134
>
? Number.parseInt(text.slice(lengthHeaderStart + SIDE_CHAT_CONTEXT_LENGTH_PREFIX.length, lengthLineEnd), 10)
135
: Number.NaN;
137
>
const contextStart = lengthLineEnd + 1;
138
>
const contextEnd = contextStart + parsedLength;
139
>
if (text.slice(contextEnd, contextEnd + SIDE_CHAT_CONTEXT_END.length + 1) === `\n${SIDE_CHAT_CONTEXT_END}`) {
140
>
const userPrompt = text.slice(contextEnd + SIDE_CHAT_CONTEXT_END.length + 1).trimStart();
141
>
return [{ ...first, message: { ...first.message, text: userPrompt } }, ...turns.slice(1)];
142
>
}
143
>
}
144
>
}
145
const endIndex = text.lastIndexOf(SIDE_CHAT_CONTEXT_END);
146
if (endIndex < 0) {