Skip to content

Releases: thedavidweng/OpenLoop

OpenLoop v0.2.0

31 May 00:19
0bb00db

Choose a tag to compare

OpenLoop v0.2.0 — Backend Auto-Provisioning

What's New

Backend Auto-Provisioning

The ACE-Step Python backend is now automatically downloaded and installed on first launch. Previously, users had to manually git clone the backend repository into the runtime directory — a step that made the app unusable for non-developers.

  • Automatic download: Backend code is fetched from GitHub as a zip archive, extracted, and version-tracked via a local manifest
  • Update support: Check for and apply backend updates from the CLI (openloop backend update) or Settings UI
  • Migration: Existing git-cloned backends are detected and tracked automatically
  • Setup wizard: Engine download integrated into the model step (no extra wizard step)

CLI Improvements

  • openloop backend provision — Download and install the ACE-Step backend code
  • openloop backend update — Update backend to the latest version
  • openloop backend status — Now shows backend code version (tag or commit)
  • openloop doctor — New backend-code health check
  • Progress display adapts to TTY vs piped output
  • openloop models list syncs downloaded models from manifest for DB consistency
  • HTTP timeout (300s) added to prevent hung requests

Settings UI

  • Backend Engine section shows installed version and update availability
  • Update button when a newer version is detected
  • Check for updates button

Upgrade Notes

No breaking changes. Existing installations will detect the current backend code and write a manifest automatically on first run.

File Changes

New files:

  • src-tauri/src/services/backend_provisioner.rs — Core provisioning service (~1200 lines)
  • src-tauri/src/commands/provisioner.rs — Tauri IPC commands

Key modifications:

  • Backend manager now checks provisioning before starting
  • Model bootstrap status extended with provisioning_backend state
  • Setup wizard shows engine download progress
  • i18n strings added for EN and ZH-CN

OpenLoop v0.1.1

05 May 08:17

Choose a tag to compare

OpenLoop v0.1.1 — First Alpha

The first public release of OpenLoop: local AI music generation on your Mac. Generate music from text prompts, control musical parameters, and export your results — all running locally with zero cloud dependency.

🎧 CLI Mode

OpenLoop ships with a full-featured CLI built into the same binary. Every GUI operation has a CLI equivalent — designed for scripting, automation, and agent-driven workflows.

# Generate music from a text prompt
openloop run "lo-fi warm piano, 90 BPM"

# Download model variants
openloop pull turbo

# List generation history as JSON
openloop list --json

# Batch generate from a lyrics file
openloop run --lyrics lyrics.txt --model pro

# Stream progress as NDJSON (ideal for agent pipelines)
openloop run "cinematic strings" --json

Why CLI matters for AI video

OpenLoop was designed to be agent-friendly. Combined with tools like Remotion (programmatic React video rendering) and HyperFrames (HTML-to-video for agents), you can build fully automated AI video pipelines:

AI script → OpenLoop CLI (music) → Remotion (video) → AI voiceover → Final video

An AI agent can orchestrate the entire video production chain: generate background music via openloop run, render visuals via Remotion, add voiceover — all without touching a GUI.

📦 Installation

Homebrew (recommended)

brew tap thedavidweng/tap
brew install --cask openloop

Homebrew automatically adds openloop to your PATH.

Direct download

Download OpenLoop_0.1.0_aarch64.dmg from the assets below. To add CLI tools to your PATH, open OpenLoop → Settings → "Add to PATH".

🎵 What's new

  • Text-to-music generation — Generate music from prompts with ACE-Step 1.5 running locally
  • Musical controls — Set BPM, key, time signature, duration, and seed
  • Lyrics input — Add lyrics with structure tags ([verse], [chorus], [bridge])
  • Multiple audio formats — Export as WAV, MP3, FLAC, or OGG
  • Generation history — Browse, search, and replay previous generations
  • Model variants — Three profiles: Lite (8 GB), Turbo (16 GB), and Pro (24 GB)
  • NDJSON streaming — Machine-readable progress output for agent pipelines
  • 10 CLI commandsrun, setup, list, pull, models, ps, delete, clear, stop, help

⚙️ System Requirements

Component Requirement
OS macOS 14+ (Sonoma or later)
Chip Apple Silicon (M1/M2/M3/M4)
Memory 16 GB+ recommended (8 GB minimum)
Storage ~10 GB for models and backend
Network Required for initial model download; fully offline after setup

🔧 Known Issues

  • First launch model download — The initial model download is large (~3 GB). Progress is shown in the model card.
  • Intel Mac — Best-effort support. Performance and stability are not guaranteed.
  • Not signed / notarized — macOS Gatekeeper will block the app on first launch. Right-click → Open to bypass, or use Homebrew which handles this automatically.
  • Generation can take minutes — First cold-start generation loads the model into memory (~30s). Subsequent generations are faster.
  • Seed = 0 — Setting seed to 0 means "random seed." Use openloop run --seed <number> for reproducible output.

🛠 For Developers

git clone https://github.com/thedavidweng/OpenLoop.git
cd OpenLoop
pnpm install
pnpm tauri dev

The Rust backend lives in src-tauri/. The CLI module (src-tauri/src/cli/) shares the same AppState as the GUI — see ADR-0002.

📚 Docs


Thanks to the open-source projects that make OpenLoop possible: ACE-Step 1.5, Tauri, MLX, and the broader open-source audio community.

OpenLoop is part of the OpenMusic series.