Installing vmblu
vmblu uses a model to describe the architecture of an application. The CLI creates and generates vmblu projects, while the optional VS Code extension lets you inspect and edit their models visually.
You can start with a coding agent or initialize a project yourself.
Requirements
- Node.js 18 or newer, including npm.
- Visual Studio Code if you want to use the graphical vmblu editor.
- A supported coding agent, such as Codex or Claude, if you want agent-assisted development.
You do not need an existing JavaScript or TypeScript project. vmblu init creates the project structure and its package.json for you.
Quick start with a coding agent
vmblu can install user-level guidance that teaches a supported coding agent how to work with vmblu projects. See the available integrations:
npx @vizualmodel/vmblu-cli agent listBefore installing support, you can preview which files will be copied:
npx @vizualmodel/vmblu-cli agent install codex --dry-runInstall support for Codex:
npx @vizualmodel/vmblu-cli agent install codexFor Claude, replace codex with claude. The command installs files in the agent's directory under your user home folder. It refuses to overwrite existing files unless you explicitly add --force.
Start a new agent session if necessary, then use a prompt such as:
Use vmblu to create a new application in ./my-new-application.
Initialize the project if necessary and read .vmblu/vmblu.prompt.md
before making implementation changes.With vmblu support installed, the agent should initialize the project, read its project-specific instructions, install its dependencies, and use the root .blu entrypoint to locate the model.
Quick start manually
Initialize a new project with a one-off invocation of the CLI:
npx @vizualmodel/vmblu-cli init my-new-application
cd my-new-application
npm installThe initialization command writes the project dependencies to package.json; the separate npm install command installs them.
The generated project has this structure:
my-new-application/
my-new-application.blu
package.json
model/
my-new-application.mod.blu
my-new-application.mod.viz
nodes/
.vmblu/
vmblu.prompt.md
overrides/
cache/
logs/The root .blu file is an entrypoint that points to the model:
{
"kind": "vmblu.entrypoint",
"version": 1,
"model": "model/my-new-application.mod.blu"
}Open my-new-application.blu in the vmblu editor. You can verify that the CLI is available with:
npx @vizualmodel/vmblu-cli --helpThe generated package.json also provides npm scripts for profiling the model, generating the application, and generating its capability manifest. The tutorial continues from the initialized project.
Install the VS Code editor
Install vmblu from the VS Code Marketplace, or install it from within VS Code:
- Open the Extensions view.
- Search for
vmblu. - Select the extension published by Vizual Model and choose Install.
The editor is optional for CLI and agent workflows, but it gives you a visual way to inspect and change the architecture. Open the root .blu entrypoint, rather than a generated application file.
Add vmblu to an existing project
Install the runtime as an application dependency and the CLI as a development dependency:
npm install @vizualmodel/vmblu-runtime
npm install --save-dev @vizualmodel/vmblu-cliPreview the files that initialization would add, then initialize the current directory:
npx @vizualmodel/vmblu-cli init . --dry-run
npx @vizualmodel/vmblu-cli init .Without --force, initialization preserves files that already exist, including package.json. Do not use --force unless you have reviewed the affected files and intend to replace them.
Version compatibility
vmblu versions use the form major.minor.patch. The major.minor pair is the compatibility family: for example, all 1.11.x releases belong to the 1.11 family. Keep the editor, CLI, runtime, and model schema in the same family. Crossing a family boundary requires migration rather than a patch-level update.
By default, vmblu init uses the schema version supplied by the CLI that runs the command.
Troubleshooting
The vmblu command is not found
The short vmblu command is available inside the generated npm scripts. At a shell prompt, use the explicit one-off form shown in this guide:
npx @vizualmodel/vmblu-cli --helpPowerShell blocks npm or npx
On Windows, an execution policy can prevent PowerShell's npm.ps1 or npx.ps1 shim from running. Use the Windows command shims instead:
npx.cmd @vizualmodel/vmblu-cli init my-new-application
cd my-new-application
npm.cmd installAgent support files already exist
Run the installation with --dry-run to inspect its destinations. Use --force only when you intentionally want to replace the installed support with the version shipped by the current CLI.
Next steps
- Follow the tutorial to design and generate an application.
- Read the user guide for the complete workflow.
- Explore the vmblu examples.
- Report problems through GitHub Issues or ask questions in GitHub Discussions.