+
    P0j                        ^ RI Ht ^ RIt^ RIHt ^ RIHtHt ^RIH	t	 ] ! R R4      4       t
 ! R R	]4      t ! R
 R4      t ! R R4      tR R ltR# )    )annotationsN)	dataclass)AnyProtocol)utc_nowc                  0    ] tR t^
t$ R]R&   RtR]R&   RtR# )AgentResultzlist[dict[str, Any]]eventsspeakingstravatar_state N)__name__
__module____qualname____firstlineno____annotations__r   __static_attributes__r       ./home/wildlama/agent-gui/agent_gui/adapters.pyr	   r	   
   s      "L#"r   r	   c                  "    ] tR t^tR R ltRtR# )Adapterc               (    V ^8  d   QhRRRRRRRR/#    messager   agentdict[str, Any]
session_idreturnr	   r   )formats   "r   __annotate__Adapter.__annotate__   s(      3 ~ 3 ; r   c                	    R # Nr   selfr   r   r   s   &&&&r   runAdapter.run   s    r   r   Nr   r   r   r   r(   r   r   r   r   r   r      s     r   r   c                  "    ] tR t^tR R ltRtR# )EchoAdapterc               (    V ^8  d   QhRRRRRRRR/# r   r   )r!   s   "r   r"   EchoAdapter.__annotate__   s(     
 
3 
~ 
3 
; 
r   c                	    \        R RRVR,          RRR\        4       /R RRVR,          RRV 2R	R
R/R\        4       /.R7      # )typestatusr   idcontentu%   EchoAdapter actif, aucun LLM appelé.
created_atassistant_messagezEcho: rawadapterechor
   )r	   r   r&   s   &&&&r   r(   EchoAdapter.run   si     HU4[F ')	 /U4[y1Iv. ')
 	
r   r   Nr*   r   r   r   r,   r,      s    
 
r   r,   c                  <    ] tR t^*tR R lt]RR R ll4       tRtR# )
CliAdapterc               (    V ^8  d   QhRRRRRRRR/# r   r   )r!   s   "r   r"   CliAdapter.__annotate__+   s(     :
 :
3 :
~ :
3 :
; :
r   c                	   VP                  R 4      p\        V\        4      '       d	   V'       g   \        RV P	                  VR4      .R7      # V Uu. uF.  p\        V4      P                  RV4      P                  RV4      NK0  	  pp\        VP                  RR4      4      pRR	R
VR,          RRRP                  VR,          4      ,           \        V4      ^8  d   RMR,           RRVRV/R\        4       /p \        P                  ! VRRVRR7      p	T	P                  P!                  4       pT	P"                  P!                  4       pT	P$                  ^ 8w  dS   \        RTT P	                  TT;'       g    T;'       g    RT	P$                   2RT	P$                  RTRT/R7      .R7      # \        TRRR
TR,          RT;'       g    R RRT	P$                  RT/R\        4       /.R!7      # u upi   \         d2   p
\        RYP	                  T\        T
4      4      .R7      u Rp
?
# Rp
?
i\        P                   d"    \        RYP	                  TR4      .R7      u # i ; i)"commanderrorz!Commande CLI absente ou invalide.)r   r
   z{prompt}z{session_id}timeout_secondsi,  r0   r1   r   r2   r3   zLancement commande:  :N   Nz ... r6   argvr4   TF)textcapture_outputtimeoutcheckNzTimeout de l'agent CLI.u   Commande terminée avec code 
returncodestdoutstderr)r6   r5   u    [commande terminée sans sortie]r9   )get
isinstancelistr	   _errorr   replaceintjoinlenr   
subprocessr(   FileNotFoundErrorTimeoutExpiredrL   striprM   rK   )r'   r   r   r   r@   partrF   rI   status_event	completedexcoutputrM   s   &&&&         r   r(   CliAdapter.run+   sk   ))I&'4(($E+NOP 
 hoogn_cD	!!*g6>>~zZgnoeii 1378 HU4[-b0BBPSTXPY\]P]fcefFD"3W=')
	{"#I !!'')!!'')1$$ KKbb&bb.KIL`L`Ka,b)9+?+?6S[]cd   
 
 /U4[vKK)KL)*>*>&Q ')	
 	
O p& ! 	jG\;;W\^abe^fKg<hii(( 	{G\;;W\^wKx<yzz	{s0   4G*9G/ /I:&H& I&I=IINc               (    V ^8  d   QhRRRRRRRR/# )r   r   r   r3   r   r6   zdict[str, Any] | Noner    r   )r!   s   "r   r"   r>   h   s*     
 
n 
s 
9N 
Zh 
r   c                	^    R RRV P                  RR4      RTRT;'       g    / R\        4       /# )r0   rA   r   r2   unknownr3   r6   r4   )rN   r   )r   r3   r6   s   &&&r   rQ   CliAdapter._errorg   s:     GUYYtY/w399"')
 	
r   r   r%   )r   r   r   r   r(   staticmethodrQ   r   r   r   r   r<   r<   *   s    :
x 
 
r   r<   c                    V ^8  d   QhRRRR/# )r   r   r   r    r   r   )r!   s   "r   r"   r"   r   s     A A~ A' Ar   c                    V P                  R R4      pVR8X  d   \        4       # VR8X  d   \        4       # \        RV 24      h)r0   r8   cliu!   Type d'adaptateur non supporté: )rN   r,   r<   
ValueError)r   kinds   & r   adapter_forrj   r   sC    99VV$Dv~}u}|
8?
@@r   )
__future__r   rV   dataclassesr   typingr   r   sessionsr   r	   r   r,   r<   rj   r   r   r   <module>ro      sV    "  !    # # #
h 

 
*E
 E
PAr   