string
Output directory where files will be saved. Defaults to current directory.
string
Project name. Providing this flag triggers non-interactive mode.
string
Bot type:
web or telephony.string
Transport provider. Repeatable for multiple transports (e.g.
-t daily -t smallwebrtc). Valid values: daily, smallwebrtc, twilio, telnyx,
plivo, exotel, daily_pstn, twilio_daily_sip.string
Pipeline mode:
cascade or realtime.string
Speech-to-Text service (cascade mode). e.g.
deepgram_stt, openai_stt.string
Language model service (cascade mode). e.g.
openai_llm, anthropic_llm.string
Text-to-Speech service (cascade mode). e.g.
cartesia_tts, elevenlabs_tts.string
Realtime service (realtime mode). e.g.
openai_realtime,
gemini_live_realtime.string
Video avatar service (web bots only). e.g.
heygen_video, tavus_video,
simli_video.string
Client framework (web bots only):
react, vanilla, or none.string
Client dev server (when using
--client-framework react): vite or nextjs.string
Daily PSTN mode (required when transport is
daily_pstn): dial-in or
dial-out.string
Twilio + Daily SIP mode (required when transport is
twilio_daily_sip):
dial-in or dial-out.boolean
default:"false"
Enable audio recording.
boolean
default:"false"
Enable transcription logging.
boolean
default:"false"
Enable video input (web bots only).
boolean
default:"false"
Enable video output (web bots only).
boolean
default:"true"
Generate Pipecat Cloud deployment files (Dockerfile, pcc-deploy.toml).
boolean
default:"false"
Enable Krisp noise cancellation (requires cloud deployment).
boolean
default:"false"
Enable observability.
string
Path to a JSON config file. Triggers non-interactive mode. CLI flags override
file values.
boolean
default:"false"
Print the resolved configuration as JSON without generating any files.
boolean
default:"false"
Print all available service options as JSON and exit. Useful for CI scripts
and coding agents that need to discover valid values at runtime.
Interactive Setup
When run without--name or --config, the CLI guides you through selecting:
- Bot type and client framework - Phone, web (Next.js, Vite, Vanilla JS), or mobile
- Transport provider - Daily, Twilio, Telnyx, Plivo, Exotel
- Pipeline mode - Cascade or Realtime
- AI services - STT, LLM, and TTS providers
- Optional features - Additional capabilities for your bot
- Deployment target - Local development or Pipecat Cloud
Non-Interactive Mode
When--name or --config is provided, all configuration is taken from CLI flags or a JSON config file with no interactive prompts. This is useful for automation, scripting, and coding agents.
All required fields must be specified or the command exits with a list of all missing/invalid fields.
Examples
Interactive Wizard
Non-Interactive (Cascade)
Non-Interactive (Realtime)
Multiple Transports
With React Client
Telephony
Discover Available Options
Dry Run
From Config File
project-config.json: