UNLUMINOUS

UNLUMINOUSThe IDE built for agents

Unluminous is a code editor where anything you can click, your agent can do too. Hand Claude Code, Codex, OpenCode or Pi a task board, a chat pane and an infinite canvas, and watch them work in the same window you do. It's written in Rust, it's free, and it runs on Windows and macOS.

Scroll to explore

Everything you can do,your agent can do too

Every menu entry, button and shortcut in Unluminous is also a command, and Claude Code, Codex, OpenCode and Pi can reach all 262 of them through the command line or MCP.

So when you ask an agent to open a file, split the pane, fold it and set a breakpoint, it does what your clicks would have done, and you watch it happen.

See the agent features

What's in the box?

Written from scratch in Rust: its own text engine, terminal, git client, debugger, database explorer and canvas.
board • sprints • todos • claude code • codex • pi
→Agent Tasks
charts • tables • diffs • your own cli
→Agent Chat
canvas • terminals • editors • wiring
→Realm
html • notes • device widths • history
→Designer
dap • lldb • js-debug • inline values
→Debugger
postgresql • sqlite • inillucent
→Database explorer
python • matplotlib • pandas • rust
→Jupyter notebooks
mic • sable • moonshine • local or endpoint
→Speech to text
01 Agent TasksClaude Code • Codex • OpenCode • Pi

A task boardyour agents work through

Write a ticket, add a few todos and press Start Work. Unluminous opens a terminal for that ticket, starts Claude Code, Codex, OpenCode or Pi in it, and the card moves across the board as the agent ticks off its todos. There are sprints, epics, a backlog and comments too, and it's all one file on your machine.

One click to start.

Each ticket gets its own terminal and agent session, and Resume picks the same conversation back up later.

Todos tick as it works.

The agent checks off todos and comments on the ticket through the same commands your buttons use.

A supervisor if you want one.

It works QA Failed tickets first, then New ones, one at a time, while a watchdog reads every terminal.

Nothing to set up.

The board is one database file. No server, no account and no port.

02 Agent Chatclaude • codex • opencode • pi • llama.cpp • Ollama

Chat with the agentyou already have

Agent Chat runs the claude, codex, opencode or pi command you've already installed, in your project folder, so it reads your CLAUDE.md or AGENTS.md the way it does in a terminal. Answers stream in with charts, tables, checklists, diffs and small calculators you can use right in the conversation.

Your key stays where it is.

Unluminous never holds an API key. It can also talk to llama.cpp, LM Studio, Ollama or any endpoint that speaks Anthropic's or OpenAI's format.

Answers you can use.

Charts, stats, tables, steps, forms and diffs are drawn as live components, with buttons that act on them.

Three levels of access.

Read, edit or full, set per conversation.

Pictures too.

Paste, drop or attach a screenshot and ask about it.

03 RealmTen kinds of node

Lay out your whole systemon one canvas

A realm is an infinite canvas of real things: terminals, file editors, the task board, chats, browsers, notes, images, audio, video, etc. Wire a terminal to an editor and the agent running in that terminal can drive it. Every realm is a plain file in your repo, so you can review it and share it like code.

A wire is a permission.

An agent can act on the nodes its terminal is wired to, and it's refused everywhere else.

Agents know where they are.

unluminous-cli realm here tells an agent which node it is in and what it can reach.

Saved with your code.

.realm-files/ holds every realm, so a teammate opens the same layout.

Ten kinds of node.

Terminal, file editor, folder, browser, chat, task board, note, image, audio and video.

04 DesignerNotes go to the agent

Leave notes on a designand hand them to Claude

Open an HTML design at desktop, laptop, tablet or phone width, click an element and write a note on it. Send every open note to the agent in one message and the design reloads with the changes. Unluminous keeps a copy before each request, so you can step back to any version.

Notes pinned to elements.

Each note sits on the element it is about, and the agent gets the selector with it.

Every width.

Desktop, laptop, tablet, phone, or fit to the pane.

History.

A copy is taken before each request, and any copy can be put back.

Ask about one element.

Select something and ask the agent about it alone.

Every menu entryis a command,and every command a tool

Most editors give an agent a file system and a shell. Unluminous gives it the editor: open a tab, split the pane, fold a block, set a breakpoint, read a variable, run the tests, commit.

Settings, Tools, MCP has one button each for Claude Code, Codex, OpenCode and Pi. There's no port to open and no key to paste.

A fast editorwritten from scratch

No Electron and no web view. Unluminous draws every pixel itself on the graphics card.
Completion

Completions that know your code

Unluminous asks rust-analyzer and TypeScript's own server for completions, then ranks them with a model we trained on real edits. On code it had never seen, the first suggestion was the right one 75.8% of the time in Rust and 81.7% in TypeScript.

The editor we compared against scored 66.6% and 58.1%.

Debugger

A real debugger, built in

Click the gutter, start the run, and the program stops with its call stack, its locals and the values painted at the end of every line that uses them. Unluminous speaks the Debug Adapter Protocol itself, with LLDB for Rust and native code and js-debug for JavaScript and TypeScript.

Breakpoints take conditions and log messages, and they move with the text as you type.

Run configurations

Run anything with one button

A run configuration is a command, a folder and a few environment variables. Shift+F10 starts it, the output streams into the run tile, and Ctrl+F2 stops it.

Debugging uses the same configuration, so cargo run is built and then debugged.

Git

Git without leaving the window

Commit, push, pull, diff, blame, history, branches, stashes, merges and rebases, all on top of the git you already have installed.

Ctrl+K commits and Ctrl+Shift+K pushes.

Database explorer

PostgreSQL, SQLite and Inillucent, in a pane

Browse schemas and tables, run queries in a console and edit rows in a grid. You see the SQL every change becomes before you submit it, and it's written in one transaction.

Passwords stay in your credential store. Vector columns are drawn as vectors.

Jupyter notebooks

Notebooks in Python and Rust

Open any .ipynb and run it in a real Jupyter kernel started from your project's own Python. matplotlib figures, pandas tables and tracebacks are drawn right under the cell. Switch the kernel to Rust and the same notebook compiles and runs Rust a cell at a time, through evcxr.

Notebooks save as ordinary .ipynb files, outputs included, so Jupyter, VS Code and PyCharm open them too.

Speech to text

Say it to Agent-Chat

Press the microphone inside the Agent-Chat prompt, or Alt+V, and say what you want. The words fill the prompt while you talk, and pressing it again sends the message. Moonshine, a 66 MB model, turns the speech into text on your own machine, so nothing you say leaves it, and 4.3 seconds of speech takes about 170 ms. If you would rather use a service, point it at any OpenAI compatible /v1/audio/transcriptions URL.

Turn on Listen for "Sable" in the Chat settings and say "Sable" before your request: the pane opens and the message is sent when you stop talking. It is off by default, and only the window you used last listens.

Markdown

Markdown and Mermaid, drawn as you type

Markdown with tables and twenty kinds of Mermaid diagram, side by side with the source. The preview redraws as you type.

Ctrl+1, Ctrl+2 and Ctrl+3 switch between the source, side by side and the preview.

Also in the box

  • Find in Files
  • Go to File
  • Go to definition
  • Rename across the project
  • Split panes
  • Code folding
  • A terminal with 24 bit color
  • Browser tabs
  • Twelve language plugins
  • Panels that dock to any edge
  • Sessions that reopen as you left them
  • Updates checked once a day

Eight themes,glass, dark and light

Unluminous Glass, Dark and Light, plus Dracula, Palenight, Deep Ocean, Monokai Pro and One Dark in the bundled theme pack.
1 / 6Unluminous Glass
2 / 6Unluminous Dark
3 / 6Islands Dracula Colorful
4 / 6Monokai Pro
5 / 6Material Palenight
6 / 6Unluminous Light
Transparency

Let your desktopshow through

Turn the background opacity down and your wallpaper shows through behind the code, while the text stays solid. Or put one of the pictures Unluminous ships with behind it, like the aurora in every shot on this page.

One setting, Appearance, Background, on Windows and macOS.

Speed

Extremely lightweightand mindful of your compute

Written in Rust, with performance and resource utilization in mind. Say goodbye to 4 GB greedy IntelliJ and VS Code sessions.

Memory after starting177 MB
Launch until it takes commands652 ms
One keystroke in a 380 KB file2.7 ms
Switching tabs156 ms
Install

Install Unluminous

Have your agent install it by giving it these instructions

Paste them into Claude Code, Codex, OpenCode, Pi or any agent that can fetch a page and run a command.

Download and install Unluminous on this machine. It is a code editor built for AI agents: anything I can click in it, you can do through its command line tool or its MCP server.

1. Read https://unluminous.com/releases/latest.json. It has the address, size and SHA-256 of the Windows installer and of the macOS archive.
2. Download the one for my operating system and check that its SHA-256 matches.
3. On Windows, run the installer with /VERYSILENT /SUPPRESSMSGBOXES /CURRENTUSER. It installs into %LOCALAPPDATA%\Programs\Unluminous, needs no administrator rights, puts unluminous-cli on the PATH and connects the coding agents on this machine.
   On macOS, unzip the archive, move Unluminous.app to /Applications, and run /Applications/Unluminous.app/Contents/MacOS/unluminous-cli setup. It puts unluminous-cli on the PATH and connects the coding agents on this machine.
4. Run unluminous-cli setup --check --json. On Windows use %LOCALAPPDATA%\Programs\Unluminous\unluminous-cli.exe if this shell has not picked up the new PATH. It says where the tool is, which of Claude Code, Codex, OpenCode and Pi it connected to Unluminous's MCP server, and whether the server answered.
5. If you are an agent it did not connect, run unluminous-cli mcp config and add the entry it prints to your own MCP settings.
6. Tell me the version you installed, where it is, which agents were connected, and that each of them has to be restarted to see Unluminous's tools. Tell me too that the first time I open Unluminous, its Set Up Unluminous dialog lists anything that is still not set up, such as microphone access for dictation, which only I can allow. The command that opens this project in it is unluminous-cli launch .

Manual Install

The installer connects Claude Code, Codex, OpenCode and Pi for you, and the first time Unluminous opens, Set Up Unluminous offers whatever is left. Restart an agent to see its tools.

Star Unluminous on GitHub

Unluminous is free and open source. A star on GitHub helps other people find it.

Star on GitHub