+
    …WÝjq  ã                  óª   € R t ^ RIHt ^ RIHt ^ RIHt ^ RItR R ltR R lt	R	 R
 lt
]! RR7       ! R R4      4       tR R ltR R ltR R ltR# )zRRead plugin build declarations without importing CLI configuration or plugin code.)Úannotations)Ú	dataclass)ÚPathNc               ó    € V ^8„  d   QhRRRR/# )é   Ú
plugin_dirr   ÚreturnúPath | None© )Úformats   "ÚJC:\Users\johnn\AppData\Local\hermes\hermes-agent\pm\plugin_declarations.pyÚ__annotate__r   	   s   € ÷ 	ñ 	 Tð 	¨kñ 	ó    c                óÂ   € V R ,          V R,          3 F  p VP                  4        Vu # 	  R#   \         d     K*  \         d   p\        RT RT 24      ThRp?ii ; i)zplugin.yamlz
plugin.ymlz"Could not inspect plugin manifest ú: N)ÚstatÚFileNotFoundErrorÚOSErrorÚ
ValueError)r   ÚpathÚexcs   &  r   Únative_manifest_filer   	   sr   € Ø˜mÕ+¨Z¸,Õ-FÓGˆð	ZØ�I‰IŒKð
 Šñ Hñ øô !ô 	ÚÜô 	ZÜÐAÀ$ÀÀrÈ#ÈÐOÓPÐVYÐYûð	Zús    —/¯A½AÁAÁAÁAc               ó    € V ^8„  d   QhRRRR/# )r   r   r   r   Údictr
   )r   s   "r   r   r      s   € ÷ ñ ˜tð ¨ñ r   c                ó  € ^ RI p VP                  V P                  RR7      4      pTf   / # \        T\        4      '       g   \        RT  24      hT#   \        \        TP
                  3 d   p\        RT  RT 24      ThRp?ii ; i)é    Nú	utf-8-sig©ÚencodingzCould not read plugin manifest r   z#Plugin manifest must be a mapping: )	Úhermes_yamlÚ	safe_loadÚ	read_textr   ÚUnicodeErrorÚ	YAMLErrorr   Ú
isinstancer   )r   ÚyamlÚdatar   s   &   r   Úread_native_manifestr'      s�   € ÛðSØ�~‰~˜dŸn™n°k˜nÓBÓCˆð ‚|Øˆ	Ü�dœD×!Ò!ÜÐ>¸t¸fÐEÓFÐFØ€Køô ”\ 4§>¡>Ð2ô SÜÐ:¸4¸&ÀÀ3À%ÐHÓIÈsÐRûðSús   †!A ÁBÁ/BÂBc               ó$   € V ^8„  d   QhRRRRRR/# )r   Úmanifestr   ÚnameÚstrr   ú
str | Noner
   )r   s   "r   r   r   #   s!   € ÷ ñ  Tð °ð ¸ñ r   c                óð   € ^ RI HpHp V! V 4      pV'       d	   RV RV 2# V P                  R4      pVf   R#  \	        V4      pYb8”  d   RT RT R	T R
2# R#   \
        \        3 d    RT RT R2u # i ; i)r   )ÚSUPPORTED_MANIFEST_VERSIONÚrequires_hermes_errorzPlugin 'z' Úmanifest_versionNz ' has invalid manifest_version 'z' (expected an integer).z' requires manifest_version z), but this installer only supports up to Ú.)Úhermes_cli.plugins_manifestr.   r/   ÚgetÚintÚ	TypeErrorr   )r)   r*   r.   r/   ÚreasonÚversionÚparseds   &&     r   Úmanifest_version_errorr9   #   s®   € ß]á" 8Ó,€FßØ˜$˜˜r & Ð*Ð*Ø�l‰lÐ-Ó.€GØ‚ÙðbÜ�W“ˆð Ô*Ø˜4˜&Ð <¸W¸Ið F:Ø:TÐ9UÐUVðXð 	Yáøô ”zÐ"ô bØ˜$˜Ð?À¸yÐH`ÐaÒaðbús   ¹A ÁA5Á4A5T)Úfrozenc                  ó¶   € ] tR t^6t$ R]R&   R]R&   R]R&   R]R&   R	tR
]R&   RtR]R&   ]R R l4       t]R R l4       t	]R R l4       t
R R ltR R ltRtR	# )ÚPythonDeclarationztuple[Path, ...]Úfilesr	   Ú	pyprojectútuple[str, ...]Úrequirementsr   r)   Nr,   Úrequires_pythonFÚboolÚpyproject_installsc               ó   € V ^8„  d   QhRR/# ©r   r   rB   r
   )r   s   "r   r   ÚPythonDeclaration.__annotate__B   s   € ÷ \ñ \˜$ñ \r   c                	óœ   € \        V P                  P                  R 4      ;'       g    R4      P                  4       P	                  4       R8H  # )Úpython_runtimeÚ Úexternal)r+   r)   r3   ÚstripÚlower©Úselfs   &r   rJ   ÚPythonDeclaration.externalA   s=   € ä�4—=‘=×$Ñ$Ð%5Ó6×<Ð<¸"Ó=×CÑCÓE×KÑKÓMÐQ[Ñ[Ð[r   c               ó   € V ^8„  d   QhRR/# )r   r   r?   r
   )r   s   "r   r   rF   F   s   € ÷ Sñ S oñ Sr   c                	óT   € V P                   '       d   R# \        V P                  4      # )Nr
   ©rJ   Úapplicable_requirementsr@   rM   s   &r   Úinstall_requirementsÚ&PythonDeclaration.install_requirementsE   s!   € à—]—]�]ˆrÐRÔ(?À×@QÑ@QÓ(RÐRr   c               ó   € V ^8„  d   QhRR/# rE   r
   )r   s   "r   r   rF   J   s   € ÷ bñ b 4ñ br   c                ó†   € V P                   '       * ;'       d*    \        V P                  4      ;'       g    V P                  # )ac  Admission would put packages into the shared environment: what dependency consent asks
about and what makes the plugin a workspace member. ``dependencies = []`` installs nothing,
so like no pyproject it asks no consent and stays out of the environment stamp, which hashes
a member's whole tree (each enable or update would build a generation for nothing).)rJ   rB   rT   rC   rM   s   &r   Úinstalls_packagesÚ#PythonDeclaration.installs_packagesI   s2   € ð —=‘=Ô ×aÐa¤d¨4×+DÑ+DÓ&E×&`Ð&`È×I`ÑI`Ðar   c               ó    € V ^8„  d   QhRRRR/# )r   r7   r+   r   r,   r
   )r   s   "r   r   rF   Q   s   € ÷ 	^ñ 	^ Cð 	^¨Jñ 	^r   c                óÔ   € ^ RI Hp V P                  '       d   V P                  '       g   R# V! V P                  4      P	                  VRR7      '       d   R# RV P                   RV 2# )z˜Why this member cannot join a workspace built for *version*; uv intersects every
member's requires-python, so one excluding member fails the whole lock.)ÚSpecifierSetNT)Úprereleaseszrequires Python z, but Hermes runs on Python )Úpackaging.specifiersr\   rX   rA   Úcontains)rN   r7   r\   s   && r   Úpython_errorÚPythonDeclaration.python_errorQ   sb   € õ 	6à×%×%Ð%¨T×-A×-AÐ-AÙÙ˜×,Ñ,Ó-×6Ñ6°wÈDÐ6×QÒQÙØ! $×"6Ñ"6Ð!7Ð7SÐT[ÐS\Ð]Ð]r   c               ó   € V ^8„  d   QhRR/# )r   r   ÚNoner
   )r   s   "r   r   rF   \   s   € ÷ 7ñ 7˜tñ 7r   c                	óX   € V P                   '       g   \        V P                  4       R # R # ©NrR   rM   s   &r   Ú__post_init__ÚPythonDeclaration.__post_init__\   s   € Ø�}�}ˆ}Ü# D×$5Ñ$5Ö6ñ r   r
   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__rA   rC   ÚpropertyrJ   rT   rX   r`   rf   Ú__static_attributes__r
   r   r   r<   r<   6   s€   ‡ àÓØÓØ!Ó!ØƒNØ"&€O�ZÓ&ð  %Ð˜Ó$àô\ó ð\ð ôSó ðSð ôbó ðbõ	^÷7ñ 7r   r<   c               ó    € V ^8„  d   QhRRRR/# ©r   Úspecsztuple[str, ...] | list[str]r   r?   r
   )r   s   "r   r   r   a   s   € ÷ jñ jÐ#>ð jÀ?ñ jr   c                óŒ   aaa€ ^ RI Ho ^ RIHo \        ;QJ d    . VVV3R lV  4       F  NK  	  5# ! VVV3R lV  4       4      # )a1  Index requirements only; let uv evaluate markers for the target interpreter.

The application checkout supplies Hermes itself. Installing it from an index
would replace that checkout; direct URLs bypass the reviewed package source.
Markers must survive snapshots built for a different Python or platform.
©ÚRequirement)Úcanonicalize_namec              3  ó’   <"  € T F<  pS! V4      ;oP                   '       d   K  S! SP                  4      R 8w  g   K8  Vx € K>  	  R# 5i)zhermes-agentN)Úurlr*   )Ú.0Úspecrt   ru   Úreqs   & €€€r   Ú	<genexpr>Ú*applicable_requirements.<locals>.<genexpr>k   sC   øé € ð j¡%˜$Ù +¨DÓ 1Ð1˜×6Õ6ô Ù;LÈSÏXÉXÓ;VÐZhÑ;h÷ ’£%ùs   ƒA¤A½
A)Úpackaging.requirementsrt   Úpackaging.utilsru   Útuple)rq   rt   ru   rz   s   &@@@r   rS   rS   a   sB   ú€ õ 3Ý1çŒ5ö j¡%ó j�5ð jˆ5ö j¡%ó jó jð jr   c               ó    € V ^8„  d   QhRRRR/# rp   r
   )r   s   "r   r   r   o   s   € ÷ Bñ BÐ$?ð BÀOñ Br   c                ót   a€ ^ RI Ho \        ;QJ d    . V3R lV  4       F  NK  	  5# ! V3R lV  4       4      # )r   rs   c              3  ó\   <"  € T F!  pS! V4      P                   '       g   K  Vx € K#  	  R # 5ire   )rw   )rx   ry   rt   s   & €r   r{   Ú+unsupported_requirements.<locals>.<genexpr>r   s    øé € ÐA¡%˜$©;°tÓ+<×+@Õ+@—’£%ùs   ƒ,¢
,)r}   rt   r   )rq   rt   s   &@r   Úunsupported_requirementsr„   o   s(   ø€ Ý2çŒ5ÔA¡%ÓA�5ÐAˆ5ÔA¡%ÓAÓAÐAr   c               ó    € V ^8„  d   QhRRRR/# )r   r   r   r   r<   r
   )r   s   "r   r   r   u   s   € ÷ 1Xñ 1X¨ð 1XÐ1Bñ 1Xr   c           	     óº  € \        V 4      pVe   V.M. pVe   \        V4      M/ pVf<   T R,          p VP                  4        ^ RIHp V! V 4      w  r6VP                  V4       V R,          p VP                  RR7      pVEeð   VP                  V4       RV9  Ed×   \        P                  ! V4      p	V	P                  R/ 4      P                  R	. 4      p
\        V
\        4      '       d;   \        ;QJ d    R
 V
 4       F  '       g   K   RM	  RM! R
 V
 4       4      '       d   \        RV 24      hV	P                  R/ 4      P                  R4      pVe%   \        V\        4      '       g   \        RV 24      hV	P                  R/ 4      P                  R/ 4      pRV	9   ;'       g¨    VP                  R4      RJ ;'       g�    \        V	P                  R/ 4      P                  R/ 4      P!                  4       4      ;'       gL    \        V	P                  R/ 4      P!                  4       4      ;'       g    \#        VP                  R4      4      p\%        \'        V4      V\'        V
4      W;V4      # . p
R F‡  pVP                  V. 4      p\        V\        4      '       d;   \        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      '       d   \        RV RV 24      hV
P)                  V4       K‰  	  \%        \'        V4      R\'        \*        P-                  V
4      4      V4      #   \         d     ELài ; i  \         d    Rp ELØi ; i)ab  One effective surface for consent, membership, builds and currency.

A real pyproject owns packaging. Legacy manifests bridge plugins without
one, including old PM-generated pyprojects. Both YAML suffixes and both
dependency aliases have identical semantics. Reading never initializes a
home, discovers code, or depends on the caller's CLI import state.
Nzplugin.json)Úread_agent_plugin_manifestzpyproject.tomlr   r   zGENERATED by pmÚprojectÚdependenciesc              3  óL   "  € T F  p\        V\        4      '       * x € K  	  R # 5ire   ©r$   r+   ©rx   Úvs   & r   r{   Ú*read_python_declaration.<locals>.<genexpr>•   s   é € Ð1XÑRWÈQ´jÀÄCÓ6H×2HÑ2HÓRWùó   ‚"$TFzinvalid project.dependencies: zrequires-pythonz!invalid project.requires-python: ÚtoolÚuvzbuild-systemÚpackagezoptional-dependencieszdependency-groupszdev-dependenciesc              3  óL   "  € T F  p\        V\        4      '       * x € K  	  R # 5ire   r‹   rŒ   s   & r   r{   rŽ   £   s   é € Ð.VÉvÈ!´:¸aÄÓ3E×/EÑ/EËvùr�   zinvalid r   )Úpip_dependenciesÚpython_dependencies)r   r'   ÚlstatÚhermes_cli.agent_pluginsr‡   Úappendr   r!   ÚtomllibÚloadsr3   r$   ÚlistÚanyr   r+   ÚvaluesrB   r<   r   Úextendr   Úfromkeys)r   Únativer=   r)   Úportabler‡   Ú_diagnosticsrˆ   ÚtextÚdocumentrq   rA   r‘   ÚinstallsÚkeyr�   s   &               r   Úread_python_declarationr§   u   só  € ô " *Ó-€FØÒ*ˆV‰H°€EØ/5Ò/AÔ# FÔ+Àr€HØ‚~Ø Õ-ˆð	#Ø�N‰NÔõ Lá%?À
Ó%KÑ"ˆHØ�L‰L˜Ô"ØÐ+Õ+€GðØ× Ñ ¨+Ð Ó6ˆð ÓØ�‰�WÔØ DÕ(Ü—}’} TÓ*ˆHØ—L‘L ¨BÓ/×3Ñ3°NÀBÓGˆEÜ˜e¤T×*Ò*¯c«cÑ1XÑRWÓ1X¯c¯cªcÑ1XÑRWÓ1X×.XÒ.XÜ Ð#AÀ'ÀÐ!KÓLÐLØ&Ÿl™l¨9°bÓ9×=Ñ=Ð>OÓPˆOØÒ*´:¸oÌs×3SÒ3SÜ Ð#DÀWÀIÐ!NÓOÐOØ—‘˜f bÓ)×-Ñ-¨d°BÓ7ˆBØ&¨(Ñ2÷ <ð <°b·f±f¸YÓ6GÈ4Ð6O÷ <ð <Ü˜xŸ|™|¨I°rÓ:×>Ñ>Ð?VÐXZÓ[×bÑbÓdÓe÷<ð <ä˜xŸ|™|Ð,?ÀÓD×KÑKÓMÓN÷<ð <ô   §¡Ð'9Ó :Ó;ð ô %¤U¨5£\°7¼EÀ%»LÈ(ÐemÓnÐnØ€EÛ:ˆØ—‘˜c 2Ó&ˆÜ˜&¤$×'Ò'¯3«3Ñ.VÉvÓ.V¯3¯3ª3Ñ.VÉvÓ.V×+VÒ+VÜ˜x¨ u¨B¨v¨hÐ7Ó8Ð8Ø�‰�VÖñ	 ;ô
 œU 5›\¨4´´t·}±}ÀUÓ7KÓ1LÈhÓWÐWøôE !ô 	Úð	ûô ô Ø‹ðús#   ´L7 Á/M	 Ì7MÍMÍ	MÍM)Ú__doc__Ú
__future__r   Údataclassesr   Úpathlibr   r™   r   r'   r9   r<   rS   r„   r§   r
   r   r   Ú<module>r¬      sT   ðÙ XÝ "å !Ý Û õ	õõñ& �$Ô÷'7ð '7ó ð'7õTjõB÷1Xr   