Skip to main content

PortWorld CLI for setup, self-hosting, and managed deploy workflows

Project description

PortWorld CLI

Command-line interface for bootstrapping, validating, and deploying PortWorld — the open-source runtime for voice-and-vision AI assistants.

Install

Recommended (with uv):

uv tool install portworld

With pipx:

pipx install portworld

Bootstrap installer (installs uv, Python 3.11+, and Node.js tooling if missing):

curl -fsSL --proto '=https' --tlsv1.2 https://raw.githubusercontent.com/portworld/PortWorld/main/install.sh | bash

Agent skill (Cursor, Codex, others)

Install the portworld-cli-autopilot skill so agents get consistent bootstrap and operator commands (Agent Skills format):

npx skills add portworld/PortWorld --skill portworld-cli-autopilot -a cursor -a codex -y

Direct install of the skill folder only:

npx skills add https://github.com/portworld/PortWorld/tree/main/skills/portworld-cli-autopilot -y

See skills/README.md for --list, -g (global), and telemetry options.

Requirements

  • macOS or Linux
  • Python 3.11+
  • Docker for local published-workspace runs

Quickstart

Initialize a local workspace, configure providers, and start the backend:

portworld init

Validate and inspect:

portworld doctor --target local
portworld status

portworld init supports two setup modes:

  • quickstart — guided onboarding with beginner-friendly defaults
  • manual — guided onboarding with advanced choices like local source runtime

Force either mode with --setup-mode quickstart or --setup-mode manual.

Commands

Command Description
portworld init Run the onboarding wizard, write config, and execute the selected local or managed path
portworld doctor Validate local or managed deployment readiness
portworld deploy Deploy to a managed cloud target
portworld status Inspect workspace and deploy state
portworld logs Read managed deployment logs
portworld config Inspect or edit project configuration
portworld providers Browse supported realtime, vision, search, and cloud providers
portworld extensions Manage extension manifests and install state
portworld update cli Show the recommended CLI upgrade command
portworld update deploy Redeploy the active managed target
portworld ops Lower-level operator tasks (see below)

Operator Tasks

portworld ops check-config                   # validate local config
portworld ops check-config --full-readiness  # full preflight with provider validation
portworld ops bootstrap-storage              # initialize storage
portworld ops export-memory --output /tmp/portworld-memory-export.zip

Deploy Workflows

Supported managed targets: GCP Cloud Run, AWS ECS/Fargate, Azure Container Apps.

Readiness Check

portworld doctor --target gcp-cloud-run    --gcp-project <project> --gcp-region <region>
portworld doctor --target aws-ecs-fargate  --aws-region <region>
portworld doctor --target azure-container-apps --azure-subscription <sub> --azure-resource-group <rg> --azure-region <region>

Deploy

portworld deploy gcp-cloud-run   --project <project> --region <region>
portworld deploy aws-ecs-fargate --region <region>
portworld deploy azure-container-apps --subscription <sub> --resource-group <rg> --region <region>

Logs

portworld logs gcp-cloud-run       --since 24h --limit 50
portworld logs aws-ecs-fargate     --since 24h --limit 50
portworld logs azure-container-apps --since 24h --limit 50

Redeploy

portworld update deploy
portworld update deploy --tag <image-tag>

Source Checkout

Use a repo checkout when developing PortWorld itself:

git clone https://github.com/portworld/PortWorld.git
cd PortWorld
pipx install . --force
portworld init

Updating

Upgrade the CLI:

uv tool upgrade portworld

Install a pinned version:

uv tool install "portworld==<version>"

Upgrade via the bootstrap installer:

curl -fsSL --proto '=https' --tlsv1.2 https://raw.githubusercontent.com/portworld/PortWorld/main/install.sh | bash -s -- --version v<version>

Production Caution

Managed cloud workflows are supported, but some infrastructure defaults favor quick bring-up over locked-down security:

  • AWS: one-click deploy provisions RDS with public accessibility and broad ingress
  • Azure: one-click deploy provisions PostgreSQL with public access

Review and harden these defaults before exposing a deployment to the public internet.

Links

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

portworld-0.2.2.tar.gz (182.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

portworld-0.2.2-py3-none-any.whl (244.3 kB view details)

Uploaded Python 3

File details

Details for the file portworld-0.2.2.tar.gz.

File metadata

  • Download URL: portworld-0.2.2.tar.gz
  • Upload date:
  • Size: 182.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for portworld-0.2.2.tar.gz
Algorithm Hash digest
SHA256 2cce1d01062fa9e6bdb097f3b99072121f26a5ed6b9b66e60b8879fe19662135
MD5 08bed7dd4f2996b622aaa8973b8d1984
BLAKE2b-256 0804a6d2d776db5e1f9e846e900d568b6f19851fb4ac1ab9e6263d6f8b020c5e

See more details on using hashes here.

Provenance

The following attestation bundles were made for portworld-0.2.2.tar.gz:

Publisher: cli-release.yml on portworld/PortWorld

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file portworld-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: portworld-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 244.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for portworld-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e229a74b2c11c0f1e25a2bd52f6b6dedf3eee4e14318f8e7404103dfecac7dd6
MD5 28b5c16e08730edc34141e995e8d20ac
BLAKE2b-256 96ae08d6821cb9fcf50c56d9b14007d768fcf5dbc003f135ece61248c68d4970

See more details on using hashes here.

Provenance

The following attestation bundles were made for portworld-0.2.2-py3-none-any.whl:

Publisher: cli-release.yml on portworld/PortWorld

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page