Skip to main content

deploy

Deploy an agent to Pipecat Cloud

Aller à l'installation

Informations de source

Dépôt
pipecat-ai/skills
Dernière activité de la source
26 juin 2026 à 02:13
Langue détectée de SKILL.md
anglais
Étoiles
25
Forks
5

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
deploy
description
Deploy an agent to Pipecat Cloud
Deploy an agent to Pipecat Cloud. This skill walks through the full deployment process interactively, confirming each step with the user. ## Arguments ``` /deploy [--config <PATH>] [--env <PATH>] ``` - `--config` (optional): Path to `pcc-deploy.toml`. Defaults to `pcc-deploy.toml` in the current directory. - `--env` (optional): Path to `.env` file for creating secrets. If not provided, the skill will look for a `.env` file in the same directory as the config file. Examples: - `/deploy` - `/deploy --config examples/mybot/pcc-deploy.toml` - `/deploy --config examples/mybot/pcc-deploy.toml --env examples/mybot/.env` ## Prerequisites Before starting, verify these prerequisites and inform the user about any that are missing: 1. **Pipecat CLI**: Check if `pipecat` is installed by running `pipecat --version`. If not installed, tell the user to install it with `uv tool install pipecat-ai-cli` and stop. 2. **Pipecat Cloud authentication**: Check if `pipecat cloud auth whoami` succeeds. If not authenticated, do **not** try to run login yourself — `pipecat cloud auth login` opens a browser for an OAuth flow that Claude can't complete. Instead, tell the user to authenticate by running `pipecat cloud auth login` in their terminal (suggest the `! pipecat cloud auth login` form so the output lands in the session). Wait for them to confirm, then re-run `pipecat cloud auth whoami` to verify before proceeding. 3. **Configuration file**: Read the `pcc-deploy.toml` file (from `--config` argument or current directory). If it doesn't exist, tell the user they need a `pcc-deploy.toml` and stop. Parse and display the configuration to the user (agent_name, image, secret_set, etc.). If any prerequisite fails, stop and clearly explain what needs to be fixed. Do not proceed to the next steps. ## Deployment Method After prerequisites pass, ask the user how they want to deploy using AskUserQuestion: - **Cloud Build (Recommended)**: Pipecat Cloud builds your Docker image from source. No local Docker required. - **Self-managed image**: Build and push your own Docker image from your machine, then deploy. ## Important: Running Commands All `pipecat cloud` commands must be run from the directory containing the `pcc-deploy.toml` file. Use `cd <dir> && <command>` to ensure the correct working directory. Several `pipecat cloud` commands prompt for interactive confirmation which doesn't work in this environment. Skip the prompts with these flags: - **`pipecat cloud deploy`**: Use `--force` (e.g., `pipecat cloud deploy --force`) - **`pipecat cloud secrets set`**: Use the `--skip` flag (e.g., `pipecat cloud secrets set NAME --file .env --skip`) `pipecat cloud docker build-push` runs non-interactively and has no confirmation prompt, so no extra flag is needed. --- ## Cloud Build Path This path uses Pipecat Cloud to build your Docker image from source. No local Docker installation is required. ### Step 1: Verify Dockerfile and Lockfile Check that a `Dockerfile` exists in the build context directory (the directory containing `pcc-deploy.toml`, or the `context_dir` from the `[build]` section of the config). If no Dockerfile is found, tell the user they need one and stop. If the Dockerfile references `uv` (e.g., `uv sync`, `uv pip install`, `COPY uv.lock`), check that a `uv.lock` file exists in the build context directory. If it doesn't exist, run `uv lock` to generate it. If it already exists, run `uv lock` to ensure it's up to date. The lockfile must be present and current because cloud builds run remotely and cannot generate it. ### Step 2: Secrets Setup Ask the user if they need to create or update secrets for this deployment. - If yes, determine the env file path (from `--env` argument, or look for `.env` in the same directory as the config file, or ask the user). - Read the `secret_set` name from the `pcc-deploy.toml` configuration. - Run: `pipecat cloud secrets set {SECRET_SET_NAME} --file {ENV_FILE_PATH} --skip` - Show the output to the user. - If no, skip this step. ### Step 3: Deploy Ask the user to confirm they want to deploy the agent. - Show a summary of what will be deployed (agent_name, secret_set from the config). - Run from the config directory: `pipecat cloud deploy --force` - Use a generous timeout (10 minutes) as the cloud build and deployment can take a while. - This command handles both the cloud build and the deployment automatically. - If the command times out but no error occurred, retrieve the build ID from the command output and run `pipecat cloud build logs {BUILD_ID}` to check build progress. Share the output with the user. - If the build succeeds but deployment times out, check agent logs with `pipecat cloud agent logs {AGENT_NAME}` and share with the user. - Show the deployment output and status to the user. ### Cloud Build Error Handling - If the build fails, retrieve the build ID from the command output and run `pipecat cloud build logs {BUILD_ID}` to show the user what went wrong. - Common cloud build issues: - Missing or invalid Dockerfile - Build context too large (500MB limit) — check for large files that should be in `.dockerignore` - Build timeout — the build exceeded the maximum duration --- ## Self-Managed Image Path This path builds and pushes the Docker image from your machine. Requires Docker to be installed and running. ### Step 1: Docker Prerequisites Check these additional prerequisites: - **Docker**: Check if `docker info` succeeds (daemon running). If not, tell the user to start Docker and stop. - **Docker login**: Check if `docker login` succeeds. If not logged in, tell the user to run `docker login` and stop. ### Step 2: Secrets Setup Ask the user if they need to create or update secrets for this deployment. - If yes, determine the env file path (from `--env` argument, or look for `.env` in the same directory as the config file, or ask the user). - Read the `secret_set` name from the `pcc-deploy.toml` configuration. - Run: `pipecat cloud secrets set {SECRET_SET_NAME} --file {ENV_FILE_PATH} --skip` - Show the output to the user. - If no, skip this step. ### Step 3: Build and Push Docker Image Ask the user if they want to build and push the Docker image. - If yes: - First, check if `uv.lock` exists in the config directory. If so, run `uv lock` to ensure it's up to date before building. - Run from the config directory: `pipecat cloud docker build-push` - Use a generous timeout (5 minutes) as builds can take a while. - If the build fails due to a stale lockfile, run `uv lock` in the config directory and retry. - If the build fails for other reasons, show the error and ask the user how to proceed. - If no, skip this step (image may already be pushed). ### Step 4: Deploy Ask the user to confirm they want to deploy the agent. - Show a summary of what will be deployed (agent_name, image, secret_set from the config). - Run from the config directory: `pipecat cloud deploy --force` - Use a generous timeout (5 minutes) as deployment may take time to reach ready state. - If deployment times out but no error occurred, check logs with `pipecat cloud agent logs {AGENT_NAME}` and share with the user — the deployment may still be starting up. - Show the deployment output and status to the user. ### Self-Managed Image Error Handling - Common issues: - Docker not logged in to the image registry (`docker login`) - Missing `image` field in `pcc-deploy.toml` - Stale `uv.lock` file — run `uv lock` to fix --- ## General Error Handling - If any `pipecat cloud` command fails, show the full error output and explain what might have gone wrong. - Common issues for both paths: - Invalid or expired Pipecat Cloud authentication - Missing or malformed `pcc-deploy.toml` - Secret set name mismatch between config and what exists in Pipecat Cloud ## Completion After a successful deployment, summarize what was done: - Deployment method used (cloud build or self-managed image) - Secrets created/updated (if applicable) - Image built and pushed (if applicable) - Agent deployed with name from config
Voir sur GitHub