Modern application engineering
Electron, React 18, TypeScript, Vite, Tailwind, Zustand, Zod, Vitest and Playwright/Electron in one working desktop product.
A local-first Electron application where AI agents can propose code and commands, while typed contracts, policy checks, human approval, reversible ChangeSets and durable audit records keep the human in control.
MADS turns agent output into a controlled desktop workflow rather than giving an AI unrestricted access to the host.
Electron, React 18, TypeScript, Vite, Tailwind, Zustand, Zod, Vitest and Playwright/Electron in one working desktop product.
File mutations become ChangeSets with a diff, risk signals, explicit approval, atomic application and guarded revert.
Typed actions, path policy, a bounded command runner, main-process provider secrets and a durable JSONL audit trail.
The scenario below is fictional and runs only in this browser page. It demonstrates the product contract without exposing a private repository, real prompt, filesystem path, provider response or audit log.
- export function divide(a: number, b: number) { - return a / b; - } + export function divide(a: number, b: number) { + if (b === 0) throw new Error("Division by zero"); + return a / b; + }
| Field | Value |
|---|---|
| Private source repository | fbratten/multi-agent-developer-sandbox |
| Current source pin | c84698d91d20bde4771a813029c52e2dfa356827 |
| Implementation-bearing verification pin | dbd87c532bb01931b980ba2660a7f749b2e8a239 |
| Verification date for this public package | 2026-08-02 |
| Recorded verification gate | typecheck, lint, 125 Vitest tests, production build and 13 Electron E2E scenarios |
| Public data | Entirely synthetic fixture and browser-only state transitions |
| Source availability | Private; this page is a bounded public evidence surface, not the source tree |
A create action targeting an existing path is classified as an intent mismatch and escalated instead of appearing as a low-risk new-file action.
A trailing-newline-only change is shown explicitly rather than being rendered as an empty or invisible diff.
Revert is refused when subsequent workspace edits would be destroyed by restoring the older state.
ChangeSet lifecycle events are written to the durable audit log, and persistence failure is surfaced rather than represented as success.
Calling an LLM is the easy part. MADS demonstrates the surrounding engineering needed to turn agent output into a reviewable product workflow: typed contracts, user experience, secret boundaries, controlled execution, reversible change and verifiable state.