Recipe Registry CLI
The recipe registry allows you to publish, pull, and manage recipes in a centralized location.Quick Start
Commands
publish
Publish a recipe bundle or directory to the registry.| Option | Description |
|---|---|
--registry <path-or-url> | Registry path or URL (default: ~/.praisonai/registry) |
--token <token> | Authentication token for remote registry |
--force | Overwrite existing version |
--json | Output JSON format |
pull
Pull a recipe from the registry.| Option | Description |
|---|---|
--registry <path-or-url> | Registry path or URL |
--token <token> | Authentication token |
-o, --output <dir> | Output directory (default: current) |
--json | Output JSON format |
Registry Types
Local Registry
The default registry is stored at~/.praisonai/registry. No configuration required.
Custom Local Registry
Specify a custom path for the registry:HTTP Registry
Start a local HTTP registry server and connect to it:Remote HTTPS Registry
Connect to remote registries:Registry Server Commands
serve
Start a local HTTP registry server.| Option | Description |
|---|---|
--host <addr> | Host to bind to (default: 127.0.0.1) |
--port <port> | Port to bind to (default: 7777) |
--dir <path> | Registry directory (default: ~/.praisonai/registry) |
--token <token> | Require token for write operations |
--read-only | Disable all write operations |
--json | Output in JSON format |
status
Check registry server health.| Option | Description |
|---|---|
--registry <url> | Registry URL (default: http://localhost:7777) |
--json | Output in JSON format |
HTTP API Endpoints
When runningpraisonai serve registry, the following endpoints are available:
| Method | Endpoint | Description |
|---|---|---|
| GET | /healthz | Health check |
| GET | /v1/recipes | List all recipes |
| GET | /v1/recipes/{name} | Get recipe info |
| GET | /v1/recipes/{name}/{version} | Get version info |
| GET | /v1/recipes/{name}/{version}/download | Download bundle |
| POST | /v1/recipes/{name}/{version} | Publish bundle (auth required) |
| DELETE | /v1/recipes/{name}/{version} | Delete version (auth required) |
| GET | /v1/search?q=... | Search recipes |
Registry Structure
Environment Variables
| Variable | Description |
|---|---|
PRAISONAI_REGISTRY_TOKEN | Default authentication token |
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 2 | Validation error (invalid bundle) |
| 7 | Recipe not found |
Python API
Next Steps
- Run History - Store and export run history
- Security Features - SBOM, signing, auditing
- Policy Packs - Manage tool permissions

