> For the full page index, fetch https://echonova.ai/llms.txt

# Create an agent

Pick one of the three build routes, name the agent, pick its voice, and land on its detail page with every other setting on a default you can change.

Creating an agent asks for two things: a name and a voice. Everything else is
either seeded from the route you picked or set to a default you can change
afterwards on the agent's detail page. Expect to finish in a couple of minutes
and to spend the rest of your time on the persona.

## What you need

- Membership of the workspace you are creating in.
- At least one active voice in the voice library. With none, the create step
  says **No voices are available yet, so an agent cannot be created.**
- Room in your plan. New agents count against your plan's active-agent limit.
  Archived agents do not count.

## Steps

### Step 1: Open the chooser

On the agents list, select **Build New Agent**. If your workspace is already at
its plan limit, the portal shows **Plan limit reached** instead of opening the
chooser.

### Step 2: Pick a build route

The chooser asks **How would you like to create your agent?** and offers three:

| Route                     | What it does                                                               | Questions it asks                                   |
| ------------------------- | -------------------------------------------------------------------------- | --------------------------------------------------- |
| **Create with AI**        | Interviews you, reads any files you upload, then a model designs the agent | Six questions, then an optional sources step        |
| **Start with a template** | Starts from a written persona for a common job                             | Template, then what it handles, then name and voice |
| **Start from scratch**    | Starts from a generic persona                                              | Name and voice only                                 |

**Create with AI** is a different flow with its own page. See
[Build an agent with AI](/docs/agents/build-with-ai).

### Step 3: Pick a template

Template route only. The step is headed **Browse templates** and lists six
ready-made agents, four to a page, with a **Search templates** field:
**Customer Support**, **Hotel Reservations**, **Shopping Assistant**,
**Clinic Receptionist**, **Restaurant Bookings** and **Lead Qualification**.

Picking one pre-fills the name on the last step with the template's own name.

### Step 4: Say what the agent handles

Template route only. The step asks **What should this agent handle?** and offers
**Customer Service**, **Booking**, **Support**, **Sales**, **Fix Problems** and
**Other**. Your answer appends one sentence to the template's prompt, which you
can edit later on the **Persona** tab.

### Step 5: Name it and pick its voice

Fill in **Agent Name**, then select **Choose a voice** under **Voice** and pick
one from the voice picker. Both are required before the flow will submit.

### Step 6: Create

Select **Create**. The agent is created and its detail page opens.

## Get it right

The name is what you see in the agents list, and it is the
fallback the agent introduces itself with when its **Personality** text names
no one. Name it after the job it does.

**Recommended**

```text
Acme Support (Cairo store)
```

**Less effective**

```text
agent-1
```

## Worked example

You pick **Start with a template**, choose **Customer Support**, answer
**Customer Service**, name it `Acme Support` and pick an Egyptian Arabic voice.

The **Agent created** toast appears with the body `{name} is ready.` and the
agent opens on its **Overview** tab. Its **Personality** already holds the
Customer Support prompt plus one sentence for customer service, its voice is the
one you picked, and retrieval is off. You then open **Persona**, replace the
prompt with your own, and attach your returns policy on **Knowledge**.

## What happens next

The prompt the agent starts with depends on the route. A template route uses the
template's own prompt plus the sentence for the job you picked. A scratch route
uses a generic starter prompt built from the name you typed. The language of
that starter text follows the voice you picked: an Arabic voice produces the
Arabic version, any other voice produces the English one.

Everything you were not asked for starts on a default:

| Setting                     | Value a new agent gets                                                   |
| --------------------------- | ------------------------------------------------------------------------ |
| Status                      | Live                                                                     |
| Time zone                   | `UTC`                                                                    |
| Working hours               | Disabled, 09:00 to 17:00 when you turn them on                           |
| Voice speed                 | 1.0                                                                      |
| Voice guidance (`cfg`)      | 2.0                                                                      |
| Diffusion steps             | 48                                                                       |
| Diacritization (`tashkeel`) | Off                                                                      |
| Default voice               | The single voice you picked                                              |
| Model temperature           | 0.7                                                                      |
| Reasoning effort            | Empty, and forced empty when the model does not support it               |
| Retrieval                   | Off, with `topK` 5 and `minSimilarity` 0.7 ready for when you turn it on |
| Database tools              | Off, with `topK` 5 and `scoreThreshold` 0.5                              |
| System tools                | All three present and disabled                                           |
| Selected tools              | None                                                                     |

Retrieval starts off, so a brand-new agent ignores knowledge until you turn it
on, even after you attach sources. Turn it on from the agent's **Knowledge**
tab.

## Limits

| Limit              | Value                                       | Applies to            |
| ------------------ | ------------------------------------------- | --------------------- |
| Name length        | 1 to 100 characters                         | `name`                |
| Description length | 500 characters                              | `description`         |
| Prompt length      | 1 to 8000 characters                        | `systemPrompt`        |
| Greeting length    | 500 characters                              | `firstMessage`        |
| Voices             | At least 1, exactly one default             | `voices`              |
| Speaking rate      | 0.5 to 2.0                                  | `speed`               |
| Guidance scale     | 1.0 to 5.0                                  | `cfg`                 |
| Diffusion steps    | 16, 32, 48, 64 or 128                       | `numSteps`            |
| Temperature        | 0 to 2                                      | `llm.temperature`     |
| Reasoning effort   | Empty, `minimal`, `low`, `medium` or `high` | `llm.reasoningEffort` |
| Active agents      | Set by your plan                            | Live agents           |

## Troubleshooting

### No voices are available yet, so an agent cannot be created

The voice library has no active voice in it. Ask a workspace admin to publish a
voice, then reopen the flow.

### Plan limit reached

The dialog body reads `Your plan allows {limit} agents. Archive an existing
agent or upgrade your plan to create another.` Archive an agent you are not
using, or upgrade. Archived agents are not counted.

### Couldn't create agent. Try again.

The create call failed for a reason the portal could not read. Retry. When a
more specific reason comes back, the flow shows that text instead, directly
above the footer buttons.

### unknown_model

The model named in the create call is not in the live catalogue. The portal's
own flows always send a model from the catalogue, so this reaches you through
the agents API. Send a model from the catalogue.

## FAQ

### Can I change the route I picked afterwards?

No, and you do not need to. The route only decides which questions you answer
and what text the agent starts with. Every field it set is editable on the
agent's detail page.

### Does the blank route really set up nothing?

It asks you for nothing but a name and a voice, then writes a generic starter
prompt and a generic greeting. It is blank in the sense that it carries no
job-specific wording, not in the sense that its fields are empty.

### Why does my new agent ignore the documents I attached?

Retrieval starts off. Turn on **Enable retrieval** on the agent's **Knowledge**
tab before the agent will read any attached knowledge.

### Where does the agent's spoken name come from?

From the name written inside its **Personality** text. The **Name** field is the
fallback. See [Write the persona](/docs/agents/persona).

### Can I create an agent that starts archived?

Through the agents API, yes: an agent created as archived skips the plan-limit
check. The portal's own flows always create a live agent.

## Related

- [What is an agent](/docs/agents/what-is-an-agent): the parts you are about to fill in
- [Build an agent with AI](/docs/agents/build-with-ai): the interview route in full
- [Write the persona](/docs/agents/persona): the first thing to edit after creating
- [The agent overview tab](/docs/agents/agent-overview-page): the page you land on
