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

# Creating a Script

> How to create a new call script in Voxworks — generate one with AI, start from a template, copy an existing script, or build from scratch — and how to read the Scripts page.

## Overview

Every voice assistant in Voxworks starts with a script. To create one, open **Call Scripts** in the sidebar (under **Voice Agent Settings**) and click **New script** — either the button in the toolbar or the dashed **New script** card at the bottom of the list. Both open the **Create New Script** dialog, which offers four ways to start:

| Method               | Best for                                                            |
| -------------------- | ------------------------------------------------------------------- |
| **Generate with AI** | Getting a complete, working script from a plain-English description |
| **From Template**    | Starting from a pre-built script and customising it                 |
| **From Existing**    | Reusing a script you have already refined as the base for a new one |
| **New Script**       | Building everything yourself from a blank script                    |

**From Template** is selected when the dialog opens. Pick a method, complete its options, and click **Create**. Whichever path you choose, you land in the script editor with your new script open and ready to configure — see the [Editor Guide](/scripts/editor-guide).

You can also start a script from the Dashboard: the **Actions** menu includes a **New Call Script** shortcut, which opens a standalone **Create Call Script** form rather than the four-method dialog.

***

## Generate with AI

Select **Generate with AI** ("Describe your script and let AI generate it for you") and click **Create** to open the **Generate Script** form. You give it a script name, the call direction, who the assistant will be talking to, a voice, and a description of the script's goal — optionally grounding it in your website and uploaded knowledge documents (PDF, DOCX, PPTX, TXT, Markdown, CSV, or JSON). Voxworks then generates a full conversation script from your inputs.

Generation runs in the background — you can watch its progress step by step, or close the dialog and the script will appear in the scripts list when ready. The full walkthrough of every field and what the generator produces is on the [AI Generation](/scripts/ai-generation) page.

***

## From Template

Select **From Template** ("Start with a pre-built template and customize it"), then:

1. Choose a template from the **Select a template** dropdown.
2. Choose a voice from the voice picker beneath it.
3. Click **Create**.

The **Create** button stays disabled until both a template and a voice are selected. The new script is created as **"New Script"** — rename it in the editor — and copies the template's call type, description, call flow, Call Objectives, Guidelines, Knowledge Base, Data Collection, voicemail message, and settings.

Template availability depends on what has been published to your account. If the **Select a template** dropdown is empty, use **Generate with AI** or **From Existing** instead.

***

## From Existing

Select **From Existing** ("Copy one of your existing scripts as a starting point"), pick a script from the **Select an existing script** dropdown, and click **Create** — the button stays disabled until a script is chosen.

Duplicating copies everything about the original:

* Name — the copy is named after the original with a **" - Copy"** suffix
* Call type, voice, and description
* The main flow and (if present) the pre-call flow, duplicated as independent copies — editing the copy's flow never changes the original
* Call Objectives, Guidelines, Knowledge Base, Post-Call Analysis, voicemail message, and all script settings

One behaviour to be aware of: sub-flows referenced by the original script are **shared** with the copy rather than duplicated. Editing a shared sub-flow affects every script that uses it — the editor warns you when you open one. See [Sub-Flows](/flows/flows-sub) for how shared flows work.

***

## New Script — creating from scratch

Select **New Script** ("Start from scratch with a blank script") and click **Create** to open the **Create New Script** form: "Enter basic information to create your script. You'll be able to configure everything else on the next page."

| Field           | Required | Description                                                                                                                 |
| --------------- | -------- | --------------------------------------------------------------------------------------------------------------------------- |
| **Script Name** | Yes      | The script's display name, e.g. "Customer Support Script"                                                                   |
| **Description** | No       | "Brief description of what this script does..." — shown on the script's card in the list                                    |
| **Call Type**   | Yes      | **Inbound** or **Outbound**. Defaults to **Inbound**. You can change it later in the script's [Settings](/scripts/settings) |
| **Voice**       | Yes      | The voice the assistant speaks with — browse options in the [Voice Library](/voices/library)                                |

Click **Create & Continue** to create the script and open it in the editor.

A from-scratch script starts deliberately minimal:

* **Max Call Duration (seconds)** is set to **600** (10 minutes) — adjustable under the Settings tab's Call Settings
* The call flow, Call Objectives, Guidelines, Knowledge Base, and voicemail message are all empty, ready for you to build

Work through the editor tabs — **Script**, **Guidelines**, **Policies**, **Knowledge Base**, **Data Collection**, **Post-Call Analysis**, and **Settings** — to build it out. The [Editor Guide](/scripts/editor-guide) covers each one.

***

## The Scripts page

The **Scripts** page lists every call script on your team, with a live count badge next to the heading. The toolbar gives you:

| Control                                           | What it does                                                 |
| ------------------------------------------------- | ------------------------------------------------------------ |
| **All / Inbound / Outbound** tabs                 | Filter by call type; each tab shows its script count         |
| **Search scripts, descriptions, objectives…** box | Matches script names, descriptions, and Call Objectives      |
| **All voices** dropdown                           | Filter to scripts using a particular voice                   |
| Sort dropdown                                     | **Last updated** (default), **Last used**, or **Name (A-Z)** |
| **Card view / List view** toggle                  | Switch between detailed cards and compact rows               |
| **New script**                                    | Opens the Create New Script dialog                           |

Clicking any script — in either view — opens it in the editor.

### Card view

Each card shows the script at a glance:

* **Type icon and label** — green for **Inbound**, brand-coloured for **Outbound**
* **Name** (scripts without a name show "Untitled script"), with an **AI Receptionist** badge if the script belongs to a receptionist
* **Voice** and when the script was last **Updated**
* **Description**, or "No description" if none is set
* Up to five **objective badges**, with a "+N" badge when there are more

### Per-script stats

The right side of each card shows call statistics for the script, covering all of its calls:

| Stat                     | Meaning                                                                                 |
| ------------------------ | --------------------------------------------------------------------------------------- |
| **Calls**                | Total calls that have used this script                                                  |
| **Booked**               | Calls where the script's first Call Objective was marked successful in post-call review |
| **Success**              | Percentage of the script's calls that completed — see [Call Statuses](/calls/statuses)  |
| **Avg time**             | Average call duration                                                                   |
| **Calls · last 24 days** | A daily bar chart of call volume; hover a bar for the date and exact count              |

Stats load a moment after the page opens; a dash (—) means the data hasn't loaded yet or the script has no calls.

### List view

List view shows one compact row per script — name, description, and voice. Hover a row to reveal its quick actions:

* **Test** — opens the Test Call dialog so you can try the script immediately, without leaving the page. See [Test Calls](/calls/test-calls)
* **Edit** — opens the script in the editor (the same as clicking the row)

***

## Next Steps

* [Editor Guide](/scripts/editor-guide) — tour the script editor you land in after creating a script
* [AI Generation](/scripts/ai-generation) — every field of the Generate Script form and what the generator builds
* [Test Calls](/calls/test-calls) — try your new script on a real call before going live
* [Script Settings](/scripts/settings) — call type, duration limits, voice, and the rest of the Settings tab
