# Your first voice agent

> Create a focused agent, test a real browser conversation, and inspect the result.

## Before you start

Open [Menace Voice](https://voice.menaceui.com), select the intended workspace, and configure [Models](/configurations/inference-providers). Allow microphone access when you start the Web Call. Self-hosted Docker normally exposes the UI at `http://localhost:3010`; contributor development uses `http://localhost:3000`.

<Steps>
<Step title="Give the agent one job">
Create an agent and choose a template or describe the desired conversation. Include the caller, the outcome, and what the agent should do when it cannot help. For example: “Collect a support request, confirm the caller's contact details, and explain that a human will follow up.” Only promise a booking or external action after you connect and test the corresponding tool.
</Step>
<Step title="Review the generated workflow">
Open the agent editor. Check the start node, conversation nodes, pathways, and end node. Read each prompt and remove unsupported promises. Define the information to collect and the conditions for ending or escalating the call.
</Step>
<Step title="Check model and voice settings">
Confirm the workspace defaults or agent overrides. A speech-to-speech model still needs a standard LLM for extraction and QA. Validate your configuration before starting the test.
</Step>
<Step title="Test the draft">
Use text chat to inspect wording and transitions, then run a Web Call to test speech recognition, voice, interruption, and timing. Try the expected request, an unrelated request, silence, a correction, and a tool failure if tools are attached.
</Step>
<Step title="Review the run">
Open the resulting run. Compare its transcript, node transitions, tool activity, initial context, gathered context, recording when available, and usage. Make one focused change and start a fresh test.
</Step>
</Steps>

## Publish when the conversation is ready

Saving changes updates the draft. Production calls use the published definition. Review [drafts and publishing](/voice-agent/versions), publish the reviewed version, and then connect [telephony](/getting-started/connect-telephony) or a [website](/voice-agent/add-to-website).

<Note>
Editor tests may use context variables saved in Agent Settings. Real inbound calls and campaigns receive their own runtime data. Test both sources before assuming a prompt variable will be present in production.
</Note>

For a deeper walkthrough of prompts and conversation design, read [build your first agent](/handbook/builders/first-agent).
