pipecat-ai-cli 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pipecat_ai_cli-0.1.0/.github/workflows/publish.yaml +78 -0
- pipecat_ai_cli-0.1.0/.github/workflows/publish_test.yaml +51 -0
- pipecat_ai_cli-0.1.0/.github/workflows/tests.yaml +37 -0
- pipecat_ai_cli-0.1.0/.gitignore +58 -0
- pipecat_ai_cli-0.1.0/.pre-commit-config.yaml +8 -0
- pipecat_ai_cli-0.1.0/CHANGELOG.md +18 -0
- pipecat_ai_cli-0.1.0/LICENSE +24 -0
- pipecat_ai_cli-0.1.0/PKG-INFO +141 -0
- pipecat_ai_cli-0.1.0/README.md +109 -0
- pipecat_ai_cli-0.1.0/asdf/.gitignore +227 -0
- pipecat_ai_cli-0.1.0/asdf/README.md +92 -0
- pipecat_ai_cli-0.1.0/asdf/client/.gitignore +24 -0
- pipecat_ai_cli-0.1.0/asdf/client/eslint.config.js +23 -0
- pipecat_ai_cli-0.1.0/asdf/client/index.html +16 -0
- pipecat_ai_cli-0.1.0/asdf/client/package.json +35 -0
- pipecat_ai_cli-0.1.0/asdf/client/public/favicon.svg +7 -0
- pipecat_ai_cli-0.1.0/asdf/client/src/components/App.tsx +65 -0
- pipecat_ai_cli-0.1.0/asdf/client/src/components/TransportSelect.tsx +43 -0
- pipecat_ai_cli-0.1.0/asdf/client/src/config.ts +18 -0
- pipecat_ai_cli-0.1.0/asdf/client/src/index.css +1 -0
- pipecat_ai_cli-0.1.0/asdf/client/src/main.tsx +66 -0
- pipecat_ai_cli-0.1.0/asdf/client/tsconfig.app.json +28 -0
- pipecat_ai_cli-0.1.0/asdf/client/tsconfig.json +7 -0
- pipecat_ai_cli-0.1.0/asdf/client/tsconfig.node.json +26 -0
- pipecat_ai_cli-0.1.0/asdf/client/vite.config.ts +7 -0
- pipecat_ai_cli-0.1.0/asdf/server/.env.example +18 -0
- pipecat_ai_cli-0.1.0/asdf/server/Dockerfile +16 -0
- pipecat_ai_cli-0.1.0/asdf/server/bot.py +144 -0
- pipecat_ai_cli-0.1.0/asdf/server/pcc-deploy.toml +11 -0
- pipecat_ai_cli-0.1.0/asdf/server/pyproject.toml +19 -0
- pipecat_ai_cli-0.1.0/pyproject.toml +96 -0
- pipecat_ai_cli-0.1.0/scripts/check_registry.py +70 -0
- pipecat_ai_cli-0.1.0/scripts/configs/config_generator.py +401 -0
- pipecat_ai_cli-0.1.0/scripts/configs/update_configs.py +58 -0
- pipecat_ai_cli-0.1.0/scripts/fix-ruff.sh +15 -0
- pipecat_ai_cli-0.1.0/scripts/imports/import_generator.py +311 -0
- pipecat_ai_cli-0.1.0/scripts/imports/update_imports.py +212 -0
- pipecat_ai_cli-0.1.0/scripts/pre-commit.sh +43 -0
- pipecat_ai_cli-0.1.0/scripts/update_registry.py +82 -0
- pipecat_ai_cli-0.1.0/setup.cfg +4 -0
- pipecat_ai_cli-0.1.0/src/pipecat_ai_cli.egg-info/PKG-INFO +141 -0
- pipecat_ai_cli-0.1.0/src/pipecat_ai_cli.egg-info/SOURCES.txt +106 -0
- pipecat_ai_cli-0.1.0/src/pipecat_ai_cli.egg-info/dependency_links.txt +1 -0
- pipecat_ai_cli-0.1.0/src/pipecat_ai_cli.egg-info/entry_points.txt +3 -0
- pipecat_ai_cli-0.1.0/src/pipecat_ai_cli.egg-info/requires.txt +7 -0
- pipecat_ai_cli-0.1.0/src/pipecat_ai_cli.egg-info/top_level.txt +1 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/__init__.py +14 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/commands/__init__.py +11 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/commands/cloud.py +139 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/commands/init.py +52 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/commands/tail.py +45 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/generators/__init__.py +11 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/generators/project.py +561 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/main.py +70 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/prompts/__init__.py +11 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/prompts/questions.py +466 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/registry/__init__.py +27 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/registry/_configs.py +374 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/registry/_imports.py +137 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/registry/service_loader.py +284 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/registry/service_metadata.py +793 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/README.md.jinja2 +168 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/.gitignore +41 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/env.example +5 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/eslint.config.mjs +25 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/next.config.ts +7 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/package.json.jinja2 +37 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/postcss.config.mjs +5 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/public/pipecat.svg +7 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/app/api/start/route.ts +45 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/app/components/App.tsx +65 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/app/components/TransportSelect.tsx +43 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/app/globals.css +1 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/app/layout.tsx +20 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/app/page.tsx +60 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/src/config.ts.jinja2 +19 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-nextjs/tsconfig.json +27 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/.gitignore +24 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/eslint.config.js +23 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/index.html +16 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/package.json.jinja2 +40 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/public/favicon.svg +7 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/src/components/App.tsx +65 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/src/components/TransportSelect.tsx +43 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/src/config.ts.jinja2 +19 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/src/index.css +1 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/src/main.tsx +66 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/tsconfig.app.json +28 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/tsconfig.json +7 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/tsconfig.node.json +26 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/react-vite/vite.config.ts +7 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/vanilla-js-vite/index.html +46 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/vanilla-js-vite/package.json.jinja2 +27 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/vanilla-js-vite/src/app.js +239 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/vanilla-js-vite/src/config.js.jinja2 +17 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/client/vanilla-js-vite/src/style.css +228 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/gitignore.jinja2 +229 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/server/Dockerfile.jinja2 +16 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/server/bot_cascade.py.jinja2 +276 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/server/bot_realtime.py.jinja2 +222 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/server/env.example.jinja2 +329 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/server/pcc-deploy.toml.jinja2 +18 -0
- pipecat_ai_cli-0.1.0/src/pipecat_cli/templates/server/pyproject.toml.jinja2 +21 -0
- pipecat_ai_cli-0.1.0/tests/test_client_generation.py +383 -0
- pipecat_ai_cli-0.1.0/tests/test_project_generation.py +519 -0
- pipecat_ai_cli-0.1.0/tests/test_questions.py +182 -0
- pipecat_ai_cli-0.1.0/tests/test_service_registry.py +247 -0
- pipecat_ai_cli-0.1.0/uv.lock +4602 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
name: publish
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
inputs:
|
|
6
|
+
gitref:
|
|
7
|
+
type: string
|
|
8
|
+
description: 'what git tag to build (e.g. v0.0.74)'
|
|
9
|
+
required: true
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
build:
|
|
13
|
+
name: 'Build and upload wheels'
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout repo
|
|
17
|
+
uses: actions/checkout@v4
|
|
18
|
+
with:
|
|
19
|
+
ref: ${{ github.event.inputs.gitref }}
|
|
20
|
+
|
|
21
|
+
- name: Install uv
|
|
22
|
+
uses: astral-sh/setup-uv@v3
|
|
23
|
+
with:
|
|
24
|
+
version: 'latest'
|
|
25
|
+
- name: Set up Python
|
|
26
|
+
run: uv python install 3.12
|
|
27
|
+
- name: Install development dependencies
|
|
28
|
+
run: uv sync --group dev
|
|
29
|
+
- name: Build project
|
|
30
|
+
run: uv build
|
|
31
|
+
- name: Upload wheels
|
|
32
|
+
uses: actions/upload-artifact@v4
|
|
33
|
+
with:
|
|
34
|
+
name: wheels
|
|
35
|
+
path: ./dist
|
|
36
|
+
|
|
37
|
+
publish-to-pypi:
|
|
38
|
+
name: 'Publish to PyPI'
|
|
39
|
+
runs-on: ubuntu-latest
|
|
40
|
+
needs: [build]
|
|
41
|
+
environment:
|
|
42
|
+
name: pypi
|
|
43
|
+
url: https://pypi.org/p/pipecat-ai-cli
|
|
44
|
+
permissions:
|
|
45
|
+
id-token: write
|
|
46
|
+
steps:
|
|
47
|
+
- name: Download wheels
|
|
48
|
+
uses: actions/download-artifact@v4
|
|
49
|
+
with:
|
|
50
|
+
name: wheels
|
|
51
|
+
path: ./dist
|
|
52
|
+
- name: Publish to PyPI
|
|
53
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
54
|
+
with:
|
|
55
|
+
verbose: true
|
|
56
|
+
print-hash: true
|
|
57
|
+
|
|
58
|
+
publish-to-test-pypi:
|
|
59
|
+
name: 'Publish to Test PyPI'
|
|
60
|
+
runs-on: ubuntu-latest
|
|
61
|
+
needs: [build]
|
|
62
|
+
environment:
|
|
63
|
+
name: testpypi
|
|
64
|
+
url: https://test.pypi.org/p/pipecat-ai-cli
|
|
65
|
+
permissions:
|
|
66
|
+
id-token: write
|
|
67
|
+
steps:
|
|
68
|
+
- name: Download wheels
|
|
69
|
+
uses: actions/download-artifact@v4
|
|
70
|
+
with:
|
|
71
|
+
name: wheels
|
|
72
|
+
path: ./dist
|
|
73
|
+
- name: Publish to Test PyPI
|
|
74
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
75
|
+
with:
|
|
76
|
+
verbose: true
|
|
77
|
+
print-hash: true
|
|
78
|
+
repository-url: https://test.pypi.org/legacy/
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
name: publish-test
|
|
2
|
+
|
|
3
|
+
on: workflow_dispatch
|
|
4
|
+
|
|
5
|
+
jobs:
|
|
6
|
+
build:
|
|
7
|
+
name: 'Build and upload wheels'
|
|
8
|
+
runs-on: ubuntu-latest
|
|
9
|
+
steps:
|
|
10
|
+
- name: Checkout repo
|
|
11
|
+
uses: actions/checkout@v4
|
|
12
|
+
with:
|
|
13
|
+
fetch-tags: true
|
|
14
|
+
fetch-depth: 100
|
|
15
|
+
- name: Install uv
|
|
16
|
+
uses: astral-sh/setup-uv@v3
|
|
17
|
+
with:
|
|
18
|
+
version: 'latest'
|
|
19
|
+
- name: Set up Python
|
|
20
|
+
run: uv python install 3.12
|
|
21
|
+
- name: Install development dependencies
|
|
22
|
+
run: uv sync --group dev
|
|
23
|
+
- name: Build project
|
|
24
|
+
run: uv build
|
|
25
|
+
- name: Upload wheels
|
|
26
|
+
uses: actions/upload-artifact@v4
|
|
27
|
+
with:
|
|
28
|
+
name: wheels
|
|
29
|
+
path: ./dist
|
|
30
|
+
|
|
31
|
+
publish-to-test-pypi:
|
|
32
|
+
name: 'Publish to Test PyPI'
|
|
33
|
+
runs-on: ubuntu-latest
|
|
34
|
+
needs: [build]
|
|
35
|
+
environment:
|
|
36
|
+
name: testpypi
|
|
37
|
+
url: https://test.pypi.org/p/pipecat-ai-cli
|
|
38
|
+
permissions:
|
|
39
|
+
id-token: write
|
|
40
|
+
steps:
|
|
41
|
+
- name: Download wheels
|
|
42
|
+
uses: actions/download-artifact@v4
|
|
43
|
+
with:
|
|
44
|
+
name: wheels
|
|
45
|
+
path: ./dist
|
|
46
|
+
- name: Publish to Test PyPI
|
|
47
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
48
|
+
with:
|
|
49
|
+
verbose: true
|
|
50
|
+
print-hash: true
|
|
51
|
+
repository-url: https://test.pypi.org/legacy/
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
name: tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- main
|
|
8
|
+
pull_request:
|
|
9
|
+
branches:
|
|
10
|
+
- '**'
|
|
11
|
+
|
|
12
|
+
concurrency:
|
|
13
|
+
group: build-test-${{ github.event.pull_request.number || github.ref }}
|
|
14
|
+
cancel-in-progress: true
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
test:
|
|
18
|
+
name: 'Unit and Integration Tests'
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
steps:
|
|
21
|
+
- name: Checkout repo
|
|
22
|
+
uses: actions/checkout@v4
|
|
23
|
+
|
|
24
|
+
- name: Install uv
|
|
25
|
+
uses: astral-sh/setup-uv@v3
|
|
26
|
+
with:
|
|
27
|
+
version: 'latest'
|
|
28
|
+
enable-cache: true
|
|
29
|
+
|
|
30
|
+
- name: Set up Python
|
|
31
|
+
run: uv python install 3.12
|
|
32
|
+
|
|
33
|
+
- name: Install dependencies
|
|
34
|
+
run: uv sync --all-extras --dev
|
|
35
|
+
|
|
36
|
+
- name: Run tests
|
|
37
|
+
run: uv run pytest
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
*.so
|
|
6
|
+
.Python
|
|
7
|
+
build/
|
|
8
|
+
develop-eggs/
|
|
9
|
+
dist/
|
|
10
|
+
downloads/
|
|
11
|
+
eggs/
|
|
12
|
+
.eggs/
|
|
13
|
+
lib/
|
|
14
|
+
lib64/
|
|
15
|
+
parts/
|
|
16
|
+
sdist/
|
|
17
|
+
var/
|
|
18
|
+
wheels/
|
|
19
|
+
*.egg-info/
|
|
20
|
+
.installed.cfg
|
|
21
|
+
*.egg
|
|
22
|
+
|
|
23
|
+
# Virtual environments
|
|
24
|
+
venv/
|
|
25
|
+
env/
|
|
26
|
+
ENV/
|
|
27
|
+
.venv
|
|
28
|
+
|
|
29
|
+
# IDE
|
|
30
|
+
.vscode/
|
|
31
|
+
.idea/
|
|
32
|
+
*.swp
|
|
33
|
+
*.swo
|
|
34
|
+
*~
|
|
35
|
+
|
|
36
|
+
# OS
|
|
37
|
+
.DS_Store
|
|
38
|
+
Thumbs.db
|
|
39
|
+
|
|
40
|
+
# Testing
|
|
41
|
+
.pytest_cache/
|
|
42
|
+
.coverage
|
|
43
|
+
htmlcov/
|
|
44
|
+
.tox/
|
|
45
|
+
|
|
46
|
+
# Linting
|
|
47
|
+
.ruff_cache/
|
|
48
|
+
.djlintcache
|
|
49
|
+
|
|
50
|
+
# Distribution
|
|
51
|
+
dist/
|
|
52
|
+
build/
|
|
53
|
+
|
|
54
|
+
# Misc
|
|
55
|
+
*.log
|
|
56
|
+
*.bak
|
|
57
|
+
*.tmp
|
|
58
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to **Pipecat** will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.1.0] - 2025-10-17
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Core CLI commands:
|
|
13
|
+
|
|
14
|
+
- `pipecat init` - Interactive project scaffolding
|
|
15
|
+
- `pipecat tail` - Real-time bot monitoring
|
|
16
|
+
- `pipecat cloud` - Deployment and management commands for Pipecat Cloud
|
|
17
|
+
|
|
18
|
+
- `pc` alias for all commands
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
BSD 2-Clause License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024–2025, Daily
|
|
4
|
+
|
|
5
|
+
Redistribution and use in source and binary forms, with or without
|
|
6
|
+
modification, are permitted provided that the following conditions are met:
|
|
7
|
+
|
|
8
|
+
1. Redistributions of source code must retain the above copyright notice, this
|
|
9
|
+
list of conditions and the following disclaimer.
|
|
10
|
+
|
|
11
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
12
|
+
this list of conditions and the following disclaimer in the documentation
|
|
13
|
+
and/or other materials provided with the distribution.
|
|
14
|
+
|
|
15
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
16
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
17
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
18
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
19
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
20
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
21
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
22
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
23
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
24
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pipecat-ai-cli
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: CLI tool for scaffolding Pipecat AI voice agent projects
|
|
5
|
+
License-Expression: BSD-2-Clause
|
|
6
|
+
Project-URL: Source, https://github.com/pipecat-ai/pipecat-cli
|
|
7
|
+
Project-URL: Website, https://pipecat.ai
|
|
8
|
+
Project-URL: Issues, https://github.com/pipecat-ai/pipecat-cli/issues
|
|
9
|
+
Keywords: pipecat,ai,cli,voice,agents,scaffolding
|
|
10
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
11
|
+
Classifier: Intended Audience :: Developers
|
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
|
+
Classifier: Topic :: Software Development :: Code Generators
|
|
18
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
19
|
+
Classifier: Topic :: Multimedia :: Sound/Audio
|
|
20
|
+
Classifier: Topic :: Communications :: Conferencing
|
|
21
|
+
Requires-Python: >=3.10
|
|
22
|
+
Description-Content-Type: text/markdown
|
|
23
|
+
License-File: LICENSE
|
|
24
|
+
Requires-Dist: typer<1,>=0.9.0
|
|
25
|
+
Requires-Dist: rich<14,>=13.0.0
|
|
26
|
+
Requires-Dist: jinja2<4,>=3.1.0
|
|
27
|
+
Requires-Dist: questionary<3,>=2.0.0
|
|
28
|
+
Requires-Dist: ruff<1,>=0.12.1
|
|
29
|
+
Requires-Dist: pipecat-ai-tail>=0.0.1
|
|
30
|
+
Requires-Dist: pipecatcloud>=0.2.6
|
|
31
|
+
Dynamic: license-file
|
|
32
|
+
|
|
33
|
+
# Pipecat CLI
|
|
34
|
+
|
|
35
|
+
A complete toolkit for building, deploying, and monitoring [Pipecat](https://github.com/pipecat-ai/pipecat) AI voice agents.
|
|
36
|
+
|
|
37
|
+
- **Scaffold** new projects with `pipecat init`
|
|
38
|
+
- **Deploy** to production with `pipecat cloud`
|
|
39
|
+
- **Monitor** live bots with `pipecat tail`
|
|
40
|
+
|
|
41
|
+
## Requirements
|
|
42
|
+
|
|
43
|
+
- Python 3.10+
|
|
44
|
+
|
|
45
|
+
## Installation
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
uv tool install pipecat-ai-cli
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
This installs the CLI globally. If you don't have `uv`, you can also use `pipx install pipecat-ai-cli`.
|
|
52
|
+
|
|
53
|
+
> **Tip:** All commands can use either `pipecat` or the shorter `pc` alias.
|
|
54
|
+
|
|
55
|
+
## Create a New Project
|
|
56
|
+
|
|
57
|
+
Create a new Pipecat project interactively:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
pipecat init
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The CLI will guide you through selecting:
|
|
64
|
+
|
|
65
|
+
- Bot type and client framework
|
|
66
|
+
- Transport provider (Daily, Twilio, etc.)
|
|
67
|
+
- Pipeline mode (Cascade or Realtime)
|
|
68
|
+
- AI services (STT, LLM, TTS)
|
|
69
|
+
- Optional features and deployment target
|
|
70
|
+
|
|
71
|
+
**Generated Project Structure**
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
mybot/
|
|
75
|
+
├── server/ # Python bot server
|
|
76
|
+
│ ├── bot.py # Main bot implementation
|
|
77
|
+
│ ├── pyproject.toml # Python dependencies
|
|
78
|
+
│ ├── .env.example # Environment variables template
|
|
79
|
+
│ ├── Dockerfile # Container image (if cloud enabled)
|
|
80
|
+
│ └── pcc-deploy.toml # Deployment config (if cloud enabled)
|
|
81
|
+
├── client/ # Web client (if generated)
|
|
82
|
+
│ ├── src/
|
|
83
|
+
│ ├── package.json
|
|
84
|
+
│ └── ...
|
|
85
|
+
├── .gitignore
|
|
86
|
+
└── README.md # Project setup instructions
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Monitor Your Bot
|
|
90
|
+
|
|
91
|
+
Use the built-in Tail dashboard to monitor your bot in real-time:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
# Connect to local bot (default: ws://localhost:9292)
|
|
95
|
+
pipecat tail
|
|
96
|
+
|
|
97
|
+
# Connect to remote session
|
|
98
|
+
pipecat tail --url wss://your-bot.example.com
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Tail provides:
|
|
102
|
+
|
|
103
|
+
- 📜 Real-time system logs
|
|
104
|
+
- 💬 Live conversation tracking
|
|
105
|
+
- 🔊 Audio level monitoring
|
|
106
|
+
- 📈 Service metrics and usage stats
|
|
107
|
+
|
|
108
|
+
## Deploy to Pipecat Cloud
|
|
109
|
+
|
|
110
|
+
Deploy and manage your bot in production with [Pipecat Cloud](https://www.daily.co/products/pipecat-cloud/):
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Authenticate
|
|
114
|
+
pipecat cloud auth login
|
|
115
|
+
|
|
116
|
+
# Build and deploy
|
|
117
|
+
pipecat cloud docker build-push
|
|
118
|
+
pipecat cloud deploy
|
|
119
|
+
|
|
120
|
+
# Manage deployments
|
|
121
|
+
pipecat cloud agent list
|
|
122
|
+
pipecat cloud agent logs <agent-name>
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
Cloud commands provide:
|
|
126
|
+
|
|
127
|
+
- 🔐 Authentication and credential management
|
|
128
|
+
- 🐳 Docker build and registry integration
|
|
129
|
+
- 🚀 One-command deployment
|
|
130
|
+
- 📊 Agent status and log monitoring
|
|
131
|
+
- 🔧 Runtime configuration management
|
|
132
|
+
|
|
133
|
+
**Note:** When you enable "Deploy to Pipecat Cloud" during project creation, the necessary Docker and deployment config files are automatically generated.
|
|
134
|
+
|
|
135
|
+
Learn more in the [Pipecat Cloud documentation](https://docs.pipecat.ai/deployment/pipecat-cloud/introduction).
|
|
136
|
+
|
|
137
|
+
## 📚 Next steps
|
|
138
|
+
|
|
139
|
+
- See the [Pipecat documentation](https://docs.pipecat.ai) for more about building bots
|
|
140
|
+
- Learn how to extend the template using [examples & recipes](https://docs.pipecat.ai/examples)
|
|
141
|
+
- [Join our Discord](https://discord.gg/pipecat) to get help or provide feedback
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# Pipecat CLI
|
|
2
|
+
|
|
3
|
+
A complete toolkit for building, deploying, and monitoring [Pipecat](https://github.com/pipecat-ai/pipecat) AI voice agents.
|
|
4
|
+
|
|
5
|
+
- **Scaffold** new projects with `pipecat init`
|
|
6
|
+
- **Deploy** to production with `pipecat cloud`
|
|
7
|
+
- **Monitor** live bots with `pipecat tail`
|
|
8
|
+
|
|
9
|
+
## Requirements
|
|
10
|
+
|
|
11
|
+
- Python 3.10+
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
uv tool install pipecat-ai-cli
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
This installs the CLI globally. If you don't have `uv`, you can also use `pipx install pipecat-ai-cli`.
|
|
20
|
+
|
|
21
|
+
> **Tip:** All commands can use either `pipecat` or the shorter `pc` alias.
|
|
22
|
+
|
|
23
|
+
## Create a New Project
|
|
24
|
+
|
|
25
|
+
Create a new Pipecat project interactively:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pipecat init
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
The CLI will guide you through selecting:
|
|
32
|
+
|
|
33
|
+
- Bot type and client framework
|
|
34
|
+
- Transport provider (Daily, Twilio, etc.)
|
|
35
|
+
- Pipeline mode (Cascade or Realtime)
|
|
36
|
+
- AI services (STT, LLM, TTS)
|
|
37
|
+
- Optional features and deployment target
|
|
38
|
+
|
|
39
|
+
**Generated Project Structure**
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
mybot/
|
|
43
|
+
├── server/ # Python bot server
|
|
44
|
+
│ ├── bot.py # Main bot implementation
|
|
45
|
+
│ ├── pyproject.toml # Python dependencies
|
|
46
|
+
│ ├── .env.example # Environment variables template
|
|
47
|
+
│ ├── Dockerfile # Container image (if cloud enabled)
|
|
48
|
+
│ └── pcc-deploy.toml # Deployment config (if cloud enabled)
|
|
49
|
+
├── client/ # Web client (if generated)
|
|
50
|
+
│ ├── src/
|
|
51
|
+
│ ├── package.json
|
|
52
|
+
│ └── ...
|
|
53
|
+
├── .gitignore
|
|
54
|
+
└── README.md # Project setup instructions
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Monitor Your Bot
|
|
58
|
+
|
|
59
|
+
Use the built-in Tail dashboard to monitor your bot in real-time:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
# Connect to local bot (default: ws://localhost:9292)
|
|
63
|
+
pipecat tail
|
|
64
|
+
|
|
65
|
+
# Connect to remote session
|
|
66
|
+
pipecat tail --url wss://your-bot.example.com
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Tail provides:
|
|
70
|
+
|
|
71
|
+
- 📜 Real-time system logs
|
|
72
|
+
- 💬 Live conversation tracking
|
|
73
|
+
- 🔊 Audio level monitoring
|
|
74
|
+
- 📈 Service metrics and usage stats
|
|
75
|
+
|
|
76
|
+
## Deploy to Pipecat Cloud
|
|
77
|
+
|
|
78
|
+
Deploy and manage your bot in production with [Pipecat Cloud](https://www.daily.co/products/pipecat-cloud/):
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# Authenticate
|
|
82
|
+
pipecat cloud auth login
|
|
83
|
+
|
|
84
|
+
# Build and deploy
|
|
85
|
+
pipecat cloud docker build-push
|
|
86
|
+
pipecat cloud deploy
|
|
87
|
+
|
|
88
|
+
# Manage deployments
|
|
89
|
+
pipecat cloud agent list
|
|
90
|
+
pipecat cloud agent logs <agent-name>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Cloud commands provide:
|
|
94
|
+
|
|
95
|
+
- 🔐 Authentication and credential management
|
|
96
|
+
- 🐳 Docker build and registry integration
|
|
97
|
+
- 🚀 One-command deployment
|
|
98
|
+
- 📊 Agent status and log monitoring
|
|
99
|
+
- 🔧 Runtime configuration management
|
|
100
|
+
|
|
101
|
+
**Note:** When you enable "Deploy to Pipecat Cloud" during project creation, the necessary Docker and deployment config files are automatically generated.
|
|
102
|
+
|
|
103
|
+
Learn more in the [Pipecat Cloud documentation](https://docs.pipecat.ai/deployment/pipecat-cloud/introduction).
|
|
104
|
+
|
|
105
|
+
## 📚 Next steps
|
|
106
|
+
|
|
107
|
+
- See the [Pipecat documentation](https://docs.pipecat.ai) for more about building bots
|
|
108
|
+
- Learn how to extend the template using [examples & recipes](https://docs.pipecat.ai/examples)
|
|
109
|
+
- [Join our Discord](https://discord.gg/pipecat) to get help or provide feedback
|