Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

orion-server

orion-server is the runtime; run with no subcommand it starts the server. Its subcommands validate configuration, run migrations, check and format definition sets offline, execute workflows with no server, and promote packages. The global -c, --config <path> flag applies to every one of them.

CommandPurpose
Start the serverRun the server itself, with -c naming the config file
validate-configValidates the configuration without starting the server, then prints the full effective config with secrets masked
migrateRuns database migrations against the configured storage.url without starting the server
lintStatically validates a workflow JSON file with the same checks the admin POST /workflows endpoint runs
compileCompiles a definition set into files the admin API accepts, resolving the authoring conveniences a set may use — $from for a shared value, use for a task fragment
fmtFormats definition files to the house style, the way cargo fmt formats Rust
clippyAdvisory checks beyond lint, said only when certain — the cargo clippy to lint’s cargo check
dry-runExecutes a workflow against a JSON input in an in-process engine, then prints the per-task execution trace
testRuns a directory of offline workflow test cases
test-connectivityProbes the configured database with a no-op query, and Kafka when kafka.enabled = true
preflightScans stored channels and workflows for anything the 1.0 rules refuse: configs that no longer parse, tasks the validator rejects, and data_query/data_write tasks with no schema
dump-openapiPrints the public HTTP API’s OpenAPI 3.1 spec as JSON to stdout
packageExports a package — selected channels, their workflows, and every connector those workflows reference, and promotes it between instances

Last verified 14 September 2026