MCPcopy Index your code
hub / github.com/simstudioai/sim / applyTokenWindow

Method applyTokenWindow

apps/sim/executor/handlers/agent/memory.ts:158–178  ·  view source on GitHub ↗
(messages: Message[], maxTokens: number, model?: string)

Source from the content-addressed store, hash-verified

156 }
157
158 private applyTokenWindow(messages: Message[], maxTokens: number, model?: string): Message[] {
159 const result: Message[] = []
160 let tokenCount = 0
161
162 for (let i = messages.length - 1; i >= 0; i--) {
163 const msg = messages[i]
164 const msgTokens = getAccurateTokenCount(msg.content, model)
165
166 if (tokenCount + msgTokens <= maxTokens) {
167 result.unshift(msg)
168 tokenCount += msgTokens
169 } else if (result.length === 0) {
170 result.unshift(msg)
171 break
172 } else {
173 break
174 }
175 }
176
177 return result
178 }
179
180 private applyContextWindowLimit(messages: Message[], model?: string): Message[] {
181 if (!model) return messages

Callers 4

fetchMemoryMessagesMethod · 0.95
seedMemoryMethod · 0.95
memory.test.tsFile · 0.80

Calls 2

getAccurateTokenCountFunction · 0.90
unshiftMethod · 0.80

Tested by

no test coverage detected