Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions fern/agent-skills.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
---
title: Vapi Skills for AI coding assistants
subtitle: Use Vapi's agent skills to build and test voice assistants with an AI coding assistant
description: Install Vapi Skills for AI coding assistants and find skills for assistants, tools, Squads, calls, campaigns, phone numbers, webhooks, structured outputs, and Simulations.
slug: agent-skills
---

Vapi Skills are instruction packages that help compatible AI coding assistants complete Vapi development tasks. Choose a skill for the task you want to do, such as creating an assistant, configuring a tool, or testing a Squad. The [latest Vapi Skills release](https://github.com/VapiAI/skills/releases/latest) provides a ZIP for each skill.

## Install Vapi Skills

Download a skill ZIP from the [latest release](https://github.com/VapiAI/skills/releases/latest). Each skill below links to its ZIP in that release.

To install directly from the repository with the Skills CLI instead, run:

```bash
npx skills add VapiAI/skills
```

To install one skill, pass its name. For example, to work on a Squad:

```bash
npx skills add VapiAI/skills --skill create-squad
```

For skill directory locations and other installation methods, see the [repository installation instructions](https://github.com/VapiAI/skills#installation). For live Vapi API operations, configure a private API key as `VAPI_API_KEY` in your environment. Follow the [API key security guidance](/security-and-privacy/api-keys); keep private keys out of chats and source code.

## Choose a skill

Each skill below links to a ZIP in the latest release. The related docs explain the Vapi feature and its configuration.

### setup-api-key

Use [setup-api-key (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/setup-api-key.zip) to get and configure a Vapi API key, including when a missing key blocks API calls. See [API keys](/security-and-privacy/api-keys).

### create-assistant

Use [create-assistant (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-assistant.zip) to design, create, or validate a saved or transient assistant. See the [assistants quickstart](/assistants/quickstart).

### create-structured-output

Use [create-structured-output (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-structured-output.zip) to design, attach, and verify reusable post-call data extraction. See [structured outputs](/assistants/structured-outputs).

### vapi-prompt-builder

Use [vapi-prompt-builder (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/vapi-prompt-builder.zip) to draft, improve, or review assistant and Squad system prompts. See the [Voice AI Prompting Guide](/prompting-guide).

### create-tool

Use [create-tool (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-tool.zip) to select, configure, attach, and verify tools for an assistant. See [Tools](/tools).

### create-call

Use [create-call (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-call.zip) for a single outbound phone call, a web call, a scheduled call, or a simple batch. See [Outbound Calling](/calls/outbound-calling).

### create-campaign

Use [create-campaign (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-campaign.zip) for a persistent outbound campaign with contacts, scheduling, results, and lifecycle management. See [Campaigns overview](/outbound-campaigns/overview).

### create-squad

Use [create-squad (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-squad.zip) to design Squad members and handoffs, then create or verify the Squad configuration. See [Squads](/squads).

### create-phone-number

Use [create-phone-number (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/create-phone-number.zip) to plan, provision, import, or route a Vapi phone number. See [Phone Calling](/phone-calling).

### setup-webhook

Use [setup-webhook (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/setup-webhook.zip) to configure a Server URL that receives call events or tool calls. See [Server URLs](/server-url).

### simulations

Use [simulations (ZIP)](https://github.com/VapiAI/skills/releases/latest/download/simulations.zip) to design, run, and maintain conversation tests for assistants and Squads. See [Simulations overview](/observability/simulations-overview).
1 change: 1 addition & 0 deletions fern/assistants/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,7 @@ With free Vapi numbers, only inbound calls are supported. To make outbound calls

## Next steps

- **Build with an AI coding assistant:** The [create-assistant skill](/agent-skills#create-assistant) helps you design, create, and validate an assistant through the API.
- **Add tools**: [Function tools](/tools/custom-tools)
- **Tune speech**: [Speech configuration](/customization/speech-configuration)
- **Use a preset**: [Model Intelligence presets](/assistants/model-intelligence/presets) bundle a transcriber, model, and voice for common use cases.
Expand Down
1 change: 1 addition & 0 deletions fern/assistants/structured-outputs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -848,6 +848,7 @@ if (data.result === null) {

## Related

- [create-structured-output skill](/agent-skills#create-structured-output) - Use an AI coding assistant to define, attach, and verify reusable post-call extraction.
- [Call analysis](/assistants/call-analysis) - Summarize and evaluate calls
- [Function tools](/tools/custom-tools) - Trigger actions during calls
- [Webhooks](/server-url) - Receive extracted data via webhooks
Expand Down
2 changes: 2 additions & 0 deletions fern/calls/call-outbound.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ description: Send outbound calls from Vapi programmatically, placing single or b

Vapi's outbound calling API lets you programmatically initiate single or batch calls to any phone number. You can schedule calls for specific dates and times, ideal for time-sensitive communications. Easily integrate outbound calling into your app for appointment reminders, automated surveys, and call campaigns.

If you're using an AI coding assistant to place or test a call through the API, the [create-call skill](/agent-skills#create-call) covers one-off, scheduled, web, and simple batch calls.

## Prerequisites

- **Vapi Account**: Access to the Vapi Dashboard for configuration.
Expand Down
3 changes: 3 additions & 0 deletions fern/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ navigation:
- page: CLI quickstart
icon: fa-light fa-terminal
path: cli/overview.mdx
- page: Vapi Skills
icon: fa-light fa-wand-magic-sparkles
path: agent-skills.mdx
- page: Config as code (GitOps)
icon: fa-light fa-code-branch
path: config-as-code.mdx
Expand Down
2 changes: 2 additions & 0 deletions fern/observability/simulations-overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ slug: observability/simulations-overview

Simulations are automated tests that run an AI tester through a real conversation with your [**assistant**](/assistants) or [**squad**](/squads) and score the outcome. They matter because they catch broken flows, bad handoffs, and voice issues before the assistant or squad handles production traffic. This page explains what Simulations are and when to use them.

If you're planning or running tests with an AI coding assistant, the [simulations skill](/agent-skills#simulations) helps you design scenarios, build suites, run conversations, and review results.

## Key concepts

| Term | Definition |
Expand Down
2 changes: 2 additions & 0 deletions fern/outbound-campaigns/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ Outbound campaigns let you call a list of contacts with an assistant or squad. Y

Use a campaign when the same assistant or squad needs to make many related calls, such as appointment reminders, lead qualification, customer follow-ups, or surveys.

If you're building a campaign with an AI coding assistant, the [create-campaign skill](/agent-skills#create-campaign) helps you create, schedule, monitor, and manage its contacts and results.

## How campaigns work

Every campaign combines four parts:
Expand Down
2 changes: 2 additions & 0 deletions fern/phone-calling.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Free Vapi phone numbers use US area codes, and only inbound calls are supported.

You can create and configure phone numbers with Vapi to place and receive calls. Vapi provides free US phone numbers for inbound calls. For outbound, international, or custom use, import your own numbers from a provider.

If you're configuring a phone number with an AI coding assistant, the [create-phone-number skill](/agent-skills#create-phone-number) helps you plan, provision, import, and route it.

## Setting up a phone number

You can set up a phone number to place and receive calls in two ways:
Expand Down
1 change: 1 addition & 0 deletions fern/prompting-guide.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -755,6 +755,7 @@ help directly?"

Check out these additional resources to learn more about prompt engineering:

- [Vapi Skills for AI coding assistants](/agent-skills#vapi-prompt-builder) - Use the `vapi-prompt-builder` skill to draft, improve, or review assistant and Squad system prompts.
- [Debugging voice agents](/debugging)
- [Tools](/tools)
- [Squads](/squads)
Expand Down
15 changes: 15 additions & 0 deletions fern/quickstart/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,21 @@ Work with Vapi from your terminal, or manage your whole configuration as code:
To manage Vapi configuration as code (assistants, squads, tools, structured outputs, simulations and evals as files in git, across one or more orgs or environments), use the open-source repository at https://github.com/VapiAI/gitops and read https://docs.vapi.ai/config-as-code.md before setting it up.
</llms-only>

### Vapi Skills

Vapi Skills help AI coding assistants build and test Vapi applications.

<CardGroup cols={1}>
<Card
title="Vapi Skills for AI coding assistants"
icon="wand-magic-sparkles"
iconType="solid"
href="/agent-skills"
>
Find skills for assistants, tools, Squads, calls, campaigns, and testing.
</Card>
</CardGroup>

## Popular use cases

<CardGroup cols={3}>
Expand Down
2 changes: 2 additions & 0 deletions fern/security-and-privacy/api-keys.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ A Vapi API key is a credential that authorizes an application to access your Vap

This guide covers API keys issued by Vapi. To connect accounts from model, voice, transcriber, and telephony providers, see [Provider keys](/customization/provider-keys).

If you're setting up API access with an AI coding assistant, the [setup-api-key skill](/agent-skills#setup-api-key) guides you through obtaining and configuring a Vapi API key.

## How it works

Every API key belongs to one Vapi organization. Choose the key type based on where your application runs, then limit the key to the origins and assistants that need access.
Expand Down
2 changes: 2 additions & 0 deletions fern/server-url.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ To build more complex & custom applications, we're going to need to get real-tim
back to).
</Info>

If you're configuring a Server URL with an AI coding assistant, the [setup-webhook skill](/agent-skills#setup-webhook) helps you connect an endpoint for call events and tool calls.

## Get Started

To get started using server URLs, read our guides:
Expand Down
2 changes: 2 additions & 0 deletions fern/squads.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ description: Break complex workflows into multiple specialized Vapi assistants t

Squads let you break complex workflows into multiple specialized assistants that hand off to each other during a conversation. Each assistant in a Squad handles a specific part of your workflow; for example, one assistant for lead qualification that transfers to another for appointment booking.

If you're designing a Squad with an AI coding assistant, the [create-squad skill](/agent-skills#create-squad) helps you plan members and handoffs, then create and verify the configuration.

**Why use Squads?** Large, all-in-one assistants with lengthy prompts and extensive context lead to:
- **Higher hallucination rates** - Models lose focus with too many and potentially conflicting instructions
- **Increased costs** - Longer prompts consume more tokens per request
Expand Down
2 changes: 2 additions & 0 deletions fern/tools/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ Because the model controls both *when* a tool runs and the arguments it receives

If you are deciding between calling an API directly and running your own logic, see [When to use API Request or Function tools](/tools/api-request-vs-function).

If you're building a tool with an AI coding assistant, the [create-tool skill](/agent-skills#create-tool) helps you select, configure, attach, and verify it.

## Configuration shared by every tool

Most tool settings are specific to the type, but several apply across all of them:
Expand Down
Loading