
    i	                        d Z ddlZddlmZ ddlmZ ddlmZ dZdZ	 ej                  dd	
       ej                  dd	
       ej                  dd	
       ej                  dd	
      gZdefdZe G d d             Zy)zf
Genesis V2 Configuration
========================
API key loading, model constants, safety settings.
    N)Path)	dataclass)typesz$gemini-2.5-flash-native-audio-latestzgemini-3-flash-previewHARM_CATEGORY_HATE_SPEECH
BLOCK_NONE)category	thresholdHARM_CATEGORY_HARASSMENTHARM_CATEGORY_SEXUALLY_EXPLICITHARM_CATEGORY_DANGEROUS_CONTENTreturnc                     t        j                  d      xs t        j                  d      } | r| S t        t              j                  j                  j                  dz  dz  }|j                         rF|j                         j                         }d|v r"|j                  d      d   j                         S |S t        d      )z|
    Get API key from environment or credentials file.
    Priority: GEMINI_API_KEY > GOOGLE_API_KEY > Credentials file
    GEMINI_API_KEYGOOGLE_API_KEYCredentialsz,GoogleAIStudio-Gemini-AgileAdapt-API-KEY.txt=zNo API key found. Set GEMINI_API_KEY or GOOGLE_API_KEY environment variable, or add key to Credentials/GoogleAIStudio-Gemini-AgileAdapt-API-KEY.txt)
osgetenvr   __file__parentexists	read_textstripsplit
ValueError)key	cred_pathcontents      //mnt/e/genesis-system/genesis_v2/core/config.pyget_api_keyr!       s    
 ))$
%
D3C)DC

 X%%,,33mCFttI%%'--/14w}}S!"%++-LWL
	Q     c                       e Zd ZU dZ ee      j                  j                  j                  Zeed<   edz  dz  Z	eed<   edz  Z
eed<   eZeed<   eZeed	<   d
Zeed<   dZeed<   dZeed<   edefd       Zy)Configz#Genesis V2 Configuration container.PROJECT_ROOTz.agentrules	RULES_DIRr   CREDENTIALS_DIR
live_modelvision_modelgffffff?temperaturei   thinking_budgetHIGHmedia_resolutionr   c                     t               S )N)r!   )selfs    r    api_keyzConfig.api_keyG   s
    }r"   N)__name__
__module____qualname____doc__r   r   r   r%   __annotations__r'   r(   
LIVE_MODELr)   strVISION_MODELr*   r+   floatr,   intr.   propertyr1    r"   r    r$   r$   5   s    - h..55<<L$<"X-7It7(=8OT8 !J $L#$ KOS"c"  r"   r$   )r5   r   pathlibr   dataclassesr   google.genair   r7   r9   SafetySetting
SAFETY_OFFr8   r!   r$   r=   r"   r    <module>rC      s    
  !  4
 ( E!<UE!;|TE!Bl[E!Bl[	
S *   r"   