
    i                     H    d Z ddlZddlZdefdZ G d d      ZdedefdZy)	z3Shared ANSI color utilities for Hermes CLI modules.    Nreturnc                      t         j                  j                  d      yt         j                  j                  d      dk(  ryt        j                  j                         syy)zReturn True when colored output is appropriate.

    Respects the NO_COLOR environment variable (https://no-color.org/)
    and TERM=dumb, in addition to the existing TTY check.
    NO_COLORFTERMdumbT)osenvirongetsysstdoutisatty     8/home/longshao/.hermes/hermes-agent/hermes_cli/colors.pyshould_use_colorr      sH     
zz~~j!-	zz~~f'::r   c                   0    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zy
)Colorsz[0mz[1mz[2mz[31mz[32mz[33mz[34mz[35mz[36mN)__name__
__module____qualname__RESETBOLDDIMREDGREENYELLOWBLUEMAGENTACYANr   r   r   r   r      s/    ED
C
CEFDGDr   r   textc                 d    t               s| S dj                  |      | z   t        j                  z   S )zBApply color codes to text (only when color output is appropriate). )r   joinr   r   )r    codess     r   colorr%   "   s)    775>D 6<<//r   )__doc__r   r   boolr   r   strr%   r   r   r   <module>r)      s7    9 	 
$ 	 	0 0 0r   