
    .cj                    *    d Z ddlmZ ddlmZ d
dZd	S )z``hermes slack`` subcommand parser.

Extracted verbatim from ``hermes_cli/main.py:main()`` (god-file Phase 2).
Handler injected to avoid importing ``main``.
    )annotations)Callable	cmd_slackr   returnNonec                  |                      ddd          }|                    d          }|                     ddd	          }|                    d
ddddd           |                    ddd           |                    ddd           |                                }|                    dddd           |                    dddd           |                    ddd           |                                }|                    d dd!           |                    d"dd#           |                    |$           dS )%z2Attach the ``slack`` subcommand to ``subparsers``.slackz5Slack integration helpers (manifest generation, etc.)z%Slack integration helpers for Hermes.)helpdescriptionslack_command)destmanifestzvPrint or write a Slack app manifest with every gateway command registered as a native slash (/btw, /stop, /model, ...)u(  Generate a Slack app manifest that registers every gateway command in COMMAND_REGISTRY as a first-class Slack slash command (matching Discord and Telegram parity). Paste the output into Slack app config → Features → App Manifest → Edit, then Save. Reinstall the app if Slack prompts for it.z--write?TNPATHzdWrite manifest to a file instead of stdout. With no PATH writes to $HERMES_HOME/slack-manifest.json.)nargsconstdefaultmetavarr
   z--namez$Bot display name (default: "Hermes"))r   r
   z--descriptionz/Bot description shown in Slack's app directory.z--long-descriptionTEXTz8Set Slack's long app description (175-4,000 characters).)r   r   r
   z--long-description-filezPRead Slack's long app description from a UTF-8 text file (175-4,000 characters).z--slashes-only
store_truez]Emit only the features.slash_commands array (for merging into an existing manifest manually).)actionr
   z--no-assistantzOmit Slack AI Assistant mode (assistant_view, assistant:write scope, assistant_thread_* events). DMs then render as a flat chat where bare slash commands (/help, /new) work inline instead of Slack's Assistant thread pane.z--agent-viewzEmit Slack's Agent messaging experience (agent_view, app_home_opened + message.im) instead of the legacy assistant_view experience. This changes Slack's app messaging surface and cannot be reversed in Slack after applying the manifest.)func)
add_parseradd_subparsersadd_argumentadd_mutually_exclusive_groupset_defaults)
subparsersr   slack_parser	slack_subslack_manifestslack_long_descriptionslack_messagings          >/home/ice/.hermes/hermes-agent/hermes_cli/subcommands/slack.pybuild_slack_parserr%      s   
 ((D; )  L
 +++AAI))BJ *  N 6      3     
 >     
 ,HHJJ''G	 (    ''!& (    /      %AACCO  ) !      < !    9-----    N)r   r   r   r   )__doc__
__future__r   typingr   r%    r&   r$   <module>r+      sY     # " " " " "      Q. Q. Q. Q. Q. Q.r&   