Multi-Agent Digital Audio
MAGDA is a free, open-source DAW with AI integrated from the ground up. Built on C++20, JUCE, and Tracktion Engine.
- English | 简体中文
- Hybrid tracks: every track hosts both audio and MIDI clips
- Three views: Arrangement, Session, and Mix
- AI chat: natural language commands that generate and execute a custom DSL directly in the app (BYOAK, Bring Your Own API Keys)
- Modulation system: 16 LFOs (with bezier curve editor) and 16 macro knobs per device and rack
- Racks: parallel processing chains with volume, pan, mute, solo per chain, fully nestable
- Piano roll with pitchbend and MIDI CC lanes
- Drum grid device
- Session view with clip launching
- Mixer with faders, pan, mute, solo, sends, and I/O routing
- Collapsible, resizable panels: Inspector + AI Chat (left), Plugin Browser + Sample Browser (right), context-sensitive editor (bottom)
- Website: magda.land
- YouTube: Introduction Video
- KVR: Product Page
- Issues: Bug Reports & Feature Requests
See Issues for known bugs and planned features.
-
C++20 compiler (GCC 10+, Clang 12+, or Xcode)
-
CMake 3.20+
-
Git LFS — required to fetch bundled binary assets (CJK font, etc.). Install with
brew install git-lfs(macOS),apt install git-lfs(Debian/Ubuntu), orchoco install git-lfs(Windows), then rungit lfs installonce per machine. -
Windows only: vcpkg supplies libxml2 (there is no system copy on Windows). Clone and bootstrap it once, then set a
VCPKG_ROOTenvironment variable pointing at the checkout — the build auto-detects it and installs libxml2 from thevcpkg.jsonmanifest on first configure. On macOS/Linux libxml2 comes from the system, so no vcpkg is needed.git clone https://github.com/microsoft/vcpkg C:\vcpkg C:\vcpkg\bootstrap-vcpkg.bat setx VCPKG_ROOT C:\vcpkg # reopen the shell so it takes effect
# Clone with submodules and LFS assets
git clone --recursive https://github.com/Conceptual-Machines/magda-core.git
cd magda-core
git lfs pull # safety net if git-lfs wasn't installed at clone time
# Setup and build
make setup
make debug
# Run
make runmake setup # Initialize submodules and dependencies
make debug # Debug build
make release # Release build
make test # Run tests
make clean # Clean build artifacts
make format # Format code
make lint # Run clang-tidy analysisThe project includes automated GitHub Actions workflows:
- CI Workflow: Runs on every push to validate builds and code quality
- Security Scanning: CodeQL analysis, secret detection, and vulnerability scanning
- Periodic Code Analysis: Weekly scans for TODOs, FIXMEs, and code smells
- Refactoring Scanner: Bi-weekly analysis of code complexity and technical debt
See docs/AUTOMATED_WORKFLOWS.md for details on automated analysis and periodic workflows.
MAGDA takes security seriously. The repository implements comprehensive security measures:
- 🔒 Branch Protection: Main branch protected with required reviews and status checks
- 🔍 Automated Scanning: CodeQL security analysis for C++ vulnerabilities
- 🔐 Secret Detection: Automated scanning to prevent credential leaks
- 🛡️ Dependency Monitoring: Dependabot for security updates
- ⚡ CI/CD Security: All security checks must pass before merge
Found a security issue? Please review our Security Policy for responsible disclosure.
For detailed information about branch protection and security architecture, see docs/BRANCH_PROTECTION.md.
magda/
├── daw/ # DAW application (C++/JUCE)
│ ├── audio/ # Audio processing
│ ├── core/ # Track, clip, selection management
│ ├── engine/ # Tracktion Engine wrapper
│ ├── interfaces/ # Abstract interfaces
│ ├── profiling/ # Performance profiling
│ ├── project/ # Project management and serialization
│ ├── ui/ # User interface components
│ └── utils/ # Utility helpers
└── agents/ # Agent system (C++)
tests/ # Test suite
scripts/ # Development and build scripts
docs/ # Documentation
- Tracktion Engine - Audio engine
- JUCE - C++ application framework (GUI, audio I/O, plugin hosting, MIDI, DSP)
- juce-llm - LLM API client module
- llama.cpp - Embedded local LLM inference
- Catch2 - Testing (fetched via CMake)
Heads up: MAGDA is in early v0. Development started in January 2026 — internal iteration first, public release more recently — and is very much active. Expect bugs and missing pieces. The best way to help the project is to file an issue.
Found a bug or have a feature request? Please open an issue on GitHub.
GPL v3 - see LICENSE for details.

