> This page is for Voice APIs.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://dev.hume.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://dev.hume.ai/_mcp/server.

# System Prompt

A system prompt in the context of EVI is a set of instructions that guide the AI’s behavior, responses, and overall
style during a chat session. It defines the specific goal or role for EVI, such as acting as a customer
support representative, a fitness coach, or a travel advisor. This helps ensure the conversation stays aligned with
your application’s intended focus.

#### [Prompting Guide](/docs/speech-to-speech-evi/guides/prompting)

See our tips and best practices on crafting effective system prompts to guide EVI's response generation.

## Default system prompt

If you do not specify a system prompt in your configuration, a default system prompt will be applied. You can find
our [default system prompt](https://github.com/HumeAI/hume-api-examples/blob/main/evi/evi-prompting-examples/default_prompt.txt)
on GitHub for reference.

## Building your system prompt

Prompts are managed as resources within our API and are version controlled. This enables you to:

* Develop and refine system prompts over time.
* Maintain consistent behavior across chat sessions.
* Reuse and reference existing prompts in different configurations.

#### [EVI Playground](https://app.hume.ai/evi/playground)

Modify and test your system prompt directly in our EVI Playground

#### [API Reference](/reference/speech-to-speech-evi/prompts/create-prompt)

See our API reference for how to manage Prompts through the API.

## Specifying a system prompt

When creating an EVI config through the API, you have two options for specifying your system prompt:

1. **Reference an existing prompt**: Specify the ID of a pre-existing, version-controlled Prompt. EVI will use the
   referenced prompt in the chat session.

   #### Specifying an existing prompt

   ```curl
   curl -X POST https://api.hume.ai/v0/evi/configs \
     -H "X-Hume-Api-Key: <apiKey>" \
     -H "Content-Type: application/json" \
     -d '{
       "evi_version": "3",
       "name": "Sample Config",
       "prompt": {
         "id": "af699d45-2985-42cc-91b9-af9e5da3bac5",
         "version": 0
       }
     }'
   ```

2. **Define a new Prompt in the request**: Provide the prompt text directly in your configuration request. In this
   case, a new prompt will be automatically created and associated with the configuration.

   #### Specifying an existing prompt

   ```curl
   curl -X POST https://api.hume.ai/v0/evi/configs \
     -H "X-Hume-Api-Key: <apiKey>" \
     -H "Content-Type: application/json" \
     -d '{
       "evi_version": "3",
       "name": "Sample Config",
       "prompt": {
         "text": "Sample system prompt"
       }
     }'
   ```

---