Quick Start
Commands
Run Examples
Execute examples sequentially with live output streaming and report generation.| Option | Short | Description | Default |
|---|---|---|---|
--path | -p | Path to examples directory | ./examples |
--include | -i | Include patterns (glob), repeatable | All .py files |
--exclude | -e | Exclude patterns (glob), repeatable | None |
--timeout | -t | Per-example timeout in seconds | 60 |
--fail-fast | -x | Stop on first failure | false |
--no-stream | Don’t stream output to terminal | false | |
--report-dir | -r | Directory for reports | ./reports/examples/<timestamp> |
--no-json | Skip JSON report generation | false | |
--no-md | Skip Markdown report generation | false | |
--require-env | Required env vars (skip all if missing) | None | |
--quiet | -q | Minimal output | false |
List Examples
Discover and list examples without executing them.| Option | Short | Description |
|---|---|---|
--path | -p | Path to examples directory |
--include | -i | Include patterns (glob) |
--exclude | -e | Exclude patterns (glob) |
--metadata | -m | Show parsed metadata for each example |
Show Example Info
Display detailed metadata for a specific example.Example Metadata Directives
Control example behavior using comment directives in the first 30 lines of your example files:Available Directives
| Directive | Description | Example |
|---|---|---|
skip=true | Skip this example | # praisonai: skip=true |
timeout=N | Override timeout (seconds) | # praisonai: timeout=300 |
require_env=KEY1,KEY2 | Required environment variables | # praisonai: require_env=OPENAI_API_KEY |
xfail=reason | Expected failure (won’t count as failure) | # praisonai: xfail=known_issue |
Auto-Detection
The runner automatically detects and skips:- Interactive examples: Files containing
input()calls - Private files: Files starting with
_or__ - Cache directories:
__pycache__,.pytest_cache, etc. - Virtual environments:
venv,.venv,env,.env
Reports
Report Directory Structure
JSON Report Schema
Markdown Report
The Markdown report includes:- Run metadata (timestamp, platform, versions)
- Summary table with pass/fail/skip counts
- Results table with status and duration
- Detailed failure section with error summaries
Exit Codes
| Code | Meaning |
|---|---|
0 | All examples passed (or only skipped) |
1 | One or more examples failed or timed out |
2 | Discovery or configuration error |
CI/CD Integration
GitHub Actions
GitLab CI
Best Practices
- Use metadata directives to document example requirements
- Set appropriate timeouts for long-running examples
- Use
require_envto skip examples when API keys are missing - Mark flaky tests with
xfailto prevent CI failures - Run with
--fail-fastin CI for faster feedback - Archive reports for debugging failed runs

