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

# Build a Complete Agent in 10 Minutes

> Build a working AI voice agent in 10 minutes with the dashboard wizard or API. Step-by-step configuration of system prompt, LLM, voice, tools, and scheduling.

Ready to build something real? This guide walks you through every setting, so by the end you'll have a fully configured agent ready to take calls.

Don't worry if some of this feels new — we'll explain everything as we go.

<Note>
  **New to Dasha BlackBox?** If you haven't tried the [Quickstart](/docs/introduction/quickstart) yet, start there. It takes 5 minutes and gives you a feel for how things work.
</Note>

## Before you start

You'll need:

* A Dasha BlackBox account — [sign up here](https://blackbox.dasha.ai) if you haven't already
* An idea of what you want your agent to do (support calls? appointment booking? lead qualification?)
* A rough draft of what you want it to say

## What we're setting up

Here's everything you can configure. Don't let the list intimidate you — only the first three are required:

| Setting         | What it does                                                  | Required? |
| --------------- | ------------------------------------------------------------- | :-------: |
| **Basic Info**  | Name, language, personality                                   |     ✓     |
| **AI Model**    | The brain that powers conversations                           |     ✓     |
| **Voice**       | How your agent sounds                                         |     ✓     |
| **Tools**       | Actions your agent can take (check orders, book appointments) |           |
| **Schedule**    | When your agent is available                                  |           |
| **Features**    | Extra capabilities like call transfers, knowledge bases       |           |
| **Webhooks**    | Get notified when calls happen                                |           |
| **Phone Setup** | Connect to real phone numbers                                 |           |

Let's go through each one.

***

## Step 1: Basic information

This is where you give your agent an identity.

<Steps>
  <Step title="Open the agent builder">
    Sign in at [blackbox.dasha.ai](https://blackbox.dasha.ai) and click **Create Agent**.
  </Step>

  <Step title="Give it a name">
    Pick something descriptive — "Customer Support Agent" or "Appointment Scheduler" works well. You'll thank yourself later when you have multiple agents.
  </Step>

  <Step title="Choose a language">
    Select your agent's main language. Don't worry, you can add more languages later if you need them.
  </Step>

  <Step title="Write the system prompt">
    This is the most important part. Your system prompt tells the agent who it is and how to behave.

    Start simple — something like:

    > "You are a friendly customer support agent for \[Your Company]. Help customers with their questions. Be concise and helpful. If you don't know something, say so."

    You'll refine this based on test conversations, so don't overthink it now.
  </Step>

  <Step title="Enable the agent">
    Toggle **Allow this agent to take calls** to ON.
  </Step>
</Steps>

<Tip>
  The best prompts come from iteration. Start simple, test with real conversations, then add details based on what you learn.
</Tip>

***

## Step 2: Choose your AI model

The AI model is your agent's brain — it determines how smart and natural the conversations feel.

<Steps>
  <Step title="Pick a provider">
    We support OpenAI, Groq, DeepSeek, and others. OpenAI is a safe choice if you're not sure.
  </Step>

  <Step title="Select a model">
    For most use cases, GPT-4.1-mini hits the sweet spot between quality and speed. If you need maximum intelligence, try GPT-4.1. If speed is critical, Groq models are lightning fast.
  </Step>

  <Step title="Set the temperature">
    This controls how creative vs. predictable your agent is. Start with **0.7** — it's a good balance. Lower (0.3) for strict factual responses, higher (0.9) for more creative ones.
  </Step>
</Steps>

<Card title="Dive deeper into LLM settings" icon="brain" href="/docs/create/llm-configuration">
  Learn about all the model options and when to use each one
</Card>

***

## Step 3: Pick a voice

This is where your agent gets its sound. It's worth spending a few minutes here — the right voice makes a big difference.

<Steps>
  <Step title="Choose a provider">
    **ElevenLabs** has the most natural-sounding voices. **Cartesia** is the fastest. Try a few and see what feels right for your brand.
  </Step>

  <Step title="Browse voices">
    Click **Preview** on any voice to hear a sample. Look for one that matches the personality you want — professional, friendly, calm, energetic.
  </Step>

  <Step title="Adjust the speed">
    Leave it at **1.0x** unless you have a reason to change it. Slightly faster (1.1x) can feel more energetic; slightly slower (0.9x) can feel more thoughtful.
  </Step>
</Steps>

<Card title="Explore all voice options" icon="microphone" href="/docs/create/voice-and-speech">
  Compare providers, preview voices, and learn about voice cloning
</Card>

***

## Step 4: Add tools (optional)

Tools let your agent *do* things, not just talk. Want it to check order status? Book appointments? Look up customer info? That's what tools are for.

<Steps>
  <Step title="Add a tool">
    Click **Add Tool** and give it a name like `check_order_status` or `book_appointment`.
  </Step>

  <Step title="Describe what it does">
    Write a clear description — this helps the AI know when to use it. Example: "Use this when the customer asks about their order status."
  </Step>

  <Step title="Connect it to your system">
    Enter the webhook URL that handles the actual work. When the agent decides to use this tool, we'll call your URL and pass along the details.
  </Step>
</Steps>

Don't have tools set up yet? That's fine — you can always add them later. Your agent will work without them; it just won't be able to take actions.

<Card title="Learn how tools work" icon="wrench" href="/docs/create/tools-and-functions">
  Full guide to setting up tools, webhooks, and integrations
</Card>

***

## Step 5: Set a schedule (optional)

By default, your agent is available 24/7. If you want it to follow business hours, set that up here.

<Steps>
  <Step title="Set your timezone">
    Pick your business timezone so the hours make sense.
  </Step>

  <Step title="Configure your hours">
    Toggle days on or off, and set the time range for each day.
  </Step>
</Steps>

What happens outside business hours? You can have the agent:

* Tell callers your hours and end the call
* Take a message
* Transfer to an after-hours number

<Card title="Scheduling options" icon="clock" href="/docs/create/scheduling-availability">
  Set up business hours, holidays, and after-hours handling
</Card>

***

## Step 6: Enable features (optional)

These are extra capabilities you can turn on:

* **Fillers** — Add natural "um" and "uh" sounds while thinking
* **Call transfers** — Hand off to humans when needed
* **Knowledge base** — Give your agent documents to reference
* **Silence management** — Handle awkward pauses gracefully

Each feature has its own settings. Browse them and enable what makes sense for your use case.

<Card title="Explore all features" icon="sparkles" href="/docs/advanced-features/overview">
  Full list of available features and how to configure them
</Card>

***

## Step 7: Set up webhooks (optional)

Webhooks notify your systems when things happen — a call starts, a call ends, the agent needs help.

<Steps>
  <Step title="Add a start webhook">
    Get notified when a call begins. Useful for logging or pulling up customer info.
  </Step>

  <Step title="Add a result webhook">
    Get the full transcript and outcome when a call ends. This is how most people integrate with their CRM.
  </Step>
</Steps>

<Card title="Webhook setup guide" icon="webhook" href="/docs/webhooks-and-events/configuring-webhooks">
  Learn about webhook events, payloads, and security
</Card>

***

## Step 8: Save and test

Almost there! Let's make sure everything works.

<Steps>
  <Step title="Check for errors">
    Look through each tab for any validation warnings. Fix anything that's flagged.
  </Step>

  <Step title="Save your agent">
    Click **Save Agent**. Your configuration is now live.
  </Step>

  <Step title="Test it">
    Click **Test** to start a conversation in your browser. Talk to it like a real customer would.
  </Step>

  <Step title="Review the results">
    After your test call, go to **Calls** to see the transcript and timing details. This is where you'll spot things to improve.
  </Step>
</Steps>

**Congratulations!** You've built a complete voice agent. From here, it's all about testing, learning, and refining.

***

## Building with the API?

If you prefer code, here's how to create an agent programmatically:

<Accordion title="API example: Create an agent">
  ```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
  const response = await fetch('https://blackbox.dasha.ai/api/v1/agents', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      name: "Customer Support Agent",
      isEnabled: true,
      config: {
        primaryLanguage: "en-US",
        llmConfig: {
          vendor: "openai",
          model: "gpt-4.1-mini",
          prompt: "You are a helpful customer support agent...",
          options: { temperature: 0.7 }
        },
        ttsConfig: {
          vendor: "ElevenLabs",
          model: "eleven_flash_v2_5",
          voiceId: "21m00Tcm4TlvDq8ikWAM",
          speed: 1.0
        }
      }
    })
  });

  const agent = await response.json();
  console.log('Created agent:', agent.agentId);
  ```
</Accordion>

***

## What's next?

<CardGroup cols={2}>
  <Card title="Test your agent" icon="flask" href="/docs/test/dashboard-testing">
    Learn testing strategies and how to debug issues
  </Card>

  <Card title="Get a phone number" icon="phone" href="/docs/deploy/phone-numbers">
    Put your agent on a real phone line
  </Card>

  <Card title="Add to your website" icon="browser" href="/docs/deploy/web-widget-embedding">
    Embed your agent as a web widget
  </Card>

  <Card title="Go to production" icon="rocket" href="/docs/deploy/production-checklist">
    Everything to check before going live
  </Card>
</CardGroup>
