capsule CLI is installed with the cpsl package.
In day-to-day use, most people end up living in a pretty small subset of commands:
capsule createcapsule logincapsule servecapsule deploycapsule secretcapsule fs
Worked workflow
This is a realistic day-to-day loop for a real app:- project creation from a production-shaped template
- app-owned secrets
- local development
- hosted deployment
Top-level commands
createloginappchanneldeploysecretservefs
capsule create
Use create to scaffold a production-shaped app from a template.
quickstartmedia-studiobrowser-agentbackground-agent
uv sync, capsule secret create, capsule serve, and capsule deploy steps for the chosen template.
capsule login
Use login to connect your local machine to a Capsule workspace:
--host--port--http-port
capsule serve
serve is the local development loop. It uploads the project, boots the runtime, and hot-reloads as you edit:
--channel <name>bind one or more named channels during local serve--force-channelunbind or rebind existing channel bindings
file.py:symbol.
For example, capsule serve app.py:app means “load the symbol app from app.py”.
capsule deploy
When the app looks good locally, deploy promotes that same definition to a hosted version:
serve is the local development loop, deploy is the same app definition promoted to a hosted version.
capsule app
Manage workspace apps.
If you mostly work from code, you may not use this group every day. It becomes handy when you need to inspect what already exists in the workspace.
capsule app create
capsule app list
capsule app get
capsule channel
Use channel to manage named external channel resources that apps can bind to.
Common commands
telegramslackwhatsapp
capsule secret
Use secret for app-owned credentials such as model keys, OAuth client secrets, and service tokens.
Common commands
capsule fs
Use fs to manage named filesystems that apps can mount at runtime.