Skip to content
Beskid The Beskid Book

Beskid

Jump to a Beskid service

Beskid

Jump to a Beskid service

beskid new

List, install, and instantiate Beskid project, workspace, and item templates.

beskid new

beskid new is the user entrypoint for template scaffolding. beskid pckg remains registry pack/upload only.

Normative command taxonomy and edge cases: beskid new (platform-spec) and contracts and edge cases.

User-oriented workflows: Project scaffolding.

CommandPurpose
beskid new listList installed templates; optional registry results with --online
beskid new install <package|path|git>Cache a template for offline use
beskid new uninstall <shortName|package>Remove a cached template
beskid new <shortName> [options]Instantiate an installed template by short name
beskid new --path <dir> …Instantiate from a local tree (no prior install)
beskid new --git <url> …Instantiate from a git source
beskid new --package <id>[@version] …Instantiate from the registry (install if needed)

When the registry is configured, these packages are resolved from pckg (not from the CLI binary):

Short namePackage id
consolebeskid.templates.console
libbeskid.templates.lib
templatebeskid.templates.project
FlagMeaning
-o, --output <path>Output directory or file (item templates)
-n, --name <string>Primary name symbol (default name symbol)
--symbol <id>=<value>Repeatable symbol binding
--no-interactiveFail if required symbols are missing
--forceAllow non-empty output directory
--path <dir>Template from local path
--git <url>Template from git
--git-ref <ref>Branch, tag, or commit
--git-subpath <dir>Subdirectory within the repository
--package <id>[@version]Registry template package (packageKind: template)
--project <Project.proj>Host project for item templates
--allow-yankedContinue after yanked-version warning
--strict-post-actionsFail on unknown post-action id
--allow-project-manifestItem template may write Project.proj
FlagMeaning
--onlineInclude registry search results
--kind <project|workspace|item>Filter by tags.type

When stdin is a TTY, the CLI prompts for required symbols without CLI values, confirms overwrite when output exists (unless --force), and confirms proceed when the template version is yanked (unless --allow-yanked).

Terminal window
beskid new list --online
beskid new install beskid.templates.console
beskid new console -n MyApp -o ./MyApp
beskid new lib --symbol name=MyLib --no-interactive -o ./MyLib
beskid new --git https://git.example.com/templates --git-ref main --git-subpath lib -o ./Lib
beskid new contract --symbol contractName=Foo -o ./Src/Foo.bd --project ./App/Project.proj
CodeMeaning
0Success
1User error (validation, collision)
2Engine or I/O failure
3Registry auth or network failure when required

Subcommand wiring lives in compiler/crates/beskid_cli; registry download uses compiler/crates/beskid_pckg. The template engine is specified in Project templates.

← Back to CLI command reference