MCPcopy Create free account
hub / github.com/ShipSecAI/studio / ensureSystemMessage

Function ensureSystemMessage

worker/src/components/ai/ai-agent.ts:256–277  ·  view source on GitHub ↗
(history: AgentMessage[], systemPrompt: string)

Source from the content-addressed store, hash-verified

254}
255
256function ensureSystemMessage(history: AgentMessage[], systemPrompt: string): AgentMessage[] {
257 if (!systemPrompt.trim()) {
258 return history;
259 }
260
261 const [firstMessage, ...rest] = history;
262 const systemMessage: AgentMessage = { role: 'system', content: systemPrompt.trim() };
263
264 if (!firstMessage) {
265 return [systemMessage];
266 }
267
268 if (firstMessage.role !== 'system') {
269 return [systemMessage, firstMessage, ...rest];
270 }
271
272 if (firstMessage.content !== systemPrompt.trim()) {
273 return [{ role: 'system', content: systemPrompt.trim() }, ...rest];
274 }
275
276 return history;
277}
278
279function trimConversation(history: AgentMessage[], memorySize: number): AgentMessage[] {
280 if (history.length <= memorySize) {

Callers 1

executeFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected