Skip to content

Command reference

Your project runs these commands with make. The stewart commands below run inside the container: make sh, then stewart …, or docker compose exec stewart stewart … while Stewart runs in the background.

Command What it does
make help Show this help
make setup First run: pull the images, create .env, install dependencies, verify
make pull Pull the runtime images
make env Create .env from .env.example with a fresh control token, unless it exists
make install composer install
make update composer update
make upgrade Move to another Stewart release line, then pull its images and install it [VERSION=2.0]
make sh Shell in the development container
make doctor Check the container can run Stewart
make generate Write typed entity and service classes from Home Assistant into generated/ [ARGS=–allow-shrink]
make run Run in the foreground [ONLY=“hello porch” to run only those apps, DRY_RUN=1 to send no service calls]
make debug Run in the foreground with Xdebug
make config Show the effective config, secrets masked
make config-reference Show every supported config option
make test Run the tests
make stan Static analysis
make up Start the daemon in the background
make down Stop everything
make deploy Pull the latest commit and restart; changed dependencies are installed on start
make logs Follow the daemon logs
make status One-shot status of the running daemon

Pause one app: it stays loaded but skips deliveries and schedules until resumed

stewart app:pause [options] [--] <app>
Argument Meaning
app The automation ID, as shown by stewart status
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--address=… Where the daemon listens, such as unix://var/run/stewart.sock or tcp://host:port; defaults to control.listen
--token=… The control token; defaults to control.token, usually STEWART_CONTROL__TOKEN
--timeout=… How long to wait for the daemon, like 5s 5s

Forget the stored pause or resume of one app, so its config decides again

stewart app:reset [options] [--] <app>
Argument Meaning
app The automation ID, as shown by stewart status
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--address=… Where the daemon listens, such as unix://var/run/stewart.sock or tcp://host:port; defaults to control.listen
--token=… The control token; defaults to control.token, usually STEWART_CONTROL__TOKEN
--timeout=… How long to wait for the daemon, like 5s 5s

Resume a paused app

stewart app:resume [options] [--] <app>
Argument Meaning
app The automation ID, as shown by stewart status
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--address=… Where the daemon listens, such as unix://var/run/stewart.sock or tcp://host:port; defaults to control.listen
--token=… The control token; defaults to control.token, usually STEWART_CONTROL__TOKEN
--timeout=… How long to wait for the daemon, like 5s 5s

Check that the configuration loads and every automation file loads

stewart check [options]
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root

Show the effective configuration after the environment is applied

stewart config:dump [options]
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--show-secrets Print credentials instead of masking them

Show every supported option with its type and default

stewart config:reference
Argument Meaning
command The command to execute
Option Meaning Default
-h, --help Display help for the given command. When no command is given display help for the run command
--silent Do not output any message
-q, --quiet Only errors are displayed. All other output is suppressed
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-V, --version Display this application version
--ansi Force (or disable –no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question

Check that this PHP can run Stewart

stewart doctor

Write typed entity and service classes from your Home Assistant

stewart generate [options]
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--snapshot-in=… Generate from this file instead of connecting
--snapshot-out=… Write what was read to this file
--check Report what would change and fail if anything would
--allow-shrink Write even if that deletes more than half of the generated files

Run the Stewart daemon

stewart run [options]
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
-l, --log-level=… debug|info|notice|warning|error
--json-logs Emit logs as JSON
--only=… Run only this automation, even if disabled; repeat for more

Show what the running daemon is doing, once

stewart status [options]
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--address=… Where the daemon listens, such as unix://var/run/stewart.sock or tcp://host:port; defaults to control.listen
--token=… The control token; defaults to control.token, usually STEWART_CONTROL__TOKEN
--timeout=… How long to wait for the daemon, like 5s 5s
--json Print the snapshot as the wire JSON instead of tables
--probe=… liveness or readiness: print one line and exit 0 or 1, for health checks

Restart one worker with a fresh crash budget, also after it was quarantined

stewart worker:restart [options] [--] <worker>
Argument Meaning
worker The worker number, as shown by stewart status
Option Meaning Default
-c, --config=… Path to stewart.yaml; defaults to stewart.yaml in the project root
--address=… Where the daemon listens, such as unix://var/run/stewart.sock or tcp://host:port; defaults to control.listen
--token=… The control token; defaults to control.token, usually STEWART_CONTROL__TOKEN
--timeout=… How long to wait for the daemon, like 5s 5s