MCPcopy Create free account
hub / github.com/modelscope/ms-agent / add

Method add

ms_agent/memory/default_memory.py:433–464  ·  view source on GitHub ↗
(
        self,
        messages: List[Message],
        user_id: Optional[List[str]] = None,
        agent_id: Optional[List[str]] = None,
        run_id: Optional[List[str]] = None,
        memory_type: Optional[List[str]] = None,
    )

Source from the content-addressed store, hash-verified

431 return None
432
433 async def add(
434 self,
435 messages: List[Message],
436 user_id: Optional[List[str]] = None,
437 agent_id: Optional[List[str]] = None,
438 run_id: Optional[List[str]] = None,
439 memory_type: Optional[List[str]] = None,
440 ) -> None:
441 should_add_messages, should_delete = self._analyze_messages(messages)
442
443 if should_delete:
444 if self.history_mode == 'overwrite':
445 for msg_id in should_delete:
446 self._delete_single(msg_id=msg_id)
447 res = self.memory.get_all(
448 user_id=user_id or self.user_id,
449 agent_id=agent_id or self.agent_id,
450 run_id=run_id or self.run_id) # sorted
451 res = [(item['id'], item['memory']) for item in res['results']]
452 logger.info('Roll back success. All memory info:')
453 for item in res:
454 logger.info(item[1])
455 if should_add_messages:
456 for messages in should_add_messages:
457 messages = self.parse_messages(messages)
458 await self.add_single(
459 messages,
460 user_id=user_id,
461 agent_id=agent_id,
462 run_id=run_id,
463 memory_type=memory_type)
464 self.save_cache()
465
466 def parse_messages(self, messages: List[Message]) -> List[Message]:
467 new_messages = []

Callers 15

assemble_draftMethod · 0.80
_load_existing_idsFunction · 0.80
mainFunction · 0.80
_init_lsp_serversMethod · 0.80
after_tool_callMethod · 0.80
_merge_todosMethod · 0.80
deduplicate_by_urlMethod · 0.80
info_onceFunction · 0.80
warning_onceFunction · 0.80
_adjust_thread_countMethod · 0.80

Calls 6

_analyze_messagesMethod · 0.95
_delete_singleMethod · 0.95
parse_messagesMethod · 0.95
add_singleMethod · 0.95
save_cacheMethod · 0.95
get_allMethod · 0.80

Tested by

no test coverage detected