Building Lucifer: an open-source AI company you can watch · ⭐ GitHub
🚀 Start here: 1. Meet Lucifer · 2. Why I built it · 3. Architecture
📖 Use it: 4. Getting started · 5. Connect an LLM · 6. Office tour
🛠 Build the engine: 7. Org chart in YAML · 8. Real delegation · 9. Sandboxed tools · 10. Simulation brain
🎨 Build the office: 11. 3D office with R3F · 12. WebSocket + zustand · 13. Visualizing workflow
🧭 What's next: 14. Roadmap · 15. Contributing

3× speed preview. Watch the full video on GitHub.
Picture a company where every employee is an AI agent. You are the owner. You type a goal into a bar at the bottom of the screen, something like "Launch an AI note-taking app: we need a PRD, a technical architecture and a marketing plan", and press Enter.
The CEO picks it up. A moment later a gold comet flies from the CEO to the CTO, another to the CPO, a third to the CMO. The CTO splits the architecture work between a backend engineer, a frontend engineer and a QA engineer. Glowing arcs connect each manager to the people working for them, light flows down those arcs while the work happens, and the camera glides in to frame whoever is busy. Files appear in a shared workspace. Green comets fly back up as reports finish. Finally the CEO merges everything into one report and the mission card at the bottom turns to Done.
That company is Lucifer, and it is open source under the MIT license:
👉 github.com/siri2moon/lucifer
What Lucifer is
Lucifer is two things in one repository:
- A runtime for multi-agent companies (
lucifer-engine, Python 3.13, CrewAI and FastAPI). An org chart in YAML defines departments, managers and personas. A heartbeat hands queued tasks to idle employees. Agents delegate only to their own reports, write deliverables with sandboxed tools and report back up. Every subtask is a real task you can open, inspect and cancel. - A 3D office to watch them in (
lucifer-office, React 19, React Three Fiber, zustand and Vite). The company works on a yacht anchored off a beach. Every agent is an angel with wings in its own color, a halo that glows while it works and a laptop whose screen shows its status.
The two talk over a small typed protocol: REST to give orders, and a WebSocket that streams every change.
The story behind the name
Everyone falls. What matters is that you get back up.
Lucifer was the brightest of the angels. He made the oldest mistake, pride, and he fell. The old stories end there. This one doesn't. He washes up on a coast among ordinary people, watches them make mistakes, apologize, fix things and try again every day, and learns that redemption is not one grand gesture. It is honest work, done patiently.
So he anchors an old yacht off the beach, turns its decks into an office and founds Lucifer Corp with one rule: do real work for real people, without cutting corners. Other angels who lost their way join him: Michael, Gabriel, Raphael, Uriel, Azrael, Lilith, Samael and Belial.
The story is not just decoration. It sets the tone for how the software behaves. AI agents make mistakes, so Lucifer's agents have a fail_task tool and are told to use it with a specific reason instead of pretending. Every subtask stays visible to you. A failed report is shown just as clearly as a finished one, because owning a mistake is part of doing honest work.
What you can do with it today
In the engine:
- Multi-level org chart in YAML, with a model and an effort level per employee.
- Real delegation. A parent task waits for its subtasks, then wakes up to merge their results.
- Sandboxed tools:
delegate_task,post_update,write_file,read_file,list_files,complete_taskandfail_task. Files can never escape the workspace, symlinks included. - Pluggable LLMs. Anthropic Claude natively, or any model behind Cloudflare AI Gateway, such as DeepSeek, OpenAI, Gemini or Workers AI.
- Language-aware. Write the request in Vietnamese and every agent down the chain answers in Vietnamese.
- A simulation brain. With no API key, agents still delegate, write files and finish tasks, so you can try everything for free.
In the office:
- A procedural yacht on a shader ocean, a beach with palms, umbrellas, seagulls and beachgoers.
- A roster, a kanban board, an activity feed and task drawers with the whole delegation tree.
- Live missions, work links and a follow camera, so you can see work move between agents.
- Break time. Pause the company and the angels fly ashore for coffee at the Heaven's Brew bar.
- English and Vietnamese UIs, a first-run tour and example tasks.

Watching work flow through the company with a real LLM (DeepSeek), at 4× speed.
Try it in two terminals
You need uv and pnpm. No API key is needed for the first run:
git clone https://github.com/siri2moon/lucifer.git
cd lucifer
# Terminal 1: the engine, on http://localhost:4666
cd lucifer-engine && uv sync && uv run lucifer-engine serve
# Terminal 2: the office, on http://localhost:5173
cd lucifer-office && pnpm install && pnpm dev
Open http://localhost:5173, follow the short tour, and type a goal. The getting started guide walks through it step by step.
About this series
This post opens a series about Lucifer: how to use it, how it is built, and how to build something like it yourself. The navigation box at the top of each post links to all of them.
- Start here: why I built it and the architecture at a glance.
- Use it: run it locally, connect a real LLM and tour the office.
- Build the engine: the org chart in YAML, real delegation with CrewAI, sandboxed tools and the simulation brain.
- Build the office: a 3D scene with React Three Fiber, streaming state over WebSocket and visualizing workflow.
- What's next: the roadmap and how to contribute.
Lucifer is an early preview, and it is built in the open. If the idea of an AI company you can watch makes you smile, star the repo, try it and tell me what you'd want your angels to do next.
Lucifer is open source under the MIT license. Clone it, run it for free with the simulation brain, and ⭐ star it if you'd like to follow along: github.com/siri2moon/lucifer.
Next in the series: Why I Built Lucifer: Making Multi-Agent AI Visible.

