o
    xi                     @   s*   d dl mZmZ dee defddZdS )    )ListAnytoolsreturnc                 C   s    d dd | D }d| dS )z
    Build the system message that lists every available tool.
    The LLM is forced to reply with pure JSON (no markdown).
    
c                 s   s$    | ]}d |j  d|j V  qdS )z- **z**: N)namedescription).0t r   7/var/www/apps/myagent/mysuperagent/agent_src/prompts.py	<genexpr>	   s    
z system_prompt.<locals>.<genexpr>a  You are a helpful AI that can solve user requests by **calling tools** when needed.
You may only reply with **valid JSON** (no extra text, no markdown).

Two possible JSON schemas:

1. Request a tool:
```json
{
    "tool": "<tool_name>",
    "args": { ... }
}
```
   * ``tool`` must be one of the names listed below.
   * ``args`` must contain the arguments the tool expects (see its description).

2. Declare that the problem is solved:
```json
{
    "final_answer": "Your answer to the user."
}
```

**Available tools**:
zU

When a tool will help, call it. When you have the answer, return ``final_answer``.
)join)r   	tool_descr   r   r   system_prompt   s   
r   N)typingr   r   strr   r   r   r   r   <module>   s   