
    "(i,                        S SK Jr  S SKrS SKrS SKrS SKrS SKJr  SSKJ	r	  SSK
Jr  SSKJr  SS jrSS	 jr\S
:X  a  \" 5         gg)    )annotationsN)Path   )MemoryEngine)run_http_server)MemoryServicec                    [         R                  " SS9n U R                  SSS9  U R                  SSS9nUR	                  S	5        UR	                  S
5      nUR                  S5        UR                  S5        UR                  S5        UR	                  S5      nUR                  S5        UR                  S5        UR                  S5        UR                  S5        UR	                  S5      nUR                  S5        UR                  S5        UR                  S5        UR                  S5        UR	                  S5      nUR                  S5        UR	                  S5      nUR                  S5        UR                  S5        UR                  S5        UR                  SSS9  UR	                  S5      nUR                  S5        UR                  S5        UR                  S5        UR	                  S5      nUR                  S [
        S!9  UR	                  S"5      n	U	R                  S [
        S!9  U	R                  S#5        UR	                  S$5      n
U
R                  S%[
        S&S'9  UR	                  S(5      nUR                  S)5        UR                  S*5        UR                  S+[
        S!9  UR                  S,5        UR                  S-5        UR                  S.S/S09  UR                  S1S/S09  UR                  S25        UR                  S3S/S09  UR	                  S45      nUR                  S5[
        S6S'9  UR                  S7[
        S8S'9  UR                  S [
        S!9  UR                  S#5        UR                  S9S/S09  UR	                  S:5      nUR                  S;S<S9  UR                  S=[
        S>S'9  UR	                  S?5      nUR                  S@5        UR                  SASBSC9  UR                  S5        UR                  SD5        UR                  SE5        UR                  SFS/S09  UR	                  SG5      nUR                  SH5        UR                  SI5        UR                  SJ5        UR                  SK5        UR	                  SL5      nUR                  SMSNSC9  UR	                  SO5      nUR                  SP5        UR	                  SQ5      nUR                  SRSSS9  UR                  ST5        UR                  SE5        UR                  SU5        UR                  S5        UR                  SD5        UR                  SV5        UR                  SW5        UR                  SX5        UR                  SY5        UR                  SZ5        UR                  S5        UR                  S5        UR                  S[S\/ S]9  UR                  S [
        S^S'9  UR	                  S_5      nUR                  S`5        UR	                  Sa5        UR	                  Sb5        UR	                  Sc5      nUR                  Sd5        U $ )eNzshared-agent-memory)progz--dbzshared-agent-memory.sqlite3)defaultcommandT)destrequiredinit-dbcreate-project
project_idnamez--descriptioncreate-reporepo_idz--project-idz--pathupsert-profile-facttitlecontentz--source-refz--evidence-refingestpayload_jsoncapture-conversation
source_refscopez--capture-modemanual_importcapture-sessionprocess-pendingz--limit)typemaintenance-tickz--job-idmaintenance-statusz--runs
   )r    r   maintenance-configjob_idz	--cadencez--interval-minutesz--window-startz--window-endz--enable
store_true)actionz	--disablez--metadata-jsonz--recompute-nextmaintenance-daemonz--interval-secondsi  z--jitter-seconds<   z--once
serve-httpz--hostz	127.0.0.1z--porti  searchqueryz--scopes*)nargsz	--repo-idz--typez--include-inboxcontextz	--projectz--repoz--agentz--taskconsolidate
memory_ids+explain
identifierlist-memoriesz--statusactivez--scopez	--subtypez--run-idz	--task-idz--origin-agentz--urlz--domainz
--metadataappend)r'   r   2   task-bundletask_idaudit-v2
migrate-v2exportz--output)argparseArgumentParseradd_argumentadd_subparsers
add_parserint)parser
subparsersprojectrepoprofiler   capturesessionprocessmaintenance_tickmaintenance_statusmaintenance_configmaintenance_daemon
serve_httpr+   r/   r0   r3   list_memoriestask_bundler=   s                        7/mnt/rpi/agents-database/src/shared_agent_memory/cli.pybuild_parserrT      s   $$*?@F
(EF&&I&EJ)$##$45G& )  /Di fn%h##$9:G!#()*""8,F
'##$:;G&!#)?C##$56G&!###$56G-!,,-?@!!)#!6!!*-#../CD##H3#C#../CD##H-##K0##$8s#C##$45##N3##J|#D##K#E##$56##$6|#L#../CD##$8sC#P##$6S"#M##IC#8##J/##H\#B&&|4JHk:H3=""8,F
 

#.
'
$
!
),?##I.G%"#"''6K\5##I.G&))/:Mz8<y)x({+~.{+z*{+/0w'z*~./0|HbIysB?''6KY'*%,'""8,F

#M    c                 B  ^^ [        5       n U R                  5       m[        TR                  5      n[	        U5      mTR
                  S:X  aL  [        [        R                  " [        [        TR                  5      R                  5       5      SS.SS95        g TR
                  S:X  a\  UR                  TR                  TR                  TR                  5        [        [        R                  " STR                  0SS95        g TR
                  S:X  ag  UR!                  TR"                  TR                  TR                  TR$                  5        [        [        R                  " S	TR"                  0SS95        g TR
                  S
:X  aY  [        [        R                  " UR'                  TR(                  TR*                  TR,                  TR.                  5      SS95        g TR
                  S:X  aL  [        [        R                  " UR1                  [        R2                  " TR4                  5      5      SS95        g TR
                  S:X  aW  [        [        R                  " UR7                  TR.                  TR8                  TR*                  TR:                  S9SS95        g TR
                  S:X  aN  [        [        R                  " UR=                  TR.                  TR8                  TR*                  5      SS95        g TR
                  S:X  a8  [        [        R                  " TR?                  TR@                  5      SS95        g TR
                  S:X  aA  [        [        R                  " TRC                  TR@                  TRD                  S9SS95        g TR
                  S:X  aG  [        [        R                  " URG                  5       URI                  TRJ                  S9S.SS95        g TR
                  S:X  Ga  URM                  TRD                  5      nS nTRN                  (       a   [        R2                  " TRN                  5      nS nTRP                  (       a  SnTRR                  (       a  SnTRT                  =(       d    US   nTRV                  b  TRV                  OURY                  S5      nTRZ                  b  TRZ                  OURY                  S5      nTR\                  b  TR\                  OURY                  S5      nS n	TR^                  (       a  URa                  UUUUS9n	URc                  TRD                  TRT                  TRV                  TRZ                  TR\                  U	UUS9n
[        [        R                  " U
SS95        g TR
                  S:X  a  S5UU4S jjn[        [        R                  " U" 5       SS95        TRd                  (       a  g  TRf                  (       a+  [h        Rj                  " S [m        S TRf                  5      5      OS n[n        Rp                  " [m        S!TRr                  5      U-   5        [        [        R                  " U" 5       SS95        M  TR
                  S":X  a*  [u        TR                  TRv                  TRx                  S#9  g TR
                  S$:X  a  TR                  TR"                  TRz                  S%.R}                  5        VVs0 s H  u  pU(       d  M  X_M     nnn[        [        R                  " UR                  TR                  TR                  UTR                  S&9SS95        g TR
                  S':X  aY  [        [        R                  " UR                  TR                  TR                  TR                  TR                  5      SS95        g TR
                  S(:X  a8  [        [        R                  " UR                  TR                  5      SS95        g TR
                  S):X  a8  [        [        R                  " UR                  TR                  5      SS95        g TR
                  S*:X  Ga  0 nTR                   H8  nUR                  S+5      u  nnnU(       a  U(       d  [        S,U 35      eXU'   M:     [        [        R                  " UR                  TR                  TR8                  TRz                  TR                  TR                  TR"                  TR                  TR                  TR                  TR                  TR                  TR.                  TR,                  U=(       d    S TR@                  S-9SS95        g TR
                  S.:X  a8  [        [        R                  " UR                  TR                  5      SS95        g TR
                  S/:X  a-  [        [        R                  " UR                  5       SS95        g TR
                  S0:X  a-  [        [        R                  " UR                  5       SS95        g TR
                  S1:X  a  UR                  5       nTR                  (       a  [        TR                  5      R                  [        R                  " USS9S2S39  [        [        R                  " S4[        [        TR                  5      R                  5       5      0SS95        g [        [        R                  " USS95        g g s  snnf )6Nr   initialized)dbstatus   )indentr   r   r   r   r   r   r   )capture_moder   r   r!   limitr%   r"   )r^   )jobsrunsr$   TFcadenceinterval_minuteswindow_start
window_end)ra   rb   rc   rd   )ra   rb   rc   rd   next_due_atenabledmetadatar(   c                 |   > TR                  TR                  TR                  S9n [        R                  " 5       U S.$ )Nr]   )	timestampresults)run_due_maintenancer^   r%   time)rj   argsengines    rS   _tickmain.<locals>._tick   s1    00tzz$++0VG!%AArU   r   r   r*   )db_pathhostportr+   )r   r   r    )include_inboxr/   r0   r3   r5   =zInvalid metadata filter: )rY   r   memory_typesubtyper   r   run_idr:   origin_agenturldomainr   evidence_refrg   r^   r9   r;   r<   r=   zutf-8)encodingoutput)returnzdict[str, object])]rT   
parse_argsr   rX   r   r   printjsondumpsstrr   resolvecreate_projectr   r   descriptioncreate_repor   pathupsert_profile_factr   r   r|   r   r   loadsr   capture_conversationr   r\   capture_sessionprocess_pendingr^   rk   r%   list_maintenance_jobslist_maintenance_runsr`   get_maintenance_jobmetadata_jsonenabledisablera   rb   getrc   rd   recompute_nextcompute_next_dueupdate_maintenance_joboncejitter_secondsrandomrandintmaxrl   sleepinterval_secondsr   rr   rs   r    itemsr+   r,   scopesrt   context_forrF   rG   agenttaskr0   r1   r3   r4   rg   	partition
ValueErrorrQ   rY   rw   rx   r:   ry   rz   r{   rR   audit_v2
migrate_v2r=   r~   
write_text)rD   servicejobrg   rf   ra   rb   rc   rd   re   updatedro   jitterkeyvaluefilterspair_payloadrm   rn   s                      @@rS   mainr      s%   ^FDDGG$G'"F||y djjDM$9$9$; <V_`ab	)	)t		4;K;KLdjj,8CD		&DLL$))T__diiPdjj)T\\21=>	.	.JJ++DJJdFWFWY]YhYhi	
 
	!djj

43D3D(EFqQR	/	/JJ,,T__djj$,,eievev,w	
 
*	*djj00$**dll[defg	*	*djj//

;AFG	+	+djj33$**T[[3Ybcde	-	-JJ 668'B_B_fjfofoB_Bpq	
 
-	-))$++6zz$"4"45H;;G<<G,,0#i.484I4I4U400[^[b[bcu[v,0,=,=,It((swwWeOf(,(CT__Q]I^
!22!1)%	 3 K 00KKLL!22**# 1 	
 	djj+,	-	-	B 	B 	djj+,99GKGZGZV^^As1d.A.A'BC`aFJJs1d334v=>$**UWQ/0  
	%diidiiH		! #oo<<		 eg	


  CJ 	 
 	djj

DKKX\XjXjktuvw		"djj,,T\\499djjRVR[R[\efgh		&djj,,T__=aHI		"djj9!DE		(MMD NN3/MCEa #<TF!CDD!SM	 "
 	JJ%%;;** $		 LL# LL;; LL!%!2!2;;#!%!2!2%-** & " %	
, 
	&djj,,T\\:1EF		#djj))+A67		%djj++-a89		!..";;((GA)FQX(Y$**hD,=,E,E,G(HIRSTU$**WQ/0 
"g
s   =ll__main__)r   zargparse.ArgumentParser)r   None)
__future__r   r>   r   r   rl   pathlibr   rn   r   http_apir   r   r   rT   r   __name__ rU   rS   <module>r      sB    "        % "upU1p zF rU   