02.3 CLI tour
Week-one Beskid subcommands—parse, analyze, format, fetch, lock, build, run, test, new.
CLI tour
The CLI is the ground truth. Editors are a pretty face on the same pipeline.
Global behavior
Section titled “Global behavior”- Response files:
@fileexpansion (Rustargfileconvention). - Failures: diagnostic report (miette) + non-zero exit unless noted.
- Corelib: materialized on launch; override with
BESKID_CORELIB_SOURCE.
Full tables: CLI command reference.
Commands you will actually press
Section titled “Commands you will actually press”| Command | Why you care |
|---|---|
parse / tree | ”Did the parser see my file?” |
analyze | Semantic diagnostics before you blame codegen |
format | Stop formatting debates |
fetch / lock / update | Dependencies and reproducibility |
build / run | Ship something executable |
test | Run test items in the project |
new | Templates for projects/workspaces/items |
doc | api.json + markdown API output |
corelib | Materialize embedded corelib template |
pckg | Registry client when you publish packages |
flowchart TD
subgraph day1 [Day one]
P[parse/tree] --> A[analyze]
A --> F[format]
end
subgraph project [With Project.proj]
A --> Fetch[fetch/lock]
Fetch --> B[build/run/test]
end
Project-scoped flags
Section titled “Project-scoped flags”When a manifest exists, prefer explicit roots while learning:
beskid analyze --project ./Project.proj --target App--frozen / --locked participate in resolution policy—see fetch and lock.