CLI reference
Top-level commands
Section titled “Top-level commands”| Command | Purpose |
|---|---|
hoplite / hoplite repl |
Open the development console |
hoplite version |
Print the Hoplite version |
hoplite eval EXPR |
Evaluate one Hara expression |
hoplite run FILE |
Run a HAL source file |
hoplite verify … |
Validate a generated HAB0 envelope and exact manifest without executing source |
hoplite inspect … |
Inspect generated application, route, configuration, and source-free evidence |
hoplite doctor … |
Diagnose the local runtime, project, trust, lock, and generated application environment |
hoplite package … |
Build, inspect, and install deterministic .harp archives |
hoplite serve … |
Check, build, or operate an application project |
Serve syntax
Section titled “Serve syntax”hoplite serve [--profile NAME] [--mode dev|prod] [PROJECT]hoplite serve <foreground|install|uninstall|status|reload|stop|build|check> [--profile NAME] [--mode dev|prod] [PROJECT]With no explicit serve action, hoplite serve performs start.
Serve actions
Section titled “Serve actions”| Action | Behavior |
|---|---|
start |
Build as needed and start the embedded Nginx process |
foreground |
Run Nginx in the foreground |
install |
Install a macOS LaunchAgent |
uninstall |
Remove the macOS LaunchAgent |
status |
Report whether the project process is running |
reload |
Ask Nginx to reload the built configuration |
stop |
Stop the project process |
build |
Generate application and Nginx build output |
check |
Load and validate the selected application without serving |
Options
Section titled “Options”| Option | Values | Default |
|---|---|---|
--profile NAME |
A key from :project/profiles |
:project/default-profile |
--mode MODE |
dev or prod |
dev |
PROJECT |
Project directory | Current project context |
Unexpected arguments, missing option values, and modes other than dev or prod are rejected.
Generated-application diagnostics
Section titled “Generated-application diagnostics”hoplite verify [--manifest FILE] [PROJECT|OUTPUT|BUNDLE]hoplite inspect [--json] [--show-paths] [--manifest FILE] [PROJECT|OUTPUT|BUNDLE]hoplite doctor [--json] [--show-paths] [--deep] [--strict] [PROJECT]verify performs bounded HAB0 and exact-manifest validation. inspect adds
generated route, adapter, digest, OpenAPI, configuration, platform, and
source-projection reporting without evaluating application source. doctor
checks the local executable, embedded Nginx identity, adjacent
hoplite-server, CA trust, project profile, package lock, platform plan, and
generated application.
Paths are redacted from inspect and doctor output unless --show-paths is
supplied. doctor --deep explicitly allows compilation and application
preflight; --strict promotes warnings to a non-zero result. See
Diagnosing an application for the operator workflow.
Production server
Section titled “Production server”hoplite-server [--workers auto|N] [PROJECT]hoplite-server versionhoplite-server consumes an already built, source-free .hoplite directory
and replaces itself with the embedded Nginx serving process. It does not expose
the development CLI or compile application source. HOPLITE_WORKERS provides
the default worker override; the command-line option takes precedence.
Environment
Section titled “Environment”| Variable | Purpose |
|---|---|
HOPLITE_NGINX |
Select an external development Nginx executable instead of the embedded binary |
HOPLITE_SERVER_CACHE |
Select where hoplite-server materializes its embedded serving binary |
HOPLITE_WORKERS |
Override the production worker count with auto, a positive integer, or an empty value to retain the build setting |
Use HOPLITE_NGINX deliberately; normal installations should use the embedded host.
Historical hoplite auth and provider-lock commands were retired in 0.2.0 and
are not accepted by current builds.
Source: core/src/main.rs