Commands
dandori check <file.flow>...
dandori build <file.flow> --target asl|temporal|temporal-python|temporal-go|durable|argo|pydantic-graph [--out <dir>]
dandori scenarios <file.flow> [--out <dir>]
dandori run <file.flow> --scenario <file.json> [--target reference|asl|temporal|temporal-python|temporal-go|durable|argo|pydantic-graph]
dandori doc <file.flow> [--format html] [--out <dir>]
dandori explain <CODE> | --all [--format markdown|json]
dandori <command> --help
dandori --version
A workflow that uses rules, dates files or books (use rule, use dates, use book) runs as
ritsu dandori <command>, which reads them in the same process (Install); the
dandori command alone checks and builds a workflow that uses none of them.
| Command |
What it does |
check |
Checks one or more .flow files: types, every arm, every state a case can be left in, retries. Prints the diagnostics, each with the run that gets there, and ok for a file that passes. |
build |
Writes the code for one platform into --out (out/ by default), and prints each file's path. Also refuses what the platform cannot do (E050), and a workflow whose one run can outgrow the platform (E040). Build for a platform |
scenarios |
Writes scenarios (an input and the answers the calls get) that together take every arm, every handler and every way a case can move: one file each into --out, or all of them as JSON on standard output. |
run |
Plays one scenario through the reference interpreter, and prints every call as the target would make it, every wait, and how the run ends. |
doc |
Draws the workflow for the person who reviews it: the flow, what each call does and where its errors go, and every way the workflow can end. Markdown with Mermaid charts, or one HTML page (--format html) where each scenario lights up the way its run goes; into <name>.md or <name>.html in --out, else on standard output. The rules the workflow calls are put in as rulec doc renders them. It draws a workflow whose check finds errors too, and exits with 1. Draw a workflow |
explain |
Looks a diagnostic code up: when it comes, how to fix it, and the smallest .flow that gets it, with what goes beside it. --all prints every code; --format markdown prints Markdown, --format json the machine-facing JSON. Diagnostics |
Flags and environment
|
|
--target <target> |
the platform to build for, or the one whose calls run prints (reference by default) |
--out <dir> |
where build writes (out/ by default), and where scenarios and doc write |
--scenario <file.json> |
the scenario run plays |
--format json |
the diagnostics of check as JSON, for tools |
--format html |
the page doc writes, as HTML; Markdown by default |
--all, --format markdown or --format json |
every code, for explain; as Markdown, or as JSON |
--lang ja or --lang en |
the language of the messages; else DANDORI_LANG, then RITSU_LANG, else English |
--help |
what the command takes, its exit codes and examples (dandori help <command> is the same page); dandori --help lists the commands |
--version |
dandori --version prints the version |
Exit codes
| Code |
Means |
| 0 |
no errors (warnings only, or nothing) |
| 1 |
errors found |
| 2 |
bad arguments, or a file that cannot be read |