CLI Reference
Complete command-line reference for all prompd CLI implementations. Commands are consistent across Python, Go, and Node.js.
Global Options
Section titled “Global Options”| Option | Description |
|---|---|
--version | Show version number |
--help | Show help message |
--verbose, -v | Enable verbose logging |
--quiet, -q | Suppress all output except errors |
Commands
Section titled “Commands”prompd init
Section titled “prompd init”Initialize a folder with example.prmd and manifest.json.
prompd init <path>Examples:
prompd init .prompd init ./my-projectprompd compile
Section titled “prompd compile”Compile a .prmd file with parameters and return the compiled prompt text.
prompd compile <file> [options]| Option | Description |
|---|---|
--to-markdown | Compile to markdown format |
--to-openai-json | Compile to OpenAI JSON format |
--to-anthropic-json | Compile to Anthropic JSON format |
--output, -o | Output file path |
--param, -p | Set parameter values (repeatable) |
--param-file | Load parameters from JSON file |
Examples:
# Compile with parametersprompd compile prompt.prmd -p name=Alice -p style=formal
# Load parameters from fileprompd compile prompt.prmd --param-file params.json
# Save compiled outputprompd compile prompt.prmd -p name=Bob -o rendered.txt
# Combine command line and file parametersprompd compile prompt.prmd --param-file params.json -p override=valueprompd run
Section titled “prompd run”Run a .prmd file with an LLM provider.
prompd run <file> --provider <provider> --model <model> [options]| Option | Description |
|---|---|
--provider | LLM provider (openai, anthropic, ollama) |
--model | Model name (gpt-4, claude-3-opus, etc.) |
-p, --param | Set parameter value (key=value, repeatable) |
-f, --param-file | Load parameters from JSON file |
--api-key | Override API key for provider |
-o, --output | Save response to file |
--version | Execute a specific version |
--stream | Enable streaming output |
Examples:
# Basic executionprompd run prompt.prmd --provider openai --model gpt-4
# With parametersprompd run prompt.prmd --provider openai --model gpt-4 \ -p language=Python \ -p style=detailed
# With parameter fileprompd run prompt.prmd --provider anthropic --model claude-3-opus \ -f params.json
# Execute a specific versionprompd run prompt.prmd --provider openai --model gpt-4 \ --version 1.2.3 -p name=Alice
# Pass array parameters (JSON syntax)prompd run prompt.prmd --provider openai --model gpt-4 \ -p tags='["api","backend","nodejs"]'
# Pass object parameters (JSON syntax)prompd run prompt.prmd --provider openai --model gpt-4 \ -p user='{"name":"Alice","role":"admin"}'prompd validate
Section titled “prompd validate”Validate a .prmd file’s syntax and structure.
prompd validate <file> [options]| Option | Description |
|---|---|
-v, --verbose | Show detailed validation results |
--git | Include git history consistency checks |
--version-only | Only validate version-related aspects |
--check-overrides | Validate section overrides against parent |
Validation checks include:
- YAML syntax validity
- Required fields presence
- Name format (kebab-case)
- Version format (semantic)
- Parameter definitions
- Variable references
- Type consistency
- Section override validation (with
--check-overrides)
prompd show
Section titled “prompd show”Display the structure and parameters of a .prmd file.
prompd show <file> [options]| Option | Description |
|---|---|
--sections | Show available section IDs for override |
--verbose | Show detailed section information |
# Show sections available for overrideprompd show template.prmd --sectionsprompd pack
Section titled “prompd pack”Shortcut for prompd package create. Creates a .pdpkg package from a directory.
prompd pack <source-directory> [output-file]| Option | Description |
|---|---|
-n, --name | Package name (overrides manifest.json) |
-V, --version | Package version (overrides manifest.json) |
-d, --description | Package description |
-a, --author | Package author |
Examples:
prompd pack . my-package.pdpkgprompd pack ./my-projectprompd pack . my-package.pdpkg \ --name "@myorg/toolkit" \ --version "1.0.0"prompd package
Section titled “prompd package”Manage package creation and validation.
prompd package <command> [options]Subcommands:
create- Create a new packagevalidate- Validate package structureinfo- Show package information
prompd login
Section titled “prompd login”Authenticate with the prompd registry.
prompd loginOpens browser for authentication flow with the registry.
prompd publish
Section titled “prompd publish”Publish a package to the registry.
prompd publish <package-file>prompd install
Section titled “prompd install”Install a package from the registry.
prompd install <package-name>[@version]
# Install all dependencies from manifest.jsonprompd install
# Install specific versionprompd install @prompd.io/package-name@1.0.0
# Install as dev dependencyprompd install @prompd.io/package-name --dev
# Install globallyprompd install @prompd.io/package-name --globalprompd search
Section titled “prompd search”Search for packages in the registry.
prompd search <query>prompd list
Section titled “prompd list”List installed packages or available .prmd files.
prompd list [options]| Option | Description |
|---|---|
--global | List global packages |
--json | Output in JSON format |
-p, --path | Directory to search |
-d, --detailed | Show detailed information |
prompd uninstall
Section titled “prompd uninstall”Uninstall a package.
prompd uninstall <package-name>prompd git
Section titled “prompd git”Git operations for .prmd files.
prompd git add <files...> # Add to stagingprompd git remove <files...> # Remove from trackingprompd git status # Show statusprompd git commit -m <message> # Commit staged filesprompd git checkout <file> <ver> # Checkout specific versionprompd version
Section titled “prompd version”Manage semantic versions with git integration.
prompd version bump <file> <type> # Bump version (major/minor/patch)prompd version history <file> # Show version historyprompd version diff <file> <v1> [v2] # Compare versionsprompd version validate <file> # Validate version consistencyprompd version suggest <file> # Get bump suggestionsprompd config
Section titled “prompd config”Configuration management.
prompd config show # Show all settingsprompd config provider list # List providersprompd config provider add <name> <url> <models...> # Add providerprompd config provider show <name> # Show provider detailsprompd config provider remove <name> # Remove providerprompd config provider setkey <name> <key> # Set API keyprompd config registry list # List registriesprompd config registry add <name> <url> # Add registryprompd config registry remove <name> # Remove registryprompd config registry set-default <name> # Set default registryConfiguration
Section titled “Configuration”Environment Variables
Section titled “Environment Variables”# API Keysexport OPENAI_API_KEY="sk-..."export ANTHROPIC_API_KEY="sk-ant-..."export OLLAMA_HOST="http://localhost:11434"
# Defaultsexport PROMPD_DEFAULT_PROVIDER="openai"export PROMPD_DEFAULT_MODEL="gpt-4"Configuration File
Section titled “Configuration File”Create ~/.prompd/config.yaml:
default_provider: openaidefault_model: gpt-4timeout: 30max_retries: 3verbose: falseapi_keys: openai: sk-... anthropic: sk-ant-...registry: default: prompdhub registries: prompdhub: url: https://registry.prompdhub.aiParameter Precedence
Section titled “Parameter Precedence”Parameters are resolved in this order (highest to lowest priority):
- Command-line parameters (
-p key=value) - Parameter files (
-f file.json) - Default values in
.prmdfile - Environment variables
Exit Codes
Section titled “Exit Codes”| Code | Meaning |
|---|---|
0 | Success |
1 | General error |
2 | Validation error |
3 | Provider error |
4 | Configuration error |
5 | File not found |
Complete Workflow Example
Section titled “Complete Workflow Example”# 1. Initializeprompd init .
# 2. Validateprompd validate example.prmd
# 3. Compileprompd compile example.prmd --to-markdown
# 4. Run with providerprompd run example.prmd \ --provider openai --model gpt-4o \ --param text="Great product!"
# 5. Packageprompd package create . sentiment-analyzer.pdpkg
# 6. Publishprompd loginprompd publish sentiment-analyzer.pdpkgTroubleshooting
Section titled “Troubleshooting”Common Issues
Section titled “Common Issues”“Missing required field ‘name’” - The .prmd file must have a name field in the YAML frontmatter.
“Undefined variable ‘X’ referenced” - All variables used in content must be defined in the parameters section.
“Provider error: No API key” - Set the API key via environment variable or config file.
“Invalid semantic version” - Version must follow format: major.minor.patch (e.g., 1.2.3)
Debug Mode
Section titled “Debug Mode”prompd run prompt.prmd --provider openai --model gpt-4 -v