pipecatcloud 0.2.9__tar.gz → 0.2.11__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.
Files changed (55) hide show
  1. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/.github/workflows/publish-pypi.yml +2 -0
  2. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/CHANGELOG.md +18 -0
  3. {pipecatcloud-0.2.9/src/pipecatcloud.egg-info → pipecatcloud-0.2.11}/PKG-INFO +3 -3
  4. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/pyproject.toml +2 -2
  5. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/api.py +15 -5
  6. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/agent.py +14 -8
  7. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/entry_point.py +2 -8
  8. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11/src/pipecatcloud.egg-info}/PKG-INFO +3 -3
  9. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud.egg-info/SOURCES.txt +1 -3
  10. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud.egg-info/requires.txt +2 -2
  11. pipecatcloud-0.2.11/uv.lock +2212 -0
  12. pipecatcloud-0.2.9/src/pipecatcloud/_utils/local_runner.py +0 -35
  13. pipecatcloud-0.2.9/src/pipecatcloud/cli/commands/init.py +0 -142
  14. pipecatcloud-0.2.9/src/pipecatcloud/cli/commands/run.py +0 -36
  15. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/.github/workflows/publish-test.yml +0 -0
  16. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/.github/workflows/tests.yml +0 -0
  17. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/.gitignore +0 -0
  18. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/LICENSE +0 -0
  19. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/README.md +0 -0
  20. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/pipecat-cloud.png +0 -0
  21. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/pytest.ini +0 -0
  22. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/setup.cfg +0 -0
  23. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/__init__.py +0 -0
  24. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/__main__.py +0 -0
  25. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/__version__.py +0 -0
  26. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/_utils/__init__.py +0 -0
  27. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/_utils/async_utils.py +0 -0
  28. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/_utils/auth_utils.py +0 -0
  29. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/_utils/console_utils.py +0 -0
  30. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/_utils/deploy_utils.py +0 -0
  31. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/agent.py +0 -0
  32. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/__init__.py +0 -0
  33. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/api.py +0 -0
  34. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/__init__.py +0 -0
  35. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/auth.py +0 -0
  36. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/deploy.py +0 -0
  37. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/docker.py +0 -0
  38. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/organizations.py +0 -0
  39. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/commands/secrets.py +0 -0
  40. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/cli/config.py +0 -0
  41. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/config.py +0 -0
  42. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/constants.py +0 -0
  43. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/exception.py +0 -0
  44. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/py.typed +0 -0
  45. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/session.py +0 -0
  46. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud/smallwebrtc/session_manager.py +0 -0
  47. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud.egg-info/dependency_links.txt +0 -0
  48. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud.egg-info/entry_points.txt +0 -0
  49. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/src/pipecatcloud.egg-info/top_level.txt +0 -0
  50. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/tests/__init__.py +0 -0
  51. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/tests/test_agent_sessions.py +0 -0
  52. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/tests/test_agent_stop.py +0 -0
  53. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/tests/test_docker_commands.py +0 -0
  54. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/tests/test_krisp_viva.py +0 -0
  55. {pipecatcloud-0.2.9 → pipecatcloud-0.2.11}/tests/test_managed_keys.py +0 -0
@@ -27,6 +27,8 @@ jobs:
27
27
  - name: Install development dependencies
28
28
  run: uv sync --group dev
29
29
  - name: Build project
30
+ env:
31
+ SETUPTOOLS_SCM_PRETEND_VERSION: ${{ github.event.inputs.gitref }}
30
32
  run: uv build
31
33
  - name: Upload wheels
32
34
  uses: actions/upload-artifact@v4
@@ -5,6 +5,24 @@ All notable changes to **Pipecat Cloud** will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.2.11] - 2025-11-12
9
+
10
+ ### Added
11
+
12
+ - Added an option to retrieve logs by session ID using `--session-id` / `-s`
13
+ with the `agent logs` command.
14
+
15
+ ### Changed
16
+
17
+ - Bumped the `fastapi` dependency's upperbound to `<1.0.0`.
18
+
19
+ ## [0.2.10] - 2025-10-25
20
+
21
+ ### Removed
22
+
23
+ - The `init` command was removed. Use the `pipecat-ai-cli`'s `init` command to
24
+ scaffold your project.
25
+
8
26
  ## [0.2.9] - 2025-10-24
9
27
 
10
28
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pipecatcloud
3
- Version: 0.2.9
3
+ Version: 0.2.11
4
4
  Summary: Cloud hosting for Pipecat AI applications
5
5
  License: BSD 2-Clause License
6
6
  Project-URL: Website, https://docs.pipecat.daily.co/
@@ -9,11 +9,11 @@ Requires-Python: >=3.10
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: aiohttp<4.0.0,>=3.11.12
12
- Requires-Dist: fastapi<0.117.0,>=0.115.6
12
+ Requires-Dist: fastapi<1.0.0,>=0.115.6
13
13
  Requires-Dist: loguru~=0.7.3
14
14
  Requires-Dist: python-dotenv<2.0.0,>=1.0.1
15
15
  Requires-Dist: uvicorn<1.0.0,>=0.32.0
16
- Requires-Dist: typer<0.17.0,>=0.15.3
16
+ Requires-Dist: typer<1,>=0.20.0
17
17
  Requires-Dist: synchronicity~=0.7.6
18
18
  Requires-Dist: toml~=0.10.2
19
19
  Requires-Dist: questionary~=2.1.0
@@ -12,11 +12,11 @@ readme = "README.md"
12
12
  keywords = ["pipecat", "pipecat-ai", "voice", "ai", "llm"]
13
13
  dependencies = [
14
14
  "aiohttp>=3.11.12,<4.0.0",
15
- "fastapi>=0.115.6,<0.117.0",
15
+ "fastapi>=0.115.6,<1.0.0",
16
16
  "loguru~=0.7.3",
17
17
  "python-dotenv>=1.0.1,<2.0.0",
18
18
  "uvicorn>=0.32.0,<1.0.0",
19
- "typer>=0.15.3,<0.17.0",
19
+ "typer>=0.20.0,<1",
20
20
  "synchronicity~=0.7.6",
21
21
  "toml~=0.10.2",
22
22
  "questionary~=2.1.0"
@@ -86,8 +86,8 @@ class _API:
86
86
  # Fallback structure matching API format
87
87
  self.error = {
88
88
  "error": response.reason or "Bad Request",
89
- "code": str(
90
- response.status)}
89
+ "code": str(response.status),
90
+ }
91
91
  response.raise_for_status()
92
92
 
93
93
  return await response.json()
@@ -422,12 +422,20 @@ class _API:
422
422
  def agent_delete(self):
423
423
  return self.create_api_method(self._agent_delete)
424
424
 
425
- async def _agent_logs(self, agent_name: str, org: str, limit: int = 100,
426
- deployment_id: Optional[str] = None) -> dict | None:
425
+ async def _agent_logs(
426
+ self,
427
+ agent_name: str,
428
+ org: str,
429
+ limit: int = 100,
430
+ deployment_id: Optional[str] = None,
431
+ session_id: Optional[str] = None,
432
+ ) -> dict | None:
427
433
  url = f"{self.construct_api_url('services_logs_path').format(org=org, service=agent_name)}"
428
434
  params: dict[str, Union[int, str]] = {"limit": limit}
429
435
  if deployment_id:
430
436
  params["deploymentId"] = deployment_id
437
+ if session_id:
438
+ params["sessionId"] = session_id
431
439
  return await self._base_request("GET", url, params=params)
432
440
 
433
441
  @property
@@ -442,7 +450,9 @@ class _API:
442
450
  def agent_sessions(self):
443
451
  return self.create_api_method(self._agent_sessions)
444
452
 
445
- async def _agent_session_terminate(self, agent_name: str, session_id: str, org: str) -> dict | None:
453
+ async def _agent_session_terminate(
454
+ self, agent_name: str, session_id: str, org: str
455
+ ) -> dict | None:
446
456
  url = f"{self.construct_api_url('services_sessions_path').format(org=org, service=agent_name)}/{session_id}"
447
457
  return await self._base_request("DELETE", url, not_found_is_empty=True)
448
458
 
@@ -440,17 +440,26 @@ async def logs(
440
440
  deployment_id: str = typer.Option(
441
441
  None, "--deployment", "-d", help="Filter logs by deployment ID"
442
442
  ),
443
+ session_id: str = typer.Option(None, "--session-id", "-s", help="Filter logs by session ID"),
443
444
  ):
444
445
  org = organization or config.get("org")
445
446
 
446
- status_text = "agent" if not deployment_id else f"deployment ({deployment_id})"
447
+ status_text = "agent"
448
+ if deployment_id:
449
+ status_text = f"deployment ({deployment_id})"
450
+ if session_id:
451
+ status_text = f"session ({session_id})"
447
452
 
448
453
  with console.status(
449
454
  f"[dim]Fetching logs for {status_text}: [bold]'{agent_name}'[/bold] with severity: [bold cyan]{level.value if level else 'ALL'}[/bold cyan][/dim]",
450
455
  spinner="dots",
451
456
  ):
452
457
  data, error = await API.agent_logs(
453
- agent_name=agent_name, org=org, limit=limit, deployment_id=deployment_id
458
+ agent_name=agent_name,
459
+ org=org,
460
+ limit=limit,
461
+ deployment_id=deployment_id,
462
+ session_id=session_id,
454
463
  )
455
464
 
456
465
  if not data or not data.get("logs"):
@@ -786,16 +795,13 @@ async def stop(
786
795
  if not force:
787
796
  console.print(
788
797
  Panel(
789
- f"Agent Name: {agent_name}\n"
790
- f"Session ID: {session_id}",
791
- title=f"[bold]Stop Session[/bold]",
798
+ f"Agent Name: {agent_name}\nSession ID: {session_id}",
799
+ title="[bold]Stop Session[/bold]",
792
800
  title_align="left",
793
801
  border_style="yellow",
794
802
  )
795
803
  )
796
- if not await questionary.confirm(
797
- "Are you sure you want to stop this session?"
798
- ).ask_async():
804
+ if not await questionary.confirm("Are you sure you want to stop this session?").ask_async():
799
805
  console.print("[bold]Aborting stop request[/bold]")
800
806
  return typer.Exit(1)
801
807
 
@@ -14,9 +14,7 @@ from pipecatcloud.cli.commands.agent import agent_cli
14
14
  from pipecatcloud.cli.commands.auth import auth_cli
15
15
  from pipecatcloud.cli.commands.deploy import create_deploy_command
16
16
  from pipecatcloud.cli.commands.docker import create_docker_command
17
- from pipecatcloud.cli.commands.init import create_init_command
18
17
  from pipecatcloud.cli.commands.organizations import organization_cli
19
- from pipecatcloud.cli.commands.run import create_run_command
20
18
  from pipecatcloud.cli.commands.secrets import secrets_cli
21
19
  from pipecatcloud.cli.config import config
22
20
  from pipecatcloud.exception import ConfigFileError
@@ -62,10 +60,8 @@ entrypoint_cli_typer = typer.Typer(
62
60
  no_args_is_help=True,
63
61
  add_completion=False,
64
62
  rich_markup_mode="markdown",
65
- help="""
66
- ᓚᘏᗢ Pipecat Cloud CLI
67
- See website at https://pipecat.daily.co
68
- """,
63
+ short_help="Deploy and manage bots on Pipecat Cloud",
64
+ help="ᓚᘏᗢ Pipecat Cloud CLI. See website at https://pipecat.daily.co",
69
65
  )
70
66
 
71
67
 
@@ -78,8 +74,6 @@ def cli(
78
74
  pass
79
75
 
80
76
 
81
- create_run_command(entrypoint_cli_typer)
82
- create_init_command(entrypoint_cli_typer)
83
77
  create_deploy_command(entrypoint_cli_typer)
84
78
  create_docker_command(entrypoint_cli_typer)
85
79
  entrypoint_cli_typer.add_typer(auth_cli, rich_help_panel="Commands")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pipecatcloud
3
- Version: 0.2.9
3
+ Version: 0.2.11
4
4
  Summary: Cloud hosting for Pipecat AI applications
5
5
  License: BSD 2-Clause License
6
6
  Project-URL: Website, https://docs.pipecat.daily.co/
@@ -9,11 +9,11 @@ Requires-Python: >=3.10
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: aiohttp<4.0.0,>=3.11.12
12
- Requires-Dist: fastapi<0.117.0,>=0.115.6
12
+ Requires-Dist: fastapi<1.0.0,>=0.115.6
13
13
  Requires-Dist: loguru~=0.7.3
14
14
  Requires-Dist: python-dotenv<2.0.0,>=1.0.1
15
15
  Requires-Dist: uvicorn<1.0.0,>=0.32.0
16
- Requires-Dist: typer<0.17.0,>=0.15.3
16
+ Requires-Dist: typer<1,>=0.20.0
17
17
  Requires-Dist: synchronicity~=0.7.6
18
18
  Requires-Dist: toml~=0.10.2
19
19
  Requires-Dist: questionary~=2.1.0
@@ -5,6 +5,7 @@ README.md
5
5
  pipecat-cloud.png
6
6
  pyproject.toml
7
7
  pytest.ini
8
+ uv.lock
8
9
  .github/workflows/publish-pypi.yml
9
10
  .github/workflows/publish-test.yml
10
11
  .github/workflows/tests.yml
@@ -29,7 +30,6 @@ src/pipecatcloud/_utils/async_utils.py
29
30
  src/pipecatcloud/_utils/auth_utils.py
30
31
  src/pipecatcloud/_utils/console_utils.py
31
32
  src/pipecatcloud/_utils/deploy_utils.py
32
- src/pipecatcloud/_utils/local_runner.py
33
33
  src/pipecatcloud/cli/__init__.py
34
34
  src/pipecatcloud/cli/api.py
35
35
  src/pipecatcloud/cli/config.py
@@ -39,9 +39,7 @@ src/pipecatcloud/cli/commands/agent.py
39
39
  src/pipecatcloud/cli/commands/auth.py
40
40
  src/pipecatcloud/cli/commands/deploy.py
41
41
  src/pipecatcloud/cli/commands/docker.py
42
- src/pipecatcloud/cli/commands/init.py
43
42
  src/pipecatcloud/cli/commands/organizations.py
44
- src/pipecatcloud/cli/commands/run.py
45
43
  src/pipecatcloud/cli/commands/secrets.py
46
44
  src/pipecatcloud/smallwebrtc/session_manager.py
47
45
  tests/__init__.py
@@ -1,9 +1,9 @@
1
1
  aiohttp<4.0.0,>=3.11.12
2
- fastapi<0.117.0,>=0.115.6
2
+ fastapi<1.0.0,>=0.115.6
3
3
  loguru~=0.7.3
4
4
  python-dotenv<2.0.0,>=1.0.1
5
5
  uvicorn<1.0.0,>=0.32.0
6
- typer<0.17.0,>=0.15.3
6
+ typer<1,>=0.20.0
7
7
  synchronicity~=0.7.6
8
8
  toml~=0.10.2
9
9
  questionary~=2.1.0