Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.vibrai.com/llms.txt

Use this file to discover all available pages before exploring further.

Initialize, load, save, and inspect Vibrai project files.

Command line

project init

Initialize a new .vibrai project file
vibrai project init --name <NAME> --project <PATH> --demo --genre <NAME> --preset <ID>
--name
Project name (default: basename of —project, or “Untitled”)
--project
Path to .vibrai file (default: Untitled.vibrai in CWD; auto-uniquified to Untitled-2.vibrai, etc. if it already exists)
--demo
Write opinionated demo content (3 sections, 2 parts, exercises variation + scale overrides + naming) instead of the boilerplate
--genre
Seed from a genre library by id or display name (run ‘vibrai genre list’)
--preset
Preset id within —genre (default: first preset alphabetically)

project load

Load and display a project file
vibrai project load --project <PATH>
--project
Path to .vibrai file (default: Untitled.vibrai in CWD)

project save

Save the current project state
vibrai project save --project <PATH>
--project
Path to .vibrai file (default: Untitled.vibrai in CWD)

project info

Show project file info
vibrai project info --project <PATH>
--project
Path to .vibrai file (default: Untitled.vibrai in CWD)

MCP tools

init_project

Create a new .vibrai YAML file at the given absolute path. Without demo, writes a minimal 2-section / 1-part boilerplate. With demo: true, writes an opinionated 3-section / 2-part starter that exercises variation, per-section scale overrides, naming, and both generator types. Track IDs are probed from the bridge (first N MIDI tracks); if the bridge is unreachable, falls back to track 1 (and 2 for demo).
{
  "tool": "init_project",
  "arguments": {
    "path": "<String>",
    "name": "<String>",
    "demo": "<Boolean>"
  }
}
path
String
required
Absolute filesystem path for the new .vibrai file.
name
String
required
Project display name. Defaults to the basename of path (e.g. “my-song” for …/my-song.vibrai).
demo
Boolean
required
If true, write the demo content instead of the boilerplate.

load_project

Load an .vibrai YAML file from the given absolute path. Returns the VibraiProject. Returns null if the file is missing.
{
  "tool": "load_project",
  "arguments": {
    "path": "<String>"
  }
}
path
String
required
Absolute filesystem path to the .vibrai file.

save_project

Save an VibraiProject (same shape as load_project’s return value) to the given absolute path, overwriting any existing file. Validates the project first; rejects invalid input (e.g. section modifier <= 0) without writing the file.
{
  "tool": "save_project",
  "arguments": {
    "path": "<String>"
  }
}
path
String
required
Absolute filesystem path to write to.

project_info

Return a summary of the project (counts of sections, parts, templates) at the given path.
{
  "tool": "project_info",
  "arguments": {
    "path": "<String>"
  }
}
path
String
required
Absolute filesystem path to the .vibrai file.