Yash030 commited on
Commit
680e40e
·
verified ·
1 Parent(s): 3619c2d

Upload src/app.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. src/app.py +46 -0
src/app.py CHANGED
@@ -1999,6 +1999,19 @@ def mcp_tools_list():
1999
  "required": ["mode"]
2000
  }
2001
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
2002
  {
2003
  "name": "memory_slot_list",
2004
  "description": "List all pinned memory slots.",
@@ -2309,6 +2322,39 @@ def mcp_tools_call():
2309
  res = perform_antigravity_sync(mode, current_convo, current_folder)
2310
  text_out = json.dumps(res)
2311
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2312
  elif name == "memory_slot_list":
2313
  res = functions.slot_list(kv)
2314
  text_out = json.dumps(res, indent=2)
 
1999
  "required": ["mode"]
2000
  }
2001
  },
2002
+ {
2003
+ "name": "memory_antigravity_sync_all",
2004
+ "description": "Sync the current Antigravity session, automatically crystallize (summarize) it, and reflect to populate pinned memory slots in a single action.",
2005
+ "inputSchema": {
2006
+ "type": "object",
2007
+ "properties": {
2008
+ "mode": {"type": "string", "description": "Sync mode: current_session (default), current_folder, or all"},
2009
+ "currentConversationId": {"type": "string", "description": "Optional conversation ID of the current active session"},
2010
+ "currentFolder": {"type": "string", "description": "Optional current folder path to filter by"}
2011
+ },
2012
+ "required": ["mode"]
2013
+ }
2014
+ },
2015
  {
2016
  "name": "memory_slot_list",
2017
  "description": "List all pinned memory slots.",
 
2322
  res = perform_antigravity_sync(mode, current_convo, current_folder)
2323
  text_out = json.dumps(res)
2324
 
2325
+ elif name == "memory_antigravity_sync_all":
2326
+ mode = args.get("mode") or "current_session"
2327
+ current_convo = args.get("currentConversationId")
2328
+ current_folder = args.get("currentFolder")
2329
+ sync_res = perform_antigravity_sync(mode, current_convo, current_folder)
2330
+
2331
+ synced_sessions = sync_res.get("syncedSessions") or []
2332
+ crystallizations = {}
2333
+ reflections = {}
2334
+
2335
+ for cid in synced_sessions:
2336
+ session_id = f"antigravity_{cid[:18].replace('-', '_')}"
2337
+
2338
+ try:
2339
+ cres = functions.summarize(kv, {"sessionId": session_id})
2340
+ crystallizations[session_id] = cres
2341
+ except Exception as ex:
2342
+ crystallizations[session_id] = {"success": False, "error": str(ex)}
2343
+
2344
+ try:
2345
+ rres = functions.slot_reflect(kv, session_id, 50)
2346
+ reflections[session_id] = rres
2347
+ except Exception as ex:
2348
+ reflections[session_id] = {"success": False, "error": str(ex)}
2349
+
2350
+ text_out = json.dumps({
2351
+ "success": sync_res.get("success", True),
2352
+ "syncedSessions": synced_sessions,
2353
+ "observationsAdded": sync_res.get("observationsAdded", 0),
2354
+ "crystallizations": crystallizations,
2355
+ "reflections": reflections
2356
+ }, indent=2)
2357
+
2358
  elif name == "memory_slot_list":
2359
  res = functions.slot_list(kv)
2360
  text_out = json.dumps(res, indent=2)