Skip to main content

First-Run Onboarding & Workspace Initialization

When M31A is launched in a workspace for the first time, it ensures the repository is properly configured before executing autonomous work.

Automatic Onboarding Wizard​

If you run m31a in a new workspace without prior configuration, the interactive Workspace Setup Wizard appears automatically in the cockpit:

┌─────────────────────────── Workspace Setup Wizard ───────────────────────────┐
│ │
│ Welcome to M31 Autonomous (M31A). │
│ Let's configure this repository for safe, verifiable engineering. │
│ │
│ [1] Primary Model: meta/llama-3.2-11b-vision-instruct (NVIDIA NIM) │
│ [2] Autonomy Mode: Safe (Interactive human confirmation on mutations) │
│ [3] Git Isolation: Isolated Worktrees (m31a/run/*) │
│ [4] Sandbox Policy: Standard (Confinement enabled) │
│ │
│ [ Enter ] Save & Initialize Workspace [ Esc ] Exit │
│ │
└───────────────────────────────────────────────────────────────────────────────┘

Non-Interactive Workspace Initialization​

In headless or CI environments, initialize a workspace non-interactively via:

m31a init

To overwrite existing configuration with defaults:

m31a init --force

Created Files & Storage Structure​

Initialization creates the following files within your repository:

<workspace>/
└── .m31a/
├── config.toml # Workspace configuration overrides
├── project/ # Projected planning documents & charters
└── skills/ # Custom workspace skills (optional)

All heavy persistent data (SQLite database, checkpoints, event logs, artifact blobs) is stored in platform user directories, keeping your git repository completely clean:

  • Linux: ~/.local/share/m31a/
  • macOS: ~/Library/Application Support/m31a/
  • Windows: %LOCALAPPDATA%\m31a\