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

# Quickstart

> Create an agent, attach a knowledge base, wire a workflow, and place a test call.

By the end of this guide you'll have a working voice agent grounded in your own content, with a workflow tool it can call mid-conversation.

## Prerequisites

* An Anyreach account and an active organization
* Permission to create agents and knowledge bases in your org
* A document (PDF, Markdown, plain text, or a URL) you want the agent to know about

## 1. Create a knowledge base

Knowledge bases let your agent answer factual questions from your content.

<Steps>
  <Step title="Open Knowledge Bases">
    From the sidebar, click **Knowledge Bases**, then **New knowledge base**.
  </Step>

  <Step title="Name and describe it">
    Give it a clear name (e.g. *Product FAQ*) and a one-sentence description. The description helps the agent decide when to query this KB.
  </Step>

  <Step title="Add a source">
    Click **Add source**. Upload a `.pdf`, `.md`, `.txt`, or `.html` file, or paste a URL to crawl. Wait for the source status to reach **Ready** — it goes through `pending → converting → chunking → embedding → ready`.
  </Step>
</Steps>

See [Uploading documents](/knowledge-bases/uploading-documents) for format details and limits.

## 2. Create an agent

<Steps>
  <Step title="Open Agents → New agent">
    Pick a starting template or **Blank**. Anyreach uses a wizard with seven sections — you'll fill them in order.
  </Step>

  <Step title="Purpose & Personality">
    Choose an industry, describe the agent's purpose in 1–2 sentences, and set a personality (e.g. "warm, concise, slightly playful"). Pick a voice and language.
  </Step>

  <Step title="Agent Instructions">
    Describe the conversation flow — what the agent says first, what it tries to accomplish, what it does at the end. You can also click **Generate instructions** to draft this from your purpose description.
  </Step>

  <Step title="Knowledge">
    Attach the knowledge base you just created. The agent will retrieve from it when callers ask factual questions.
  </Step>

  <Step title="Skip Abilities for now">
    We'll come back here in step 4 to expose a workflow as a tool.
  </Step>
</Steps>

## 3. Test the agent

Open the **Tester** panel on the agent edit page, click **Start call**, and talk to your agent in your browser. Iterate on the prompt and instructions until the conversation feels right.

See [Testing agents](/agents/testing-agents) for the full debugging surface.

## 4. Add a workflow as a tool

Workflows let the agent take actions during a call.

<Steps>
  <Step title="Create a workflow">
    Open **Workflows → New workflow**. Add an **Input** step that accepts `customer_email: string`, then an **HTTP** step that POSTs to your CRM, then an **Output** step that returns `{ "ok": true }`.
  </Step>

  <Step title="Publish version 1">
    Click **Publish**. Only published versions can be invoked from agents.
  </Step>

  <Step title="Expose it as a tool">
    Back on the agent edit page, go to **Abilities → Add tool → Workflow**. Pick the workflow, give it a name (e.g. `log_lead`) and a description the LLM will read to decide when to call it. Map the tool's parameters to the workflow's input schema.
  </Step>

  <Step title="Republish the agent">
    Click **Publish** on the agent. The new version is now live.
  </Step>
</Steps>

## 5. Place a real call

Assign a phone number under the agent's **Deployment** section, save, and call the number.

## Next steps

<CardGroup cols={2}>
  <Card title="Build deeper agents" icon="phone" href="/agents/overview">
    Voice tuning, guardrails, model choice, multi-tool setups.
  </Card>

  <Card title="Master workflows" icon="diagram-project" href="/workflows/overview">
    Step types, expressions, triggers, and end-to-end tutorials.
  </Card>
</CardGroup>
