malac

Multi-Agent Loop for Autonomous Coding

An open-source coding agent for your terminal, written in Rust. It reads, edits and runs your code, hands work to parallel subagents, and works with any model provider.

curl -fsSL https://raw.githubusercontent.com/lobirus/malac/main/install.sh | sh

v1.0.1 for macOS (Apple silicon and Intel) and Linux (x86-64). Elsewhere the script builds from source. All downloads

Roots through your codebase

One prompt, start to finish. A real run: malac reads the file, fixes the bug and checks its own work before it answers.

~/calcautopilot
$ malac -y calc.py has a bug in add, fix it and verify with a python one-liner
● read calc.py
  ⎿ 1	def add(a, b): (+1 lines)
● edit calc.py
  ⎿ Edited calc.py: (+2 lines)
● bash python3 -c "import calc; assert calc.add(2,3)==5; assert calc.add(-1,1)==0; print('ok')"
  ⎿ ok
Fixed `calc.py:2`: `add` returned `a - b`, now returns `a + b`. Verified with `python3 -c "..."` → `ok`.
─ lora/default · 3.3k context · 366 out · $0.0024 · 2.2s
-y runs on autopilot. The last line is the turn’s model, context size, output tokens, cost and time.

Everything in one loop

A CLI first, with the rest built around it.

How it works

One daemon per user holds your workspaces, and every front end is a client of it. Agents publish everything they do on one event bus, so subagents are as visible as the main agent, in every client at once.

How malac worksFront ends (the terminal UI, the web UI and VS Code, through the daemon, and scripts in their own process) send tasks and approvals to the runtime. The runtime runs the agent loop and its subagents, and publishes every event on an event bus that all front ends watch. The runtime talks to model providers, built-in tools, MCP servers including malac-control, and memory.Front endsDaemon: workspaces, tabs, agentsProviders and toolsTerminal UIfull screen or --plainScripts and CI-p and --jsonWeb UImalac web, in the browserVS Codethe web UI in a paneltaskseventsAgent loop1Recall memories2Stream from the model3Check permissions4Run tools, safe ones in parallel5Loop until doneSubagentsmain agentsubagentsubagentsubagentEvent busevery client sees every agent, liveModel providersOpenAI or Anthropic APIsBuilt-in toolsread, edit, bash, grep, …MCP serversincl. malac-controlMemoryMarkdown files, MilvusHow malac worksFront ends send tasks to the runtime and watch its event bus. The runtime runs the agent loop and subagents, and uses model providers, built-in tools, MCP servers and memory.Front endsTerminal UIfull screen or --plainScripts and CI-p and --jsonWeb UImalac web, in the browserVS Codethe web UI in a paneltaskseventsAgent loop1Recall memories2Stream from the model3Check permissions4Run tools5Loop until doneSubagentsmain agentsubagentsubagentsubagentEvent busevery client sees every agent, liveProviders and toolsModel providersOpenAI or Anthropic APIsBuilt-in toolsread, edit, bash, grep, …MCP serversincl. malac-controlMemoryMarkdown files, Milvus
  1. 1You give it a task from the terminal, a script, the web UI or VS Code.
  2. 2The agent loop streams from your model and checks every tool call against your permission rules.
  3. 3Subagents take self-contained pieces in parallel and report back when they are done.

Download

malac 1.0.1 for macOS and Linux, and the extension for VS Code and compatible editors.

Windows is not supported yet. malac runs on macOS and Linux; the downloads below are for those.

macOS

For this computer

A universal installer for Apple silicon and Intel Macs. It puts malac and malac-control in /usr/local/bin. The archives hold the same two binaries.

Linux

For this computer

An x86-64 archive with malac and malac-control: unpack it and put both on your PATH. The install script does that for you, and builds from source where no archive fits.

curl -fsSL https://raw.githubusercontent.com/lobirus/malac/main/install.sh | sh

VS Code extension

The malac web UI in an editor panel. The same .vsix works in VS Code and in VS Code–compatible editors such as Cursor, Windsurf and VSCodium. It is not on the Marketplace yet, so install the file.

code --install-extension malac-vscode-1.0.1.vsix

Or in the editor: Extensions → … → Install from VSIX.

Windows is not supported yet.malac 1.0.1 on GitHub.Checksums: SHA256SUMS. Verify with shasum -a 256 -c SHA256SUMS in the download folder.

Start in two commands

# with ANTHROPIC_API_KEY or OPENAI_API_KEY in your environment
curl -fsSL https://raw.githubusercontent.com/lobirus/malac/main/install.sh | sh
malac explain how requests are routed in this repo

Opinionated by design: malac follows its author's workflow and changes with it. It is open source so you can see everything it does. Read why.