Ë
    ÂÓ^jª%  ã                   ó@  — d dl Z d dlZd dlZd dlZd dlmZ d dlZddlmZ ddl	m
Z
mZ ddlmZ ddlmZ  ej                  d	¬
«      dd„«       Zdee   ddfd„Zej'                  dd¬
«       ej(                  dd¬«      dee   ddfd„«       «       Zedk(  r e«        yy)é    N)ÚOptionalé   )ÚANSIé   )Ú_async_promptÚ_patch_anyio_open_process)ÚAgent)Ú_load_agent_configziA squad of lightweight composable AI applications built on Hugging Face's Inference Client and MCP stack.)ÚhelpÚreturnc                   ó   — y ©N© r   ó    úm/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/huggingface_hub/inference/_mcp/cli.pyÚappr      s   € ð 	r   Ú
agent_pathc              ƒ   óú  ‡‡ ‡!‡"K  — t        «        t        | «      \  }}|j                  dg «      }|j                  dg «      }t        j                  «       Š t        j                  «       Š!dŠ"t        j
                  «       }t        j                  t        j                  «      }d5ˆ ˆ!ˆ"fd„Š	 d}	 |j                  t        j                  ‰«       d}i }t        |«      dkD  �r°t        t        j                  t        j                   d	«      «      «       |D �]o  }	|	d
   }
|	d   }d|
› d�}t#        «       }|D ]\  }|d   dk(  r|j                  di «      n|j                  di «      }|j%                  «       D ]  \  }}||v sŒ|j'                  |«       Œ Œ^ |j                  d«      }t)        |t*        «      r||v r|j'                  d«       |s#t        t        j,                  d|
› d�«      «       ŒÚ|
j/                  dd«      j1                  «       }t        t        j                   d|
› �«      d|› d|› d�z   d¬«       t3        ‰!¬«      ƒ d{  –—† j5                  «       }‰!j7                  «       rI |r!	 |j9                  t        j                  «       yt        j                  t        j                  |«       y|}|s]t;        j<                  |d«      }|r#t        t        j>                  d|› d �«      «       n"t        t        j,                  d!|› d"�«      «       |||
<   |D ]c  }|d   dk(  r|j                  di «      n|j                  di «      }|j%                  «       D ]"  \  }}||v sŒ||   j/                  ||«      ||<   Œ$ Œe �Œr t        «        |j                  d«      }t)        |t*        «      r5|}|j%                  «       D ]  \  }
}|j/                  d|
› d�|«      }Œ ||d<   tA        |j                  d#«      |j                  d$«      |j                  d%«      |j                  d«      ||¬&«      4 ƒd{  –—† }|jC                  «       ƒ d{  –—†  t        t        j                  t        j                   d'jE                  t        |jF                  «      «      «      «      «       |jF                  D ]7  }t        t        j                   d|jH                  jJ                  › �«      «       Œ9 	 ‰ jM                  «        ‰!j7                  «       rY	 ddd«      ƒd{  –—†  |r!	 |j9                  t        j                  «       yt        j                  t        j                  |«       y	 t3        ‰!¬«      ƒ d{  –—† }dŠ"	 |jU                  |‰ ¬+«      2 3 d{  –—† }‰ j7                  «       r‰"s �n´‰!j7                  «       rY ddd«      ƒd{  –—†  |r!	 |j9                  t        j                  «       yt        j                  t        j                  |«       ytW        |d,«      rõ|jX                  d   jZ                  }|j\                  rt        |j\                  dd¬-«       |j^                  sŒÝ|j^                  D ]š  }|j`                  rt        d.|j`                  › d/�d¬«       |jH                  jJ                  r"t        |jH                  jJ                  › d¬«       |jH                  jb                  sŒyt        |jH                  jb                  › d¬«       Œœ �Œˆt        t        j>                  d0|jJ                  › d1|jd                  › d2|j\                  › d2�«      d¬)«       �ŒÒt        «        �Œ‚# t        t        f$ r+ t        j                  t        j                  ˆfd„«       Y �ŒÚw xY w7 �Œd# t        t        f$ r Y yw xY w7 �ŒŽ7 �Œy7 �Œ±# t        t        f$ r Y yw xY w7 �Œl# tN        $ r# t        t        jP                  d(«      d¬)«       Y n´tR        $ r8 ‰"s‰ j7                  «       rY �ŒAt        t        jP                  d*«      d¬)«       Y nuw xY w7 �Œ¾7 �Œ‹# t        t        f$ r Y yw xY w6 �Œ# tf        $ rG}ti        jj                  «       }t        t        jP                  d3|› d2|› �«      d¬)«       dŠ"Y d}~�ŒOd}~ww xY wddd«      ƒd{  –—†7   n# 1 ƒd{  –—†7  sw Y   nxY wnM# tf        $ rA}ti        jj                  «       }t        t        jP                  d4|› d2|› �«      d¬)«       |‚d}~ww xY w|r6	 |j9                  t        j                  «       y# t        t        f$ r Y yw xY wt        j                  t        j                  |«       y# r6	 |j9                  t        j                  «       w # t        t        f$ r Y w w xY wt        j                  t        j                  |«       w xY w­w)6zú
    Tiny Agent loop.

    Args:
        agent_path (`str`, *optional*):
            Path to a local folder containing an `agent.json` and optionally a custom `PROMPT.md` or `AGENTS.md` file or a built-in agent stored in a Hugging Face dataset.

    ÚinputsÚserversTNc                  óÐ   •— ‰r3dŠ‰ j                  «        t        t        j                  d«      d¬«       y t        t        j                  d«      d¬«       ‰j                  «        y )NFz)
Interrupted. Press Ctrl+C again to quit.T©Úflushz
Exiting...)ÚsetÚprintr   Úred)Úabort_eventÚ
exit_eventÚfirst_sigints   €€€r   Ú_sigint_handlerz"run_agent.<locals>._sigint_handler/   sJ   ø€ áØ ˆLØ�O‰OÔÜ”$—(‘(ÐGÓHÐPTÕUØäŒd�h‰h�~Ó&¨dÕ3Ø�‰Õr   Fc                  ó   •—  ‰«       S r   r   )Ú_r    s    €r   ú<lambda>zrun_agent.<locals>.<lambda>A   s
   ø€ ±OÓ4E€ r   r   zfSome initial inputs are required by the agent. Please provide a value or leave empty to load from env.ÚidÚdescriptionz${input:ú}ÚtypeÚstdioÚenvÚheadersÚapiKeyzInput 'zJ' defined in config but not used by any server or as an API key. Skipping.ú-r"   u    â€¢ z: z. (default: load from z).ú )Úend)r   Ú z Value successfully loaded from 'ú'zNo value found for 'z'' in environment variables. Continuing.ÚproviderÚmodelÚendpointUrl)r1   r2   Úbase_urlÚapi_keyr   ÚpromptzAgent loaded with {} tools:z
EOF received, exiting.r   z,
Keyboard interrupt during input processing.)r   Úchoices)r.   r   z<Tool ú>z

Tool[z] ú
z
Error during agent run: ú
An unexpected error occurred: ©r   N)6r   r
   ÚgetÚasyncioÚEventÚget_running_loopÚsignalÚ	getsignalÚSIGINTÚadd_signal_handlerÚAttributeErrorÚNotImplementedErrorÚlenr   r   ÚboldÚbluer   ÚitemsÚaddÚ
isinstanceÚstrÚyellowÚreplaceÚupperr   ÚstripÚis_setÚremove_signal_handlerÚosÚgetenvÚgreenr	   Ú
load_toolsÚformatÚavailable_toolsÚfunctionÚnameÚclearÚEOFErrorr   ÚKeyboardInterruptÚrunÚhasattrr7   ÚdeltaÚcontentÚ
tool_callsr$   Ú	argumentsÚtool_call_idÚ	ExceptionÚ	tracebackÚ
format_exc)#r   Úconfigr6   r   r   ÚloopÚoriginal_sigint_handlerÚsigint_registered_in_loopÚresolved_inputsÚ
input_itemÚinput_idr%   Úenv_special_valueÚinput_usagesÚserverÚenv_or_headersÚkeyÚvalueÚraw_api_keyÚenv_variable_keyÚ
user_inputÚfinal_valueÚsubstituted_api_keyÚvalÚagentÚtÚchunkr`   ÚcallÚeÚtb_strr    r   r   r   s#                                  @@@@r   Ú	run_agentr�      s	  ûè ø€ ô Ôä'¨
Ó3�N€FˆFà�Z‰Z˜ "Ó%€FØ�j‰j˜ BÓ'€Gä—-‘-“/€KÜ—‘“€JØ€Lä×#Ñ#Ó%€DÜ$×.Ñ.¬v¯}©}Ó=Ð÷	ðeBØ$)Ð!ð	GØ×#Ñ#¤F§M¡M°?ÔCØ(,Ð%ð +-ˆäˆv‹;˜‹?ÜÜ—	‘	Ü—I‘IðRóóôð %ó 8n�
Ø% dÑ+�Ø(¨Ñ7�Ø&/°¨z¸Ð$<Ð!ô  #›u�Ø%ò 2�Fà>DÀV¹nÐPWÒ>W V§Z¡Z°°rÔ%:Ð]c×]gÑ]gÐhqÐsuÓ]v�NØ&4×&:Ñ&:Ó&<ò 2™
˜˜UØ,°Ò5Ø(×,Ñ,¨SÕ1ñ2ð2ð %Ÿj™j¨Ó2�Ü˜k¬3Ô/Ð4EÈÑ4TØ ×$Ñ$ XÔ.á#ÜÜŸ™Ø% h Zð 0)ð )óôð ð $,×#3Ñ#3°C¸Ó#=×#CÑ#CÓ#EÐ ÜÜ—I‘I  h ZÐ0Ó1°b¸¸ÐE[Ð\lÐ[mÐmoÐ4pÑpØõô %2¸ZÔ$H×H×OÑOÓQ�
Ø×$Ñ$Ô&ØñN %ðØ×*Ñ*¬6¯=©=Õ9ô �M‰Mœ&Ÿ-™-Ð)@ÕAðU )�Ù"Ü"$§)¡)Ð,<¸bÓ"A�KÙ"ÜœdŸj™jÐ+KÐL\ÐK]Ð]^Ð)_Ó`ÕaäÜ ŸK™KØ"6Ð7GÐ6HÐHoÐ póôð
 -8� Ñ)ð &ò n�FØ>DÀV¹nÐPWÒ>W V§Z¡Z°°rÔ%:Ð]c×]gÑ]gÐhqÐsuÓ]v�NØ&4×&:Ñ&:Ó&<ò n™
˜˜UØ,°Ò5Ø2@ÀÑ2E×2MÑ2MÐN_ÐalÓ2m˜N¨3Ò/ñnònði8nôt ŒGà—j‘j Ó*ˆÜ�k¤3Ô'Ø"-ÐØ!0×!6Ñ!6Ó!8ò a‘�˜#Ø&9×&AÑ&AÀIÈhÈZÐWYÐBZÐ\_Ó&`Ñ#ðaà2ˆF�8ÑäØ—Z‘Z 
Ó+Ø—*‘*˜WÓ%Ø—Z‘Z Ó.Ø—J‘J˜xÓ(ØØô
÷ ?	(ð ?	(ð Ø×"Ñ"Ó$×$Ð$Ü”$—)‘)œDŸI™IÐ&C×&JÑ&JÌ3Èu×OdÑOdÓKeÓ&fÓgÓhÔiØ×*Ñ*ò <�Ü”d—i‘i %¨¯
©
¯©Ð'8Ð 9Ó:Õ;ð<ð Ø×!Ñ!Ô#ð ×$Ñ$Ô&Ø÷%?	(÷ ?	(ñN %ðØ×*Ñ*¬6¯=©=Õ9ô �M‰Mœ&Ÿ-™-Ð)@ÕAðsÜ'4À
Ô'K×!K�JØ#'�Lð(Ø',§y¡y°È yÓ'U÷ ð ˜eØ&×-Ñ-Ô/¹Ú!Ø%×,Ñ,Ô.Ø"÷M?	(÷ ?	(ñN %ðØ×*Ñ*¬6¯=©=Õ9ô �M‰Mœ&Ÿ-™-Ð)@ÕAôK # 5¨)Ô4Ø$)§M¡M°!Ñ$4×$:Ñ$:˜EØ$Ÿ}š}Ü % e§m¡m¸À4Õ HØ$×/Ó/Ø,1×,<Ñ,<ò !T DØ'+§w¢wÜ(-°°t·w±w°i¸qÐ.AÀrÕ(JØ'+§}¡}×'9Ò'9Ü(-°·±×1CÑ1CÐ0DÈ3Õ(OØ'+§}¡}×'>Ó'>Ü(-°·±×1HÑ1HÐ0IÐPRÖ(Sò!Tô "Ü $§
¡
¨Y°u·z±z°lÀ"ÀU×EWÑEWÐDXÐXZÐ[`×[hÑ[hÐZiÐikÐ+lÓ mØ&*÷ô
 ”Gñ[ øôA Ô 3Ð4ò 	Gä�M‰Mœ&Ÿ-™-Ó)E×Fð	Gúðb IúôX #Ô$7Ð8ò ÙðúðU?	(ùð %ùð?	(úôT #Ô$7Ð8ò Ùðúðk "Lúäò Üœ$Ÿ(™(Ð#=Ó>ÀdÕKÙÜ(ò Ù'¨K×,>Ñ,>Ô,@Ú äœdŸh™hÐ'VÓWÐ_cÕdÙðúðùðE?	(úôT #Ô$7Ð8ò ÙðúðQ (Vúô4 !ò (Ü&×1Ñ1Ó3�FÜœ$Ÿ(™(Ð%?À¸sÀ"ÀVÀHÐ#MÓNÐVZÕ[Ø#'–Lûð(ú÷y?	(÷ ?	(÷ ?	(÷ ?	(ó ?	(üôB ò Ü×%Ñ%Ó'ˆÜŒd�h‰hÐ9¸!¸¸B¸v¸hÐGÓHÐPTÕUØˆûðúñ %ðØ×*Ñ*¬6¯=©=Õ9øÜ"Ô$7Ð8ò Ùðúô �M‰Mœ&Ÿ-™-Ð)@ÕAøñ %ðØ×*Ñ*¬6¯=©=Õ9øÜ"Ô$7Ð8ò Ùðúô �M‰Mœ&Ÿ-™-Ð)@ÕAüsx  †B&g;Â-c0 Â0"]3 ÃB-c0 Æ Cc0 É^0É#c0 É0g;É3^3 Ê&g;Ê8B1c0 Í*Cc0 Ð:_Ð;c0 Ð>cÑ_ÑB?cÔc0 Ô_Ôc0 Ô"g;Ô%_ Õ&g;Õ+_)Õ:_&Õ;_)Öa5Öa2ÖaÖa2Ö'a5×c0 ×a×c0 ×g;×a ×6&g;ØAa5Ù2Ba5Û7A:a5Ý1cÝ36^-Þ)c0 Þ,^-Þ-c0 Þ3_ßg;ß_ßg;ßc0 ßcßc0 ß_#ß g;ß"_#ß#g;ß&_)ß))aàcàaà.cà1 aácáaácáa2ác0 áa/á,g;á.a/á/g;á2a5á5	cá><c â:cã cãcãc0 ãcãc0 ãc,ã c#ã!c,ã(c0 ã/f ã0	d:ã9<d5ä5d:ä:f ä=g;å e  åg;å e2å/g;å1e2å2(g;æg8æf>æ=g8æ>gçg8çgç(g8ç8g;r^   zRun the Agent in the CLIÚpathF)Úrequiredc                 ó>  — 	 t        j                  t        | «      «       y# t        $ rA t	        t        j                  d«      d¬«       t        j                  j                  d¬«      ‚t        $ r*}t	        t        j                  d|› �«      d¬«       |‚d}~ww xY w)zã
    Run the agent from PATH: a local folder containing an agent.json file or a built-in agent
    stored in the 'tiny-agents/tiny-agents' Hugging Face dataset
    (https://huggingface.co/datasets/tiny-agents/tiny-agents).
    z-
Application terminated by KeyboardInterrupt.Tr   é‚   )Úcoder:   N)r=   r^   r�   r]   r   r   r   ÚclickÚ
exceptionsÚExitre   )r‚   r   s     r   r^   r^   â   s~   € ðÜ�‰”I˜d“OÕ$øÜò .ÜŒd�h‰hÐGÓHÐPTÕUÜ×Ñ×#Ñ#¨Ð#Ó-Ð-Üò ÜŒd�h‰hÐ9¸!¸Ð=Ó>ÀdÕKØˆûðús   ‚! ¡ABÁ2%BÂBÚ__main__r;   )r=   rS   r@   rf   Útypingr   r‡   Úutilsr   Ú
_cli_hacksr   r   r{   r	   r
   Úgroupr   rL   r�   ÚcommandÚargumentr^   Ú__name__r   r   r   ú<module>r’      sÂ   ðÛ Û 	Û Û Ý ã å ß @Ý Ý %ð €‡�Ø	tôò	óð	ðIBØ˜‘ðIBà	óIBðX ‡�ˆUÐ3€Ó4Ø€‡�� Ô'ðˆh�s‰mð  ò ó (ó 5ðð  ˆzÒÙ…Eð r   