2020
2121# --- Composio Types ---
2222
23+
2324@dataclass
2425class ComposioTool :
2526 name : str
@@ -50,6 +51,7 @@ class ComposioCredential:
5051
5152# --- Cognee Entry Types ---
5253
54+
5355@dataclass
5456class CogneeQAEntry :
5557 question : str
@@ -114,6 +116,7 @@ class CogneeImproveResult:
114116
115117# --- Composio Methods ---
116118
119+
117120def search_composio_tools (
118121 base_url : str = DEFAULT_BASE_URL ,
119122 query : str = "" ,
@@ -191,6 +194,7 @@ def _do_list() -> list[ComposioCredential]:
191194
192195# --- Cognee Memory Methods ---
193196
197+
194198def remember_qa (
195199 base_url : str = DEFAULT_BASE_URL ,
196200 qa : CogneeQAEntry | None = None ,
@@ -244,18 +248,21 @@ def remember_trace(
244248
245249 def _do_remember () -> str :
246250 with httpx .Client (timeout = timeout ) as client :
247- resp = client .post (f"{ base_url } /cognee/trace" , json = {
248- "origin_function" : trace .origin_function ,
249- "status" : trace .status ,
250- "method_params" : trace .method_params ,
251- "method_return_value" : trace .method_return_value ,
252- "memory_query" : trace .memory_query ,
253- "memory_context" : trace .memory_context ,
254- "error_message" : trace .error_message ,
255- "session_id" : trace .session_id ,
256- "project" : trace .project ,
257- "source_agent" : trace .source_agent ,
258- })
251+ resp = client .post (
252+ f"{ base_url } /cognee/trace" ,
253+ json = {
254+ "origin_function" : trace .origin_function ,
255+ "status" : trace .status ,
256+ "method_params" : trace .method_params ,
257+ "method_return_value" : trace .method_return_value ,
258+ "memory_query" : trace .memory_query ,
259+ "memory_context" : trace .memory_context ,
260+ "error_message" : trace .error_message ,
261+ "session_id" : trace .session_id ,
262+ "project" : trace .project ,
263+ "source_agent" : trace .source_agent ,
264+ },
265+ )
259266 if resp .status_code != 200 :
260267 raise parse_error (resp )
261268 return str (resp .json ().get ("id" , "" ))
@@ -279,14 +286,17 @@ def remember_feedback(
279286
280287 def _do_remember () -> str :
281288 with httpx .Client (timeout = timeout ) as client :
282- resp = client .post (f"{ base_url } /cognee/feedback" , json = {
283- "target_node_id" : feedback .target_node_id ,
284- "feedback_text" : feedback .feedback_text ,
285- "score" : feedback .score ,
286- "project" : feedback .project ,
287- "session_id" : feedback .session_id ,
288- "source_agent" : feedback .source_agent ,
289- })
289+ resp = client .post (
290+ f"{ base_url } /cognee/feedback" ,
291+ json = {
292+ "target_node_id" : feedback .target_node_id ,
293+ "feedback_text" : feedback .feedback_text ,
294+ "score" : feedback .score ,
295+ "project" : feedback .project ,
296+ "session_id" : feedback .session_id ,
297+ "source_agent" : feedback .source_agent ,
298+ },
299+ )
290300 if resp .status_code != 200 :
291301 raise parse_error (resp )
292302 return str (resp .json ().get ("id" , "" ))
@@ -310,18 +320,21 @@ def remember_skill_run(
310320
311321 def _do_remember () -> str :
312322 with httpx .Client (timeout = timeout ) as client :
313- resp = client .post (f"{ base_url } /cognee/skill_run" , json = {
314- "skill_name" : skill_run .skill_name ,
315- "skill_version" : skill_run .skill_version ,
316- "params" : skill_run .params ,
317- "result" : skill_run .result ,
318- "status" : skill_run .status ,
319- "duration_ms" : skill_run .duration_ms ,
320- "error" : skill_run .error ,
321- "project" : skill_run .project ,
322- "session_id" : skill_run .session_id ,
323- "source_agent" : skill_run .source_agent ,
324- })
323+ resp = client .post (
324+ f"{ base_url } /cognee/skill_run" ,
325+ json = {
326+ "skill_name" : skill_run .skill_name ,
327+ "skill_version" : skill_run .skill_version ,
328+ "params" : skill_run .params ,
329+ "result" : skill_run .result ,
330+ "status" : skill_run .status ,
331+ "duration_ms" : skill_run .duration_ms ,
332+ "error" : skill_run .error ,
333+ "project" : skill_run .project ,
334+ "session_id" : skill_run .session_id ,
335+ "source_agent" : skill_run .source_agent ,
336+ },
337+ )
325338 if resp .status_code != 200 :
326339 raise parse_error (resp )
327340 return str (resp .json ().get ("id" , "" ))
@@ -349,15 +362,18 @@ def improve(
349362
350363 def _do_improve () -> CogneeImproveResult :
351364 with httpx .Client (timeout = timeout ) as client :
352- resp = client .post (f"{ base_url } /cognee/improve" , json = {
353- "project" : project ,
354- "min_confidence" : min_confidence ,
355- "min_access_count" : min_access_count ,
356- "consolidate_duplicates" : consolidate_duplicates ,
357- "regenerate_summaries" : regenerate_summaries ,
358- "refresh_embeddings" : refresh_embeddings ,
359- "limit" : limit ,
360- })
365+ resp = client .post (
366+ f"{ base_url } /cognee/improve" ,
367+ json = {
368+ "project" : project ,
369+ "min_confidence" : min_confidence ,
370+ "min_access_count" : min_access_count ,
371+ "consolidate_duplicates" : consolidate_duplicates ,
372+ "regenerate_summaries" : regenerate_summaries ,
373+ "refresh_embeddings" : refresh_embeddings ,
374+ "limit" : limit ,
375+ },
376+ )
361377 if resp .status_code != 200 :
362378 raise parse_error (resp )
363379 return CogneeImproveResult (** resp .json ())
@@ -407,12 +423,15 @@ def recall_with_session(
407423
408424 def _do_recall () -> str :
409425 with httpx .Client (timeout = timeout ) as client :
410- resp = client .post (f"{ base_url } /cognee/recall_session" , json = {
411- "query" : query ,
412- "session_id" : session_id ,
413- "project" : project ,
414- "limit" : limit ,
415- })
426+ resp = client .post (
427+ f"{ base_url } /cognee/recall_session" ,
428+ json = {
429+ "query" : query ,
430+ "session_id" : session_id ,
431+ "project" : project ,
432+ "limit" : limit ,
433+ },
434+ )
416435 if resp .status_code != 200 :
417436 raise parse_error (resp )
418437 return str (resp .json ().get ("context" , "" ))
0 commit comments