
    (Gj                    2    d Z ddlmZ ddlZddlmZ d
d	ZdS )z``hermes debug`` subcommand parser.

Extracted verbatim from ``hermes_cli/main.py:main()`` (god-file Phase 2).
Handler injected to avoid importing ``main``.
    )annotationsN)Callable	cmd_debugr   returnNonec               n   |                      dddt          j        d          }|                    d          }|                     dd	
          }|                    dt
          dd           |                    dt
          dd           |                    ddd           |                    dddd           |                    ddd           |                    ddd           |                     dd
          }|                    dd g d!"           |                    |#           d$S )%z2Attach the ``debug`` subcommand to ``subparsers``.debugu7   Debug tools — upload logs and system info for supportzDebug utilities for Hermes Agent. Use 'hermes debug share' to upload a debug report (system info + recent logs) to a paste service and get a shareable URL.a:  Examples:
    hermes debug share              Upload debug report (asks for confirmation)
    hermes debug share --yes        Skip confirmation (for scripts/CI)
    hermes debug share --lines 500  Include more log lines
    hermes debug share --expire 30  Keep paste for 30 days
    hermes debug share --local      Print report locally (no upload)
    hermes debug share --no-redact  Disable upload-time secret redaction
    hermes debug share --nous       Upload to Nous-internal storage (private)
    hermes debug delete <url>       Delete a previously uploaded paste
)helpdescriptionformatter_classepilogdebug_command)destsharez@Upload debug report to a paste service and print a shareable URL)r
   z--lines   z:Number of log lines to include per log file (default: 200))typedefaultr
   z--expire   z!Paste expiry in days (default: 7)z--local
store_truez-Print the report locally instead of uploading)actionr
   z-yz--yeszSkip the confirmation prompt and upload immediately. Required in non-interactive contexts (scripts/CI); without it, and with no TTY on stdin, the command refuses rather than upload silently.z--no-redactzDisable upload-time secret redaction (default: redact). Logs are normally run through agent.redact.redact_sensitive_text with force=True before upload so credentials are not leaked into the public paste service.z--nousu4  Upload the debug bundle to Nous-internal storage (AWS S3) instead of a public paste service. The bundle is private — viewable only by Nous staff (and allowlisted Discord mods) via a Google-login-gated viewer — and auto-deletes after 14 days. Still force-redacts secrets unless --no-redact is also passed.deletez/Delete a paste uploaded by 'hermes debug share'urls*z?One or more paste URLs to delete (e.g. https://paste.rs/abc123))nargsr   r
   )funcN)
add_parserargparseRawDescriptionHelpFormatteradd_subparsersadd_argumentintset_defaults)
subparsersr   debug_parser	debug_subshare_parserdelete_parsers         B/home/rurouni/.hermes/hermes-agent/hermes_cli/subcommands/debug.pybuild_debug_parserr)      s   
 ((F+ !<
 )  L& +++AAI''O (  L I	     0	     <    
 P  	 	 	 -	  	 	 	 9	  
 
 
 ((> )  M N	     9-----    )r   r   r   r   )__doc__
__future__r   r   typingr   r)    r*   r(   <module>r/      sb     # " " " " "       W. W. W. W. W. W.r*   