Fix memory reload after save_memory — reload all memory files
This commit is contained in:
@@ -315,18 +315,34 @@ def dispatch_tool(fn_name, fn_args, round_num):
|
||||
# Handle save_memory reload
|
||||
result = execute_skill(script, fn_args)
|
||||
|
||||
# Reload memory if save_memory was called
|
||||
# Reload full memory if save_memory was called
|
||||
if fn_name == "save_memory":
|
||||
global AGENT_MEMORY
|
||||
try:
|
||||
with open(f"{WORKSPACE}/MEMORY.md") as f:
|
||||
AGENT_MEMORY = f.read().strip()
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
reload_memory()
|
||||
|
||||
return result
|
||||
|
||||
|
||||
def reload_memory():
|
||||
"""Reload all memory files from workspace."""
|
||||
global AGENT_MEMORY
|
||||
AGENT_MEMORY = ""
|
||||
try:
|
||||
with open(f"{WORKSPACE}/MEMORY.md") as f:
|
||||
AGENT_MEMORY = f.read().strip()
|
||||
mem_dir = f"{WORKSPACE}/memory"
|
||||
if os.path.isdir(mem_dir):
|
||||
for fname in sorted(os.listdir(mem_dir)):
|
||||
if fname.endswith(".md"):
|
||||
try:
|
||||
with open(f"{mem_dir}/{fname}") as f:
|
||||
topic = fname.replace(".md", "")
|
||||
AGENT_MEMORY += f"\n\n## {topic}\n{f.read().strip()}"
|
||||
except Exception:
|
||||
pass
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
|
||||
|
||||
def ollama_request(payload):
|
||||
data = json.dumps(payload).encode("utf-8")
|
||||
req = urllib.request.Request(
|
||||
|
||||
Reference in New Issue
Block a user