> ## Documentation Index
> Fetch the complete documentation index at: https://docs.persistence.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Build, test, publish, and improve your first AI voice agent in the Persistence dashboard.

Build a simple returns assistant, test it in your browser, and publish it from the Persistence dashboard. You can adapt the example to your own phone-call workflow.

**Estimated time:** 30 minutes

## Before you begin

* Get access to the [Persistence dashboard](https://dashboard.persistence.dev).
* Use a browser with microphone access for the web preview.
* Choose one call type and one result for your first agent.

This example answers questions about a fictional returns policy. It does not use external knowledge or actions, so you can test the core conversation first.

## Build the agent

<Steps>
  <Step title="Create a single-prompt agent">
    In the dashboard, open **Agents** and select **Create Agent**. Choose **Single Prompt**, select a template and use case, then review the agent details.

    Enter:

    * **Agent name:** `Returns assistant`
    * **Description:** `Answers questions about the Acme returns policy`

    Complete the creation flow. The agent builder opens and marks the new agent as a draft.
  </Step>

  <Step title="Choose a language and voice">
    Select the language and voice that fit your callers. Keep the default model for this first test.
  </Step>

  <Step title="Add the instructions">
    Replace the content in **Instructions** with this single prompt:

    ```text theme={null}
    You are Acme's returns assistant.

    Goal
    Answer callers' questions about the returns policy.

    Policy
    - Acme accepts unused items within 30 days of delivery.
    - The caller needs the order number and the email used for the order.
    - Refunds return to the original payment method.

    Rules
    - Keep each response under 30 words.
    - Ask one question at a time.
    - Use only the policy in this prompt.
    - If the policy does not answer a question, say you do not know.
    ```

    This prompt gives the agent one goal, the information it can use, and a fallback for questions it cannot answer.
  </Step>

  <Step title="Add optional capabilities">
    Skip this step for the example, or extend your own agent:

    * Open **Knowledge base** to add documents the agent can reference.
    * Open **Functions** to add the actions your workflow needs.

    Add only the knowledge and actions required for the call's intended result.
  </Step>
</Steps>

## Test the conversation

In **Preview agent**, select **Web**, then select **Start talking**. Allow microphone access when your browser asks.

Test the expected path:

> I received an unused item 10 days ago. Can I return it?

The agent should confirm that the item is within the 30-day return window and explain what information the caller needs.

Then test a question outside the supplied policy:

> Can I exchange the item at a retail store?

The agent should say that it does not know. It should not invent an exchange policy.

Run more simulated calls for your real workflow. Include edge cases and a range of accents. Update the prompt, knowledge, or actions when a test exposes a problem, then test again.

## Publish and deploy

When the agent handles the test calls as expected, select **Publish** in the agent builder.

Publishing makes the current agent configuration available for live calls. Connect it through the deployment path approved for your setup:

* Provision a phone number.
* Use a SIP trunk.
* Trigger calls through the API.

The controls available for these paths can differ by workspace. Confirm the destination number and agent before you route production calls.

## Improve the agent

After the agent handles calls, open **Conversations** and filter the results by agent. Review the call status, end result, end-to-end latency, and user sentiment.

Use these results to assess containment and conversion. Change one part of the prompt, knowledge, or actions at a time. Test the draft again before you publish the next version.

## Troubleshooting

### Create is unavailable

Select an agent type and complete both **Agent name** and **Description**.

### The web preview cannot hear you

Allow microphone access in your browser and confirm that the browser uses the correct input device. Restart the preview after you change the permission or device.

### The agent invents an answer

Add a direct fallback instruction, such as `If the provided information does not answer a question, say you do not know.` Add the missing information to the prompt or knowledge base only after you verify it.

### Your deployment path is not visible

Deployment options depend on your phone setup and workspace. Use the supported phone number, SIP trunk, or API-triggered path available to you.

## Next steps

<Columns cols={2}>
  <Card title="Review platform concepts" icon="layout-grid" href="/platform">
    See how build, test, deploy, and improve fit together.
  </Card>

  <Card title="Explore the API" icon="braces" href="/api-reference">
    Automate supported Persistence workflows.
  </Card>
</Columns>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.