o
    PL
j9	                  
   @   s   d Z ddlmZ ddlmZ ddlmZmZ G dd deZeddd	d
edddiddZ	eddddedddiddZ
ee	 ee
 dS )u   Kimi / Moonshot provider profiles.

Kimi has dual endpoints:
  - sk-kimi-* keys → api.kimi.com/coding (Anthropic Messages API)
  - legacy keys → api.moonshot.ai/v1 (OpenAI chat completions)

This module covers the chat_completions path (/v1 endpoint).
    )Any)register_provider)OMIT_TEMPERATUREProviderProfilec                	   @   sD   e Zd ZdZdddedB deeeef eeef f fddZdS )KimiProfileuC   Kimi/Moonshot — temperature omitted, thinking + reasoning_effort.N)reasoning_configr   returnc                K   s   i }i }|rt |tsddi|d< d|d< ||fS |dd}|du r-ddi|d< ||fS ddi|d< |d	p9d
  }|dv rJ||d< ||fS d|d< ||fS )z;Kimi uses extra_body.thinking + top-level reasoning_effort.typeenabledthinkingmediumreasoning_effortTFdisabledeffort >   lowhighr   )
isinstancedictgetstriplower)selfr   context
extra_body	top_levelr
   r    r   P/home/kuhnn/.hermes/hermes-agent/plugins/model-providers/kimi-coding/__init__.pybuild_api_kwargs_extras   s"   z#KimiProfile.build_api_kwargs_extras)	__name__
__module____qualname____doc__r   tuplestrr   r   r   r   r   r   r      s    r   zkimi-coding)kimimoonshotzkimi-for-coding)KIMI_API_KEYKIMI_CODING_API_KEYzhttps://api.moonshot.ai/v1i }  z
User-Agentzhermes-agent/1.0zkimi-k2-turbo-preview)namealiasesenv_varsbase_urlfixed_temperaturedefault_max_tokensdefault_headersdefault_aux_modelzkimi-coding-cn)zkimi-cnzmoonshot-cn)KIMI_CN_API_KEYzhttps://api.moonshot.cn/v1N)r"   typingr   	providersr   providers.baser   r   r   r%   kimi_cnr   r   r   r   <module>   s6    	 