Lumen
by Mas-inx
README.md
<div align="center">
<img src="docs/assets/logo.png" width="104" height="104" alt="Lumen logo" />
# Lumen — the open-source AI video editor
**Edit video with an AI that can see, hear and cut.**
<sub>Vibecoded with <b>Claude Opus 5.5</b> by <a href="https://github.com/Mas-inx"><b>Mas-Inx</b></a></sub>
Lumen is a desktop video editor where the AI isn't a chatbot bolted onto a timeline. It watches your edit frame by frame, listens to the mix, reads what's said — and makes real, undoable edits with the same tools you use. Bring your own brain: **Claude Code**, **Codex**, or a model with your **OpenAI, Anthropic, Gemini, OpenRouter** or local **Ollama / LM Studio** key.
[](https://github.com/Mas-inx/lumen-ai-video-editor/releases/latest)
[](#build-from-source)
[](https://github.com/Mas-inx/lumen-ai-video-editor/releases/latest)
[](https://github.com/Mas-inx/lumen-ai-video-editor/releases)
[](https://github.com/Mas-inx/lumen-ai-video-editor/actions/workflows/ci.yml)







[](#credits)
<img src="docs/screenshots/editor.jpg" alt="The Lumen AI video editor: a chrome 3D title over a Blender-rendered background in the preview, the media library of generated clips, a timeline with captions, titles, overlays, three backgrounds, narration and music, and the Copilot panel showing its steps" />
</div>
## Why Lumen
- **An AI that edits, not just chats.** Every edit in Lumen is a typed command, and the AI gets all of them — plus tools to look and listen. About 70 tools in all, each change a normal undo step. [See them all →](docs/AI-TOOLS.md)
- **It sees what you'll export.** When the AI checks a frame, it's rendered exactly as the export will be: every track, title, effect and transition. It can watch the whole edit as a contact sheet, look inside footage, and hear loudness, silences and speech.
- **Bring your own brain.** Use the Claude Code or Codex you already pay for, an API key from any major provider, or a local model. Lumen is also an **MCP server**, so any agent can drive it.
- **Local-first.** Media is edited in place and never uploaded. Speech-to-text runs on your GPU with Whisper. No account, no watermark, no telemetry.
- **A real editor underneath.** A magnetic timeline, keyframes, 3D titles and transitions, colour looks, frame-exact export with hardware encoding — so you can finish by hand whatever the AI starts.
It's an open-source alternative to editors like CapCut, Filmora and Descript — built so an AI can do anything you can.
<div align="center">
<img src="docs/screenshots/teaser.webp" width="720" alt="An animated teaser made entirely in Lumen: a chrome 3D title spinning in over Blender-rendered glossy shapes, a caption, and a 3D cube transition into the next shot" />
<br />
<sub>Made in Lumen, frame for frame: Blender backgrounds and a chrome 3D title, HyperFrames motion graphics, Whisper captions, and a 3D cube transition the Copilot added and checked.</sub>
</div>
## Contents
- [Features](#features) — [editing](#a-real-editor) · [Copilot](#the-copilot-sees-hears-and-edits) · [smart edits](#smart-edits) · [generation](#generate-3d-motion-graphics-images-video-and-voice) · [export](#export) · [integrations](#connect-anything)
- [Download](#download) · [Build from source](#build-from-source) · [Documentation](#documentation) · [Roadmap](#roadmap) · [Contributing](#contributing) · [Credits](#credits)
## Features
### A real editor
<img src="docs/screenshots/timeline.jpg" alt="Lumen's multi-track timeline: captions, a closing 3D title, overlay renders (3D title, lower third, kinetic type), three Blender backgrounds on the magnetic main track, narration and a ducked music bed, with markers on the ruler" />
- **Magnetic main track** that keeps your story edge to edge, with free tracks above and below for B-roll, overlays, titles, captions, voice, music and sound effects.
- Split, trim, ripple, slide into gaps, snapping, markers, speed and reverse, and **keyframes with easing** on every property.
- **2D and 3D transitions** (cube, flip, door, page curl, shatter…), effects, **colour looks and grading**, and extruded **3D titles** rendered live.
- **Sound that drives the picture:** a Web Audio mix with per-clip volume, fades and keyframes, *Studio voice* clean-up, on-device noise reduction and 15 built-in sound effects.
- Import **MP4, MOV, WebM, MKV, MP3, WAV, FLAC, PNG, JPEG, WebP, GIF** and more — by dialog, folder or drag and drop. Files stay where they are; missing ones can be relinked.
- `.lumen` **project files** that survive moving folders between drives, crash recovery, and undo for everything. `Ctrl+K` reaches every command.
### The Copilot sees, hears and edits
<table>
<tr>
<td width="46%"><img src="docs/screenshots/copilot.jpg" alt="The Lumen Copilot reading the project, watching a contact sheet, applying a batch of edits and checking a frame it rendered" /></td>
<td>
Ask in plain words — or talk to it. The Copilot plans, uses Lumen's tools, and checks its own work:
| You ask | It… |
| --- | --- |
| “Remove the long pauses and add captions” | transcribes on your GPU, cuts every silence across the whole timeline (captions and B-roll stay in sync), lays timed captions |
| “Make the intro punchier” | watches the edit, adds a 3D transition and a glow in one undo step, renders the frame to check it |
| “Is the music too loud under my voice?” | measures loudness per track in LUFS and ducks the music under speech |
| “Make a vertical version for Reels” | reframes the canvas and every layer to 9:16 |
| “Find where I talk about the mountains” | searches inside transcripts and jumps there |
You see every step, including the frames it looked at, and **Undo all** reverts a whole answer.
</td>
</tr>
</table>
What the AI sees when it watches your edit — one call to `get_contact_sheet`:
<img src="docs/screenshots/contact-sheet.jpg" alt="A contact sheet the Lumen AI generated of the whole edit: labelled frames of 3D backgrounds, the chrome title, the lower third and captions" />
**Brains:** your own **Claude Code** or **Codex** (Lumen runs them headless, with only Lumen's tools), or a model with your key: **Anthropic, OpenAI, Google Gemini, OpenRouter, OpenCode Zen, Ollama, LM Studio** or any OpenAI-compatible endpoint. Keys are encrypted by Windows (DPAPI) and never leave the app's main process.
### Smart edits
One-click suggestions on the timeline, and tools for every AI:
- **Transcribe** on the device with Whisper (GPU via WebGPU, or CPU), or with OpenAI or ElevenLabs.
- **Remove pauses** — the whole timeline closes up around each cut, so captions, B-roll and markers stay in sync while music plays on; with several speakers it only cuts where everyone is quiet.
- **Captions** from the transcript, on their own track.
- **Duck music** under speech with volume keyframes.
- **Reframe** between landscape, vertical, square and portrait.
- **Hear the mix** — loudness in LUFS against the −14 streaming target, peaks, clipping and silences.
### Generate 3D, motion graphics, images, video and voice
<img src="docs/screenshots/generate.jpg" alt="Lumen's Generate panel with motion graphic templates — lower third, title card, kinetic type and stat counter" />
- **Blender** — real extruded 3D titles, looping abstract backgrounds and AI-written scenes, rendered in the background and dropped into your media.
- **HyperFrames** motion graphics — lower thirds, title cards, kinetic type, stat counters or any HTML + GSAP composition — rendered inside Lumen.
- **Images and video** from your OpenAI key (GPT Image) or Gemini key (Gemini image models, Veo video), with model lists fetched live — new models show up without an update.
- **Voiceovers, sound effects and music** with ElevenLabs.
- Anything from an **MCP server** — Higgsfield, Runway, Replicate, fal.ai or your own.
### Effects, transitions and looks
<img src="docs/screenshots/transitions.jpg" width="49.5%" alt="Lumen's transitions library with previews of 3D transitions — cube, flip, doorway, swing in, page curl, warp zoom — and a cube transition mid-turn in the preview" /> <img src="docs/screenshots/looks.jpg" width="49.5%" alt="Lumen's colour looks — natural, cinematic, golden hour, nordic, vivid, faded film — previewed on the edit, with kinetic type in the preview" />
2D and 3D transitions, 15 effects (glow, grain, shake, RGB split, 3D tilt, curved screen…), one-click colour looks and full grading — each previewed on your own footage before you apply it.
### Export
<img src="docs/screenshots/export.jpg" alt="Lumen's export dialog with format, codec, resolution, frame rate, quality, hardware encoding and file size estimate" />
| Format | Codecs |
| --- | --- |
| MP4 | H.264, HEVC, AV1 |
| MOV | H.264, HEVC |
| WebM | VP9, AV1 |
| GIF | animated, palette-optimised |
| WAV · M4A | audio only |
From 480p to 4K in your project's shape, 24–60 fps, with **hardware encoding** where your GPU supports it, a live file-size estimate and progress in the taskbar.
### Connect anything
<img src="docs/screenshots/integrations.jpg" alt="Lumen's integrations hub: AI models, Claude Code and Codex, Blender, HyperFrames, MCP servers and Lumen's own MCP server" />
- **Lumen is an MCP server.** Turn it on and any agent — Claude Code, Claude Desktop, your own — gets the same ~70 tools, pictures included:
```bash
claude mcp add --transport http lumen http://127.0.0.1:47910/mcp --header "Authorization: Bearer <token from Lumen>"
```
- **Lumen is an MCP client.** Add any server by URL or command; generator tools show up as models in the Generate panel.
## Download
**[Download the latest Lumen for Windows →](https://github.com/Mas-inx/lumen-ai-video-editor/releases/latest)**
Windows 10 or 11, 64-bit. The installer lets you install just for yourself (no admin needed) or for everyone, and associates `.lumen` project files.
> [!NOTE]
> The installer isn't code-signed yet, so Windows SmartScreen may say *“Windows protected your PC”*. Choose **More info → Run anyway**. Every release lists SHA-256 checksums.
Optional: [Blender](https://www.blender.org/download/) 4.2+ for 3D renders. Everything else is built in; the Whisper speech model downloads once (about 200 MB) the first time you transcribe on your device.
## Build from source
You need Windows 10/11 and [Node.js](https://nodejs.org/) 24.
```bash
git clone https://github.com/Mas-inx/lumen-ai-video-editor.git
cd lumen-ai-video-editor
npm install
npm run dev # the app, with hot reload
```
| Command | What it does |
| --- | --- |
| `npm run dev` | Electron app with hot reload |
| `npm run dev:web` | The UI in a browser tab (no desktop features) |
| `npm test` | Unit tests (Vitest) |
| `npm run typecheck` | TypeScript, renderer and main process |
| `npm run dist` | Windows installer in `release/` |
## Documentation
- [AI tools reference](docs/AI-TOOLS.md) — every tool the AI can use, with parameters
- [Architecture](docs/ARCHITECTURE.md) — how the editor, media engine, AI and integrations fit together
- [Contributing](CONTRIBUTING.md) · [Changelog](CHANGELOG.md) · [Security](SECURITY.md) · [Third-party notices](THIRD-PARTY-NOTICES.md)
<details>
<summary><b>Keyboard shortcuts</b></summary>
| Keys | Action |
| --- | --- |
| `Space` · `J K L` | Play / pause · shuttle |
| `←` `→` · `↑` `↓` | Frame step · previous / next edit point |
| `S` · `Del` · `Shift+Del` | Split · delete · ripple delete |
| `V` · `B` · `N` · `M` | Select tool · blade · snapping · marker |
| `=` `-` · `Shift+Z` | Zoom · zoom to fit |
| `Ctrl+Z` · `Ctrl+Shift+Z` | Undo · redo |
| `Ctrl+I` · `Ctrl+E` · `Ctrl+S` · `Ctrl+O` | Import · export · save · open |
| `Ctrl+K` · `Ctrl+J` · `?` | Command palette · Copilot · all shortcuts |
</details>
## Roadmap
Ideas the project is heading towards — contributions welcome:
- [ ] macOS and Linux builds
- [ ] Code-signed installer and automatic updates
- [ ] Exporting a marked range, and render queues
- [ ] Streaming audio for hour-long recordings
- [ ] More languages for the interface
## Contributing
Bug reports, ideas and pull requests are welcome — start with [CONTRIBUTING.md](CONTRIBUTING.md). Every edit in Lumen is a command in [`src/editor/commands.ts`](src/editor/commands.ts), and every AI tool lives in [`src/integrations/tools/`](src/integrations/tools), so adding a feature for people usually adds it for the AI too.
## Credits
Lumen was vibecoded with **[Claude Opus 5.5](https://www.anthropic.com/claude)** in [Claude Code](https://claude.com/claude-code) by **[Mas-Inx](https://github.com/Mas-inx)**.
## License
[MIT](LICENSE) © 2026 Mas-Inx. Lumen builds on excellent open-source work — see [THIRD-PARTY-NOTICES.md](THIRD-PARTY-NOTICES.md).
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues