praisonai CLI reads defaults from a layered hierarchy so you can set a model once and have it work everywhere — globally, per project, or per command.
praisonai command in that project picks it up without repeating flags.
Quick Start
1
Set a default model
2
Run any agent
--model flag needed.3
Inspect what was resolved
praisonai run, CLI defaults flow into the agent automatically:
How It Works
Layers are deep-merged. Lists are concatenated. Scalars are overridden by higher layers.Project vs Global Config
Walk-up discovery searches, at each directory from
cwd up to the git root:
.praisonai/config.yaml.praisonai/config.ymlpraison.yamlpraison.yml.praison/config.toml(legacy)
Choose Your Scope
Configuration Schema
agent.* defaults
api_key is never serialised to YAML — use environment variables or praisonai auth.mcp.servers.<name>
permissions.*
Example combining all three sections:
output, traces, session) are also valid — see Config CLI reference.
Validation
Configuration is validated against a published JSON Schema. Unknown keys produce actionable warnings with typo suggestions; opt into strict mode to fail fast.
Typo example:
# yaml-language-server: $schema=... line written by praisonai init enables real-time autocomplete and inline errors in VS Code (YAML extension) and other LSP-aware editors against the published schema.
Environment Variables
Subcommand Reference
Backward Compatibility
Legacy ~/.praison/config.toml
Legacy ~/.praison/config.toml
Still read on startup if no YAML config exists. RAG and model keys are migrated to the new
agent.* / rag.* schema automatically.Legacy ~/.praisonai/.env
Legacy ~/.praisonai/.env
Model and provider keys from
.env are merged into the resolved config when no YAML is present.Project .praison/config.toml
Project .praison/config.toml
Walk-up discovery still finds legacy TOML project configs and migrates them on read.
Best Practices
Pin model per project
Pin model per project
Commit
.praisonai/config.yaml to your repo so teammates get the same defaults.Keep secrets out of YAML
Keep secrets out of YAML
api_key is never serialised; use env vars or praisonai auth.Use config sources to debug
Use config sources to debug
When behaviour surprises you,
praisonai config sources prints exactly which layer won.Walk-up means subdirectories inherit
Walk-up means subdirectories inherit
Running
praisonai from repo/scripts/ finds repo/.praisonai/config.yaml.Interpolation & Provenance
Any config value can reference${VAR}, {env:NAME:-default}, or {file:./relative/path} — see Value Interpolation for the directive table and its security rules.
Run praisonai config provenance to see the winning value of each key and the exact layer/file that supplied it — see provenance.
Related
Config CLI Reference
Full subcommand reference for
praisonai configConfiguration Index
SDK-level agents, tasks, and memory configuration
Runtime Selection
Model-scoped runtime configuration
LLM Endpoint Config
Custom base URLs and provider routing
Single-Source Config
Model + MCP + permissions in one file

