ReferenceCLI

CLI: setup and bootstrap

These commands create or refresh configuration. Run dry-runs first when a command supports them, especially inside an existing repository.

CommandWritesPurpose
memory wizardYesInteractive global or project setup.
memory initYesNon-interactive repo-local bootstrap.
memory upgradeYesRefresh generated repo-local Memory Layer skill and instruction files.
memory completionNoPrint shell completion scripts.
memory devMixedScaffold or inspect the dev-profile overlay used by contributors.

memory wizard

Use the wizard for first setup and for safe repo-local refreshes.

memory wizard --global
cd /path/to/project
memory wizard --project my-project --dry-run
memory wizard

The global wizard stores machine-level settings such as the database URL, API token, and provider configuration. The project wizard writes a user-local project config plus repo-local .mem/ and .agents/ files so agents can discover the project slug, Memory Layer rules, and skills.

memory init

Use init when you want a scriptable project bootstrap instead of the interactive wizard.

memory init
memory init --project my-project --dry-run
memory init --project my-project
memory init --force

Prefer wizard for humans and init for repeatable repository setup. Both should be reviewed before committing generated files.

memory upgrade

Use upgrade after installing a newer Memory Layer version, especially when .agents/ skills or generated instructions changed.

memory upgrade --dry-run
memory upgrade --dry-run --json
memory upgrade

Real upgrade runs download the current Memory skill bundle from GitHub when possible and fall back to the installed skill-template when offline. Review generated diffs before committing. This command is expected to touch repo-local integration files, not the PostgreSQL database.

memory completion

Generate shell completion for interactive use.

memory completion bash
memory completion zsh
memory completion fish

Install the generated script according to your shell’s completion path.

memory dev

The dev command is for contributors running Memory Layer from source. Use it to inspect or scaffold the dev-profile overlay instead of editing installed-user config.

memory dev --help
memory dev init --copy-from-global
memory dev init --dry-run
MEMORY_LAYER_PROFILE=dev cargo run --bin memory -- doctor

The dev profile keeps source-tree experimentation separate from the packaged service. Cargo-run dev defaults use 127.0.0.1:4250 for HTTP and 127.0.0.1:4251 for Cap'n Proto TCP.

© 2026 Olivier Van Acker (3vilM33pl3). Memory Layer is AGPL-3.0-or-later with commercial licensing available.

On this page