Explorer
/proc/106/root/tmp/graphiti_import_detached.py
← Zurück ↓ Download
import json,urllib.request,urllib.error,time
items=[
('ui-rollen','Workspace ist taegliche Arbeitsoberflaeche; Carlo Diagnose-, Protokoll- und Kontrolloberflaeche. Beide nutzen weitgehend Sessions, Skills, MCP, Jobs und Kanban. UI-/Statusunterschiede beweisen keine anderen Agentenergebnisse. Quelle: Architekturbericht 20260805 und dashboard app-carlo.py.'),
('persona-architektur','Persona-Regeln wirken auf den Agenten, nicht auf die Oberflaeche. Persona, SOUL.md und carlo-arbeitsweise ueberschneiden sich weiterhin. Unterschiedliches Antwortverhalten durch Workspace-Profile ist nicht abschliessend belegt. Quelle: Architekturberichte 20260805.'),
('personas-ui','Personas wurde aus der Workspace-Kachel entfernt; auf der Carlo-Kachel bleibt es erhalten. Nur UI, keine Persona-Funktion. Quelle: dashboard app-carlo.py, 20260806.'),
('terminal-files','Workspace-Terminal und Workspace-Files funktionieren nach den Reparaturen und der Workspace-Einrichtung. Quelle: Reparaturberichte 20260806.'),
('neutraler-workspace','Host /srv/hermes-workspaces/carlo, Container /home/workspace/carlo, read-write. Ordner: 01_AKTUELL, 02_PROJEKTE, 03_KUNDEN, 04_MARKETING, 05_DOKUMENTE, 90_EINGANG, 99_ARCHIV. Bewusst neutral ohne alte Projektaltlasten. Quelle: Workspace-Einrichtungsbericht 20260806.'),
('graphiti-vs-workspace','Graphiti ersetzt den Dateiarbeitsbereich nicht: Workspace dient Dateien und Bearbeitung; Graphiti Wissen und Zusammenhaengen. Quelle: Arbeitsauftrag 016, 2026-08-06.'),
('version-hold','Hermes v0.20.0 wird vorerst nicht aktualisiert. Quelle: Arbeitsauftrag 016, 2026-08-06.'),
('files-state-correction','Historische Korrektur: fruehere Files-Berichte beschrieben leer beziehungsweise read-only; der spaetere verifizierte Stand ist der neutrale Workspace mit sieben Ordnern und read-write Mount. Alte Aussage bleibt historische Beobachtung. Quellen: Files-Berichte 120500/121500 und Workspace-Bericht 123000.')]
result=[]
inv=json.load(urllib.request.urlopen('http://127.0.0.1:8644/episodes/inventory',timeout=30))
existing={str(e.get('name')) for e in inv.get('episodes',[])}
for key,content in items:
 name='hermes_session_2026-08-06_'+key
 if name in existing:
  result.append({'name':name,'status':'duplicate_exact'}); continue
 d={'content':content,'source':'hermes-session-import','actor':'codex','context':'Arbeitsauftrag 016; verified session knowledge; no secrets','timestamp':'2026-08-06T00:00:00Z','name':name}
 q=urllib.request.Request('http://127.0.0.1:8644/episodes',data=json.dumps(d).encode(),headers={'Content-Type':'application/json'})
 try:
  x=json.load(urllib.request.urlopen(q,timeout=1200)); result.append({'name':name,'status':'created','uuid':x.get('uuid')})
 except Exception as e: result.append({'name':name,'status':'failed','error':str(e)[:200]})
 print(json.dumps(result),flush=True)
print('FINAL '+json.dumps(result),flush=True)