diff --git a/fern/agent-skills.mdx b/fern/agent-skills.mdx new file mode 100644 index 000000000..91ec3b98d --- /dev/null +++ b/fern/agent-skills.mdx @@ -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). diff --git a/fern/assistants/quickstart.mdx b/fern/assistants/quickstart.mdx index e76ff9f23..6c3829c73 100644 --- a/fern/assistants/quickstart.mdx +++ b/fern/assistants/quickstart.mdx @@ -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. diff --git a/fern/assistants/structured-outputs.mdx b/fern/assistants/structured-outputs.mdx index cb058dfd1..54296e1c8 100644 --- a/fern/assistants/structured-outputs.mdx +++ b/fern/assistants/structured-outputs.mdx @@ -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 diff --git a/fern/calls/call-outbound.mdx b/fern/calls/call-outbound.mdx index dd7334238..a5130335b 100644 --- a/fern/calls/call-outbound.mdx +++ b/fern/calls/call-outbound.mdx @@ -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. diff --git a/fern/docs.yml b/fern/docs.yml index da0217e17..82b75d636 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -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 diff --git a/fern/observability/simulations-overview.mdx b/fern/observability/simulations-overview.mdx index 96d70eabd..264be58d4 100644 --- a/fern/observability/simulations-overview.mdx +++ b/fern/observability/simulations-overview.mdx @@ -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 | diff --git a/fern/outbound-campaigns/overview.mdx b/fern/outbound-campaigns/overview.mdx index fe57824e7..88918c34e 100644 --- a/fern/outbound-campaigns/overview.mdx +++ b/fern/outbound-campaigns/overview.mdx @@ -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: diff --git a/fern/phone-calling.mdx b/fern/phone-calling.mdx index 84ed6de9c..199275a02 100644 --- a/fern/phone-calling.mdx +++ b/fern/phone-calling.mdx @@ -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: diff --git a/fern/prompting-guide.mdx b/fern/prompting-guide.mdx index cf62b6482..5a13c98fb 100644 --- a/fern/prompting-guide.mdx +++ b/fern/prompting-guide.mdx @@ -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) diff --git a/fern/quickstart/introduction.mdx b/fern/quickstart/introduction.mdx index ca78337a0..a82d990ae 100644 --- a/fern/quickstart/introduction.mdx +++ b/fern/quickstart/introduction.mdx @@ -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. +### Vapi Skills + +Vapi Skills help AI coding assistants build and test Vapi applications. + + + + Find skills for assistants, tools, Squads, calls, campaigns, and testing. + + + ## Popular use cases diff --git a/fern/security-and-privacy/api-keys.mdx b/fern/security-and-privacy/api-keys.mdx index 0a598ce01..35d7a4990 100644 --- a/fern/security-and-privacy/api-keys.mdx +++ b/fern/security-and-privacy/api-keys.mdx @@ -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. diff --git a/fern/server-url.mdx b/fern/server-url.mdx index 06fc1723c..f06db9180 100644 --- a/fern/server-url.mdx +++ b/fern/server-url.mdx @@ -29,6 +29,8 @@ To build more complex & custom applications, we're going to need to get real-tim back to). +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: diff --git a/fern/squads.mdx b/fern/squads.mdx index 3d655d892..fa58b63af 100644 --- a/fern/squads.mdx +++ b/fern/squads.mdx @@ -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 diff --git a/fern/tools/introduction.mdx b/fern/tools/introduction.mdx index 45f44667c..aa45a0aba 100644 --- a/fern/tools/introduction.mdx +++ b/fern/tools/introduction.mdx @@ -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: