+
    „WÝjk#  ã                  óŒ  € R t ^ RIHt ^ RIt^ RIt^ RIt^ RIHt R R lt	R R lt
R R	 ltR
 R ltR tR tR R lt]R R l4       t]R 4       t]R R l4       t]R R l4       t]R 4       t]R R l4       t]R 4       t]R 4       tR R lt]R R l4       tR ]R!]R"]R#]R$]R%]R&]R']R(]R)]! R*R+4      R,]! R-R.4      R/]/tR# )0uE   ``hermes project`` CLI â€” manage first-class, multi-folder Projects.)ÚannotationsN)Úprojects_dbc               ó    € V ^8„  d   QhRRRR/# )é   Úparent_subparserszargparse._SubParsersActionÚreturnúargparse.ArgumentParser© )Úformats   "ÚKC:\Users\johnn\AppData\Local\hermes\hermes-agent\hermes_cli\projects_cmd.pyÚ__annotate__r      s   € ÷ .ñ .Ð$>ð .ÐCZñ .ó    c                ó  a€ V P                  RRRR7      pVP                  RR7      oSP                  RRR	7      pVP                  R
RR	7       VP                  RRRR7       VP                  RRRR7       VP                  RRRRR7       RI F  pVP                  VRR7       K  	  VP                  RRRRR7       VP                  RRRR7       SP                  R R!.R"R#7      pVP                  R$RR%R&R'7       R( V3R) llpV! R*R+4       V! R,R-4      pVP                  R.R/R	7       VP                  R0RR7       VP                  RRR1R7       V! R2R34      P                  R.R/R	7       V! R4R54      P                  R
R6R	7       V! R7R84      P                  R.R9R	7       SP                  R:R;R	7      pVP                  RR<RR=R>7       V! R?R@4       V! RARB4       V! RCRD4      P                  RER<RFRGR>7       VP                  VRH7       V# )Jz?Attach the ``project`` subcommand tree. Returns the top parser.Úprojectz0Manage projects (named, multi-folder workspaces)zâProjects are human-named workspaces that can span multiple folders / repos. They anchor desktop session grouping and, when bound to a kanban board, give tasks a deterministic worktree + branch convention. State is per-profile.)ÚhelpÚdescriptionÚproject_action)ÚdestÚcreatezCreate a new project©r   ÚnamezHuman name, e.g. 'Hermes Agent'ÚfoldersÚ*z)Folder paths to include (first = primary))Únargsr   z--slugNzExplicit slug override)Údefaultr   z	--primaryÚPATHzPrimary repo path)r   Úmetavarr   )r   z--boardÚSLUGzBind a kanban boardz--useÚ
store_truezSet as the active project)Úactionr   ÚlistÚlszList projects)Úaliasesr   z--allÚinclude_archivedzInclude archived projects)r   r   r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r   Ústrr   r   r   r	   )r
   s   "r   r   Ú"build_parser.<locals>.__annotate__%   s"   € ÷ ñ ˜#ð  Sð Ð-Dñ r   c                óR   <€ SP                  WR 7      pVP                  RRR 7       V# )r   r   zProject id or slug)Ú
add_parserÚadd_argument)r   r   ÚspÚsubs   && €r   Úproject_subÚ!build_parser.<locals>.project_sub%   s)   ø€ Ø�^‰^˜Dˆ^Ó,ˆØ
�‰˜	Ð(<ˆÔ=Øˆ	r   ÚshowzShow a project's detailsú
add-folderzAdd a folder to a projectÚpathzFolder pathz--labelzMark as primary repoúremove-folderzRemove a folder from a projectÚrenamezRename a projectzNew nameúset-primaryzSet the primary folderz(Folder path (must already be in project)ÚusezSet the active projectÚ?z"Project id or slug (omit to clear))r   r   r   ÚarchivezArchive a projectÚrestorezRestore an archived projectú
bind-boardz Bind a kanban board to a projectÚboardÚ zBoard slug (omit to unbind))Ú_project_parser)z--descriptionz--iconz--color)r(   Úadd_subparsersr)   Úset_defaults)	r   ÚparserÚp_createÚoptÚp_listr,   Úp_addÚp_user+   s	   &       @r   Úbuild_parserrD      sQ  ø€ à×)Ñ)ØØ?ð7ð	 *ó 	€Fð ×
Ñ
Ð%5Ð
Ó
6€CØ�~‰~˜hÐ-Cˆ~ÓD€HØ×Ñ˜&Ð'HÐÔIØ×Ñ˜)¨3Ð5`ÐÔaØ×Ñ˜(¨DÐ7OÐÔPØ×Ñ˜+¨t¸VÐJ]ÐÔ^Û5ˆØ×Ñ˜c¨4ÐÖ0ñ 6à×Ñ˜)¨T¸6ÐH]ÐÔ^Ø×Ñ˜'¨,Ð=XÐÔYØ�^‰^˜F¨T¨F¸ˆ^ÓI€FØ
×Ñ˜¨Ð;MÐToÐÔp÷ð ñ
 �Ð2Ô3Ù˜Ð&AÓB€EØ	×Ñ�v MÐÔ2Ø	×Ñ�y¨$ÐÔ/Ø	×Ñ�{¨<Ð>TÐÔUÙ�Ð!AÓB×OÑOÐPVÐ]jÐOÔkÙ�Ð,Ó-×:Ñ:¸6È
Ð:ÔSÙ�Ð7Ó8×EÑEÀfÐS}ÐEÔ~Ø�N‰N˜5Ð'?ˆNÓ@€EØ	×Ñ�y¨°TÐ@dÐÔeÙ�	Ð.Ô/Ù�	Ð8Ô9Ù�Ð@ÓA×NÑNØ�s BÐ-Jð Oô ð ×Ñ¨ÐÔ/Ø€Mr   c               ó    € V ^8„  d   QhRRRR/# ©r   Úargsúargparse.Namespacer   Úintr	   )r
   s   "r   r   r   =   s   € ÷ ñ Ð-ð °#ñ r   c                ó.  € \        V RR4      pV'       gA   \        V RR4      pVe   VP                  4        ^ # \        R\        P                  R7       ^ # \
        P                  V4      pVf!   \        RV 2\        P                  R7       ^# V! V 4      # )u:   Entry point from ``hermes project â€¦`` argparse dispatch.r   Nr;   zWusage: hermes project <action> [options]
Run 'hermes project --help' for the full list.©ÚfilezUnknown project action: )ÚgetattrÚ
print_helpÚprintÚsysÚstderrÚ	_HANDLERSÚget)rG   r   r>   Úhandlers   &   r   Úprojects_commandrU   =   s‡   € ä�TÐ+¨TÓ2€FßÜ˜Ð0°$Ó7ˆØÒØ×ÑÔñ ô ÐlÔsv×s}Ñs}Õ~ÙÜ�m‰m˜FÓ#€GØ‚ÜÐ(¨¨Ð1¼¿
¹
ÕCÙÙ�4‹=Ðr   c               ó    € V ^8„  d   QhRRRR/# )r   Úmessager%   r   rI   r	   )r
   s   "r   r   r   N   s   € ÷ ñ �#ð ˜#ñ r   c                óB   € \        R V  2\        P                  R7       ^# )ú	project: rK   )rO   rP   rQ   )rW   s   &r   Ú_errrZ   N   s   € Ü	ˆI�g�YÐ
¤c§j¡jÕ1Ùr   c               ó   € V ^8„  d   QhRR/# )r   Úidentr%   r	   )r
   s   "r   r   r   S   s   € ÷ ñ ˜#ñ r   c                óV   € \         P                  ! W4      pVf   \        RV 24       V# )Nzno such project: )ÚpdbÚget_projectrZ   )Úconnr\   Úprojs   && r   Ú_resolverb   S   s*   € Ü�?Š?˜4Ó'€DØ‚|ÜÐ   Ð(Ô)Ø€Kr   c                óL   a € \         P                  ! S 4      R V 3R ll4       pV# )u—   Open the DB and run ``fn(args, conn)``; a ``str`` result is printed (rc 0), an ``int`` is the rc;
a ``ValueError`` prints ``project: â€¦`` and exits 2.c               ó    € V ^8„  d   QhRRRR/# rF   r	   )r
   s   "r   r   Ú!_db_command.<locals>.__annotate___   s   € ÷ 
ñ 
Ð(ð 
¨Sñ 
r   c                ó@  <€  \         P                  ! 4       ;_uu_ 4       pS! W4      pR R R 4       \        X\        4      '       d   \        T4       ^ # T#   + '       g   i     L5; i  \         d*   p\        RT 2\        P
                  R7        R p?^# R p?ii ; i)NrY   rK   )r^   Úconnect_closingÚ
ValueErrorrO   rP   rQ   Ú
isinstancer%   )rG   r`   ÚoutÚexcÚfns   &   €r   ÚwrapperÚ_db_command.<locals>.wrapper^   su   ø€ ð	Ü×$Ò$×&Ô&¨$Ù˜“n�÷ 'ô
 �cœ3×ÒÜ�#ŒJÙØˆ
÷ '×&ûäô 	Ü�I˜c˜UÐ#¬#¯*©*Õ5Ýûð	ús3   ƒA)  	A©A) ÁA&	Á!A) Á&A) Á)BÁ4BÂB)Ú	functoolsÚwraps©rl   rm   s   f r   Ú_db_commandrr   Z   s'   ø€ ô ‡_‚_�RÓ÷
ó ð
ð €Nr   c                ó^   a € \         P                  ! S 4      R V 3R ll4       p\        V4      # )zVLike ``_db_command`` but also resolves ``args.project`` into ``fn(args, conn, proj)``.c               ó   € V ^8„  d   QhRR/# )r   rG   rH   r	   )r
   s   "r   r   Ú#_with_project.<locals>.__annotate__r   s   € ÷ ;ñ ;Ð(ñ ;r   c                óL   <€ \        WP                  4      pVf   ^# S! WV4      # )N)rb   r   )rG   r`   ra   rl   s   && €r   rm   Ú_with_project.<locals>.wrapperq   s'   ø€ ä˜Ÿl™lÓ+ˆØ’LˆqÐ:¡b¨°TÓ&:Ð:r   )ro   rp   rr   rq   s   f r   Ú_with_projectrx   n   s-   ø€ ô ‡_‚_�RÓ÷;ó ð;ô �wÓÐr   c               ó   € V ^8„  d   QhRR/# )r   r   ÚNoner	   )r
   s   "r   r   r   y   s   € ÷ 	gñ 	g˜Dñ 	gr   c                ó‚  € \        V P                   R V P                   RV P                  '       d   RMR 24       \        RV P                   24       RV P
                  3RV P                  3RV P                  33 F9  w  rV'       g   K  \        RV R	R
^\        V4      ,
          ,           V 24       K;  	  V P                  '       dt   \        R4       V P                   FV  p\        RVP                  '       d   RMR R
VP                   VP                  '       d   RVP                   R2MR 24       KX  	  R# R# )ú  [Ú]ú (archived)r:   z  name:    Úaboutr9   Úprimaryz  Ú:Ú z
  folders:z   z *ú (Ú)N)rO   ÚslugÚidÚarchivedr   r   Ú
board_slugÚprimary_pathÚlenr   Ú
is_primaryr0   Úlabel)ra   rŒ   ÚvalueÚfs   &   r   Ú_print_projectr�   y   s  € Ü	ˆT�Y‰YˆK�s˜4Ÿ7™7˜) 1°d·m·m°m¡]ÈÐ$LÐ
MÔNÜ	ˆK˜Ÿ	™	�{Ð
#Ô$Ø! 4×#3Ñ#3Ð4°wÀÇÁÐ6PÐS\Ð^b×^oÑ^oÐRpÓq‰ˆß‰5Ü�B�u�g˜Q˜s a¬#¨e«*¥nÕ5Ð6°u°gÐ>Ö?ñ rð ‡|‡|€|ÜˆlÔØ—”ˆAÜ�C §§ ™°$Ð7°q¸¿¹¸ÐTU×T[×T[ÐT[À2ÀaÇgÁgÀYÈaÁÐacÐ@dÐeÖfó ñ r   c               ó   € V ^8„  d   QhRR/# ©r   r   rI   r	   )r
   s   "r   r   r   †   s   € ÷ ñ ˜sñ r   c                óî  € \         P                  ! WP                  V P                  V P                  V P
                  V P                  V P                  V P                  V P                  R 7	      pV P                  '       d   \         P                  ! W4       \         P                  ! W4      pVf   \        R\        P                  R7       ^# \        RVP                   RV R24       \!        V4       ^ # ))r   r…   r   r‰   r   ÚiconÚcolorrˆ   zproject: vanished after createrK   zCreated project rƒ   r„   )r^   Úcreate_projectr   r…   r   r€   r   r“   r”   r9   r4   Ú
set_activer_   rO   rP   rQ   r�   )rG   r`   Úpidra   s   &&  r   Ú_cmd_creater˜   …   s¯   € ä
×
Ò
Ø—9‘9 4§9¡9°d·l±lÐQU×Q]ÑQ]Ø×$Ñ$¨4¯9©9¸D¿J¹JÐSW×S]ÑS]ô€Cð ‡x‡x€xÜ�Š�tÔ!Ü�?Š?˜4Ó%€DØ‚|ÜÐ.´S·Z±ZÕ@ÙÜ	Ð˜TŸY™Y˜K r¨#¨¨aÐ
0Ô1Ü�4ÔÙr   c                ór  € \         P                  ! V4      p\         P                  ! V\        V R R4      R7      pV'       g   R# V Fm  pVP                  '       d   RMRp\        VP                  V8X  d   RMR RVP                  R RVP                   V R	\        VP                  4       R
2	4       Ko  	  ^ # )r#   F)r#   z@No projects yet. Create one with `hermes project create <name>`.r~   r:   r   r‚   z<24r|   z folder(s)])r^   Úget_active_idÚlist_projectsrM   r‡   rO   r†   r…   r   rŠ   r   )rG   r`   ÚactiveÚprojsÚpÚflagss   &&    r   Ú	_cmd_listr    –   sž   € ä×Ò˜tÓ$€FÜ×Ò˜d´W¸TÐCUÐW\Ó5]Ô^€EßÙQÛˆØ!"§§ ‘°ˆÜ˜Ÿ™ œ‘¨CÐ0°°!·&±&¸°¸Q¸q¿v¹v¸hÀuÀgÈSÔQTÐUV×U^ÑU^ÓQ_ÐP`Ð`kÐlÖmñ ñ r   c               ó   € V ^8„  d   QhRR/# r‘   r	   )r
   s   "r   r   r   £   s   € ÷ ñ  3ñ r   c                ó   € \        V4       ^ # )é    )r�   ©rG   r`   ra   s   &&&r   Ú	_cmd_showr¥   ¢   s   € ä�4ÔÙr   c               ó   € V ^8„  d   QhRR/# ©r   r   r%   r	   )r
   s   "r   r   r   ©   s   € ÷ *ñ *¨ñ *r   c                óª   € \         P                  ! WP                  V P                  V P                  V P
                  R 7      pRV RVP                   2# ))rŒ   r‹   zAdded z to )r^   Ú
add_folderr†   r0   rŒ   r€   r…   )rG   r`   ra   r0   s   &&& r   Ú_cmd_add_folderrª   ¨   s@   € ä�>Š>˜$§¡¨¯©¸$¿*¹*ÐQU×Q]ÑQ]Ô^€DØ�D�6˜˜dŸi™i˜[Ð)Ð)r   c                óÌ   € \         P                  ! WP                  V P                  4      '       g   \	        R V P                   24      # RV P                   RVP
                   2# )zfolder not in project: zRemoved z from )r^   Úremove_folderr†   r0   rZ   r…   r¤   s   &&&r   Ú_cmd_remove_folderr­   ®   sO   € ä×Ò˜T§7¡7¨D¯I©I×6Ò6ÜÐ-¨d¯i©i¨[Ð9Ó:Ð:Ø�d—i‘i�[  t§y¡y kÐ2Ð2r   c               ó   € V ^8„  d   QhRR/# r§   r	   )r
   s   "r   r   r   ¶   s   € ÷ 1ñ 1 Sñ 1r   c                ó’   € \         P                  ! WP                  V P                  R 7       RVP                   RV P                   2# ))r   zRenamed ú -> )r^   Úupdate_projectr†   r   r…   r¤   s   &&&r   Ú_cmd_renamer²   µ   s5   € ä×Ò�tŸW™W¨4¯9©9Õ5Ø�d—i‘i�[  T§Y¡Y KÐ0Ð0r   c                óè   € \         P                  ! WP                  V P                  4      '       g'   \	        R V P                   RVP
                   R24      # RVP
                   RV P                   2# )Ú'z' is not a folder of z0; add it first with `hermes project add-folder`.zSet primary of r°   )r^   Úset_primaryr†   r0   rZ   r…   r¤   s   &&&r   Ú_cmd_set_primaryr¶   »   sZ   € ä�?Š?˜4§¡¨$¯)©)×4Ò4Ü�a˜Ÿ	™	�{Ð"7¸¿	¹	°{ÐBrÐsÓtÐtØ˜TŸY™Y˜K t¨D¯I©I¨;Ð7Ð7r   c                óì   € V P                   '       g   \        P                  ! VR 4       R# \        WP                   4      pVf   ^# \        P                  ! WP                  4       RVP
                   2# )NzCleared active projectzActive project: )r   r^   r–   rb   r†   r…   r¤   s   && r   Ú_cmd_user¸   Â   sS   € à�<�<ˆ<Ü�Š�t˜TÔ"Ù'Ü�DŸ,™,Ó'€DØ‚|ÙÜ‡N‚N�4Ÿ™Ô!Ø˜dŸi™i˜[Ð)Ð)r   c               ó    € V ^8„  d   QhRRRR/# )r   Úopr%   Úverbr	   )r
   s   "r   r   r   Î   s   € ÷ oñ o�cð o ñ or   c                ó&   a a€ \        V V3R l4      # )zHHandler for ``pdb.<op>(conn, proj.id)`` followed by ``"<verb> <slug>"``.c                ót   <€ \        \        S4      ! WP                  4      S R VP                   23^,          # )r‚   )rM   r^   r†   r…   )rG   r`   ra   rº   r»   s   &&&€€r   Ú<lambda>Ú_flag_command.<locals>.<lambda>Ð   s6   ø€ ´7¼3ÀÔ3CÀDÏ'É'Ó3RÐW[ÐV\Ð\]Ð^b×^gÑ^gÐ]hÐTiÐ2jÐklÖ2mr   )rx   )rº   r»   s   ffr   Ú_flag_commandrÀ   Î   s   ù€ äÕmÓnÐnr   c               ó   € V ^8„  d   QhRR/# r§   r	   )r
   s   "r   r   r   Ô   s   € ÷ 6ñ 6¨ñ 6r   c                ó  € \         P                  ! WP                  V P                  R 7       V P                  P	                  4       '       g   RVP
                   2# VP                  '       dn    ^ RIHp VP                  V P                  4      pV'       dD   WCP                  8X  g   VP                  V4      '       d   VP                  WBP                  R7       RVP
                   RV P                   2#   \         d     L)i ; i))rˆ   zUnbound board from )Ú	kanban_db)Údefault_workdirzBound z
 -> board )r^   r±   r†   r9   Ústripr…   r‰   Ú
hermes_clirÃ   Ú_normalize_board_slugÚDEFAULT_BOARDÚboard_existsÚwrite_board_metadataÚ	Exception)rG   r`   ra   Úkbr…   s   &&&  r   Ú_cmd_bind_boardrÍ   Ó   sÊ   € ä×Ò�tŸW™W°·±Õ<Ø�:‰:×Ñ×ÒØ$ T§Y¡Y KÐ0Ð0Ø××Ðð	Ý2à×+Ñ+¨D¯J©JÓ7ˆDß˜×!1Ñ!1Ô1°R·_±_ÀT×5JÒ5JØ×'Ñ'¨×>OÑ>OÐ'ÔPð �D—I‘I�;˜j¨¯©¨Ð5Ð5øô ô 	Ùð	ús   Á/(C7 Â&C7 Â?C7 Ã7DÄDr   r    r!   r.   r/   r1   r2   r3   r4   r6   Úarchive_projectÚArchivedr7   Úrestore_projectÚRestoredr8   )Ú__doc__Ú
__future__r   Úargparsero   rP   rÆ   r   r^   rD   rU   rZ   rb   rr   rx   r�   r˜   r    r¥   rª   r­   r²   r¶   r¸   rÀ   rÍ   rR   r	   r   r   Ú<module>rÕ      sM  ðÙ Kå "ã Û Û 
å )õ.õbõ"õ
òò( õ	gð ôó ðð  ñó ðð ôó ðð
 ô*ó ð*ð
 ñ3ó ð3ð ô1ó ð1ð
 ñ8ó ð8ð ñ*ó ð*õoð
 ô6ó ð6ð" ˆkØ
ˆIØˆ)Ø
ˆIØ�/ØÐ'ØˆkØÐ#Ø	ˆ8Ø‰}Ð.°
Ó;Ø‰}Ð.°
Ó;Ø�/ð‚	r   