Building MAGDA
SkillDev toolsBuild, test, and run MAGDA DAW. Use when compiling, running tests, or launching the app. Always use Makefile commands, never raw cmake/ninja.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Building MAGDA skill
What this skill tells your AI
The instructions your AI receives, as published by conceptual-machines/magda-core in .claude/skills/building/SKILL.md and read by ahel’s review.
Always use Makefile targets. Never use cmake or ninja directly.
Build Commands
| Command | Purpose |
|---|---|
make debug | Debug build (default) |
make release | Release build |
make configure | Force CMake reconfigure |
make clean | Remove all build artifacts |
make rebuild | Clean + debug build |
Test Commands
| Command | Purpose |
|---|---|
make test | Build and run all tests |
make test-build | Build tests only |
make test-verbose | Run tests with verbose output |
make test-list | List all available tests |
make test-window | Plugin window tests only |
make test-shutdown | Shutdown sequence tests only |
make test-threading | Thread safety tests only |
Run Commands
| Command | Purpose |
|---|---|
make run | Build and launch app (GUI) |
make run-console | Build and run with stdout visible |
make run-profile | Run with performance profiling |
Code Quality
| Command | Purpose |
|---|---|
make format | clang-format all source files |
make lint | clang-tidy on all sources |
make lint-changed | clang-tidy on modified files only |
make lint-file FILE=path | clang-tidy on a specific file |
Build Directories
- Debug:
cmake-build-debug/ - Release:
cmake-build-release/
Key Notes
- Debug build directory is
cmake-build-debug, NOTbuild/ - Test binary is at
cmake-build-debug/tests/magda_tests - App bundle is at
cmake-build-debug/magda/daw/magda_daw_app_artefacts/Debug/MAGDA.app - Pre-commit hooks run clang-format automatically; if commit fails due to formatting, re-stage and commit again
When to Build
- Small cosmetic / non-logic changes (UI sizes, paddings, colors, icon swaps, layout tweaks, comment edits, gitignore, etc.): do NOT build automatically. The user prefers to build these themselves. Just make the change and stop.
- Logic changes (new functions, control flow, state management, threading, audio code, refactors, anything that could compile-fail or introduce bugs): always build to verify it compiles and to catch errors early.
- When unsure, ask the user whether they want you to build.
Signals
- GitHub stars
- 206
- Forks
- 24
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
building- Source
- github.com/conceptual-machines/magda-core