magus-init
Bootstrap a workspace (magus.yaml + magusfile.buzz + merge driver)
Synopsis
magus init [flags]
Description
Bootstrap a magus workspace in the current directory.
By default, magus.yaml is written to $XDG_CONFIG_HOME/magus/ (the global user config location). Use --local to write it into the repo instead (useful for checked-in, team-shared config). The magusfile stub and VCS merge driver are always wired in the repo.
With --global only the global config is written; the per-clone workspace bootstrap (magusfile stub + merge driver) is skipped.
The VCS is taken from --vcs, or chosen interactively when stdin is a terminal.
The "spell" subcommand scaffolds a new spell instead of bootstrapping a workspace: "magus init spell <name>" writes spells/<name>/spell.buzz with the mgs_ contract stubbed, each function documented, and a runnable test block.
Options
- --dry-run
- Print the config, magusfile, and merge-driver destinations without writing any of them
- --force
- Overwrite an existing config file
- --global
- Write only the global config; skip the workspace bootstrap
- --local
- Write config into the repo (CWD) instead of $XDG_CONFIG_HOME/magus/
- --vcs string
- VCS to wire the merge driver for (git|hg); prompts when omitted on a TTY
Examples
Bootstrap the current repo
magus init
Non-interactive (CI): pick the VCS explicitly
magus init --vcs git
Write only the global config
magus init --global
Scaffold a new spell
magus init spell mytool
See Also
magus(1), magus-ls(1), magus-describe(1), magus-run(1), magus-x(1), magus-where(1), magus-affected(1), magus-graph(1), magus-query(1), magus-explain(1), magus-path(1), magus-refs(1), magus-watch(1), magus-events(1), magus-status(1), magus-clean(1), magus-vcs(1), magus-doctor(1), magus-config(1), magus-session(1), magus-memory(1), magus-notes(1), magus-diff(1), magus-server(1), magus-mcp(1), magus-buzz(1), magus-completion(1), magus-man(1), magus-agent(1), magus-self(1), magus-version(1)