Full sync - all projects, memory, configs
This commit is contained in:
48
debug_memory.py
Normal file
48
debug_memory.py
Normal file
@ -0,0 +1,48 @@
|
||||
#!/usr/bin/env python3
|
||||
import json
|
||||
import os
|
||||
import glob
|
||||
|
||||
def find_newest_session():
|
||||
sessions_dir = "/home/wdjones/.openclaw/agents/main/sessions/"
|
||||
pattern = os.path.join(sessions_dir, "*.jsonl")
|
||||
files = glob.glob(pattern)
|
||||
files = [f for f in files if not "deleted" in f and not f.endswith(".lock")]
|
||||
newest_file = max(files, key=os.path.getmtime)
|
||||
return newest_file
|
||||
|
||||
def debug_messages(session_file):
|
||||
"""Debug what messages are in the file"""
|
||||
messages = []
|
||||
|
||||
with open(session_file, 'r') as f:
|
||||
for line_num, line in enumerate(f, 1):
|
||||
try:
|
||||
data = json.loads(line.strip())
|
||||
if data.get("type") == "message" and "message" in data:
|
||||
msg = data["message"]
|
||||
role = msg.get("role")
|
||||
if role in ["user", "assistant"]:
|
||||
content_parts = msg.get("content", [])
|
||||
print(f"Line {line_num}: {role} message with {len(content_parts)} content parts")
|
||||
for i, part in enumerate(content_parts):
|
||||
part_type = part.get("type", "unknown")
|
||||
print(f" Part {i}: {part_type}")
|
||||
if part_type == "text":
|
||||
text = part.get("text", "")[:100] # First 100 chars
|
||||
print(f" Text: {text}...")
|
||||
messages.append({
|
||||
"line": line_num,
|
||||
"role": role,
|
||||
"content_parts": len(content_parts)
|
||||
})
|
||||
except json.JSONDecodeError:
|
||||
continue
|
||||
|
||||
print(f"\nTotal messages found: {len(messages)}")
|
||||
for msg in messages:
|
||||
print(f" Line {msg['line']}: {msg['role']} ({msg['content_parts']} parts)")
|
||||
|
||||
session_file = "/home/wdjones/.openclaw/agents/main/sessions/83fac8ec-437c-4841-8ce4-c4b437266acc.jsonl"
|
||||
print(f"Debugging: {session_file}")
|
||||
debug_messages(session_file)
|
||||
Reference in New Issue
Block a user