
    (GjL-                    *    d Z ddlmZ ddlmZ d
dZd	S )z``hermes skills`` subcommand parser.

Extracted from ``hermes_cli/main.py:main()`` (god-file Phase 2 follow-up).
Handler injected to avoid importing ``main``.
    )annotations)Callable
cmd_skillsr   returnNonec                  |                      ddd          }|                    d          }|                     dd	          }|                    d
t          dd           |                    dt          dd           |                    ddg dd           |                     dd	          }|                    dd	           |                    ddg dd           |                    dt          dd           |                    ddd !           |                     d"d#	          }|                    d$d%	           |                    d&d'd()           |                    d*d'd+)           |                    d,dd-!           |                    d.d/dd0!           |                     d1d2	          }|                    d$d3	           |                     d4d5	          }|                    ddg d67           |                    d8dd9!           |                     d:d;	          }	|	                    d<d=d>?           |                     d@dA	          }
|
                    d<d=dB?           |                     dCdD	          }|                    d<d=dE?           |                    dFddG!           |                     dHdI	          }|                    d<dJ	           |                     dKdLdM          }|                    d<dN	           |                    dOddP!           |                    d.d/ddQ!           |                     dRdSdT          }|                    dddU!           |                     dVdWdX          }|                    d<dY	           |                     dZd[d\          }|                    d]dd^!           |                    d.d/dd_!           |                     d`dadb          }|                    dcddd!           |                     dedfdg          }|                    d<dh	           |                    dOddi!           |                    d.d/ddQ!           |                     djdk	          }|                    dldm	           |                    dndododpgdq           |                    drd'ds)           |                     dtdu	          }|                    dv          }|                     dwdx	          }|                    dydz	           |                     d{d|	          }|                    d}d~	           |                    d,dd!           |                     dd	          }|                    d          }|                     d4d	           |                     dd	          }|                    dd	           |                     dd	          }|                    d<d	           |                     dd	           |                    |           dS )z3Attach the ``skills`` subcommand to ``subparsers``.skillsz-Search, install, configure, and manage skillszSearch, install, inspect, audit, configure, and manage skills from skills.sh, well-known agent skill endpoints, GitHub, ClawHub, and other registries.)helpdescriptionskills_action)destbrowsez'Browse all available skills (paginated))r
   z--page   zPage number (default: 1))typedefaultr
   z--size   zResults per page (default: 20)z--sourceall)r   officialz	skills-shz
well-knowngithubclawhublobehubz	browse-shnvidiaopenai	anthropichuggingface	voltagentgstackminimaxzAFilter by source or provider (e.g. nvidia, openai) (default: all))r   choicesr
   searchzSearch skill registriesqueryzSearch queryz2Filter by source or provider (e.g. nvidia, openai)z--limit   zMax resultsz--json
store_truezEOutput JSON instead of a table (full identifiers, scripting-friendly))actionr
   installzInstall a skill
identifierz^Skill identifier (e.g. openai/skills/skill-creator) or a direct HTTP(S) URL to a SKILL.md filez
--category zCategory folder to install into)r   r
   z--namezeOverride the skill name (useful when installing from a URL whose SKILL.md has no `name:` frontmatter)z--forcez$Install despite blocked scan verdictz--yesz-yz-Skip confirmation prompt (needed in TUI mode)inspectz"Preview a skill without installingzSkill identifierlistzList installed skills)r   hubbuiltinlocal)r   r   z--enabled-onlyzcHide disabled skills. Use with -p <profile> to see exactly which skills will load for that profile.checkz&Check installed hub skills for updatesname?z&Specific skill to check (default: all))nargsr
   updatezUpdate installed hub skillsz7Specific skill to update (default: all outdated skills)auditzRe-scan installed hub skillsz&Specific skill to audit (default: all)z--deepz:Run AST-level analysis on Python files (opt-in diagnostic)	uninstallzRemove a hub-installed skillzSkill name to removeresetuO   Reset a bundled skill — clears 'user-modified' tracking so updates work againzClear a bundled skill's entry from the sync manifest (~/.hermes/skills/.bundled_manifest) so future 'hermes update' runs stop marking it as user-modified. Pass --restore to also replace the current copy with the bundled version.z+Skill name to reset (e.g. google-workspace)z	--restorez<Also delete the current copy and re-copy the bundled versionz-Skip confirmation prompt when using --restorezlist-modifiedz?List bundled skills you've edited (which `hermes update` keeps)zShow the bundled skills whose local copy differs from the version last synced, i.e. the ones `hermes update` reports as user-modified and skips. Use `hermes skills diff <name>` to see changes and `hermes skills reset <name>` to resume updates.zOutput the list as JSONdiffzDShow how your copy of a bundled skill differs from the stock versionzPrint a unified diff between your local copy of a bundled skill and the current bundled (stock) version, so you can confirm what changed before running `hermes skills reset`.z*Skill name to diff (e.g. google-workspace)zopt-outz7Stop bundled skills from being seeded into this profilea4  Write the .no-bundled-skills marker so the installer, `hermes update`, and any direct sync stop seeding bundled skills into the active profile. By default nothing already on disk is touched. Pass --remove to ALSO delete bundled skills that are unmodified (user-edited and hub/local skills are never removed).z--removez5Also delete already-present unmodified bundled skillsz,Skip confirmation prompt when using --removezopt-inz.Re-enable bundled-skill seeding (undo opt-out)zRemove the .no-bundled-skills marker so bundled skills are seeded again on the next `hermes update`. Pass --sync to re-seed now.z--syncz@Re-seed bundled skills immediately instead of waiting for updatezrepair-officialz=Backfill or restore official optional skills from repo sourcea  Repair official optional skill provenance. By default, only backfills hub metadata for exact matches. Pass --restore to replace missing or mutated active copies from optional-skills/, moving existing copies to a restore backup first. Use name 'all' to repair every optional skill.z9Official optional skill folder/frontmatter name, or 'all'zJRestore from official optional source, backing up existing matching copiespublishzPublish a skill to a registry
skill_pathzPath to skill directoryz--tor   r   zTarget registryz--repoz'Target GitHub repo (e.g. openai/skills)snapshotz"Export/import skill configurationssnapshot_actionexportz!Export installed skills to a fileoutputz(Output JSON file path (use - for stdout)importz%Import and install skills from a fileinputzInput JSON file pathz%Force install despite caution verdicttapzManage skill sources
tap_actionzList configured tapsaddz!Add a GitHub repo as skill sourcerepozGitHub repo (e.g. owner/repo)removezRemove a tapzTap name to removeconfiguD   Interactive skill configuration — enable/disable individual skills)funcN)
add_parseradd_subparsersadd_argumentintset_defaults)
subparsersr   skills_parserskills_subparsersskills_browseskills_searchskills_installskills_inspectskills_listskills_checkskills_updateskills_auditskills_uninstallskills_resetskills_list_modifiedskills_diffskills_opt_outskills_opt_inskills_repair_officialskills_publishskills_snapshotsnapshot_subparserssnap_exportsnap_import
skills_taptap_subparserstap_addtap_rms                               C/home/rurouni/.hermes/hermes-agent/hermes_cli/subcommands/skills.pybuild_skills_parserrf      sy	   ))< m *  M
 &44/4JJ%00@ 1  M sA,F     sB-M     
 
 
$ Q+    0 &000 1  M w^<<<
 
 
$ B+    . ysB]SSST     '11)BS1TTNm      b'H      t     
 ,-S      <	      '11< 2  N 3EFFF#..v<S.TTKE+M+M+M     3     %//> 0  L c H     &004 1  M F     %//4 0  L c H     I     )338 4   !!&/E!FFF$//^A	 0  L B     K    
 <	     -77N)	 8 	 	 %%& &    $..S-	 /  K A     '11FO	 2 
 
N D     
 ;	      &00=M	 1  M O     /99LU	 : 	 	 ''P (    ''Y (   
 ''<	 (    '117 2  N 3LMMM8Y*?FW      "#L      (22= 3  O *88>O8PP%00: 1  K X,VWWW%00> 1  K W+ABBB,-T     #--e:P-QQJ..L.AANf+ABBB''4W'XXG&EFFF&&xn&EEF
%9:::   S !    J/////    N)r   r   r   r   )__doc__
__future__r   typingr   rf    rg   re   <module>rl      sY     # " " " " "      o0 o0 o0 o0 o0 o0rg   