@bestdefense/bd-agent
Version:
An AI-powered coding assistant CLI that connects to AWS Bedrock
54 lines • 1.52 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ConversationManager = void 0;
class ConversationManager {
messages = [];
memoryManager;
addMessage(role, content) {
this.messages.push({ role, content });
}
addToolResult(toolUseId, result) {
const toolResultContent = {
toolResult: {
toolUseId,
content: [
{
text: typeof result === 'string' ? result : JSON.stringify(result)
}
]
}
};
this.addMessage('user', [toolResultContent]);
}
getMessages() {
return [...this.messages];
}
clear() {
this.messages = [];
}
getLastMessage() {
return this.messages[this.messages.length - 1];
}
getMessageCount() {
return this.messages.length;
}
truncateToLastN(n) {
if (this.messages.length > n) {
this.messages = this.messages.slice(-n);
}
}
setMemoryManager(memoryManager) {
this.memoryManager = memoryManager;
}
async getOptimizedMessages() {
if (!this.memoryManager) {
return this.getMessages();
}
return await this.memoryManager.processMessages(this.messages);
}
getMemoryStats() {
return this.memoryManager?.getStats() || null;
}
}
exports.ConversationManager = ConversationManager;
//# sourceMappingURL=conversation-manager.js.map