A universal TypeScript framework you can talk to. Orchestrate a fleet of self-improving agents across servers, browsers, and GPU instances through one observable bus.
AI agents today either generate ad-hoc code or fight frameworks that weren't designed for them. Luca assistants build applications using the same components they are made from. They don't just write the code — they live in its runtime.
Every Luca app has a single container — features, clients, servers, commands, state, events. Every component describes itself. The human reads the same docs the agent reads. There is one way to do things.
Luca ships as a standalone binary. No runtime dependencies, no package manager. Use it to build your project, then compile your project into its own binary with your commands, features, and assistants baked in.
Each assistant can use() any module and inherit its tools. The assistantManager orchestrates many — across servers, browsers, and GPU instances — through one observable bus.
No imports beyond the container. File I/O, HTTP, databases, git, browser automation, terminal UI, encryption — all typed, all discoverable at runtime.
The assistantManager is a central observable bus for your agent fleet. Spin up specialized assistants, route messages between them, watch their state — one coordinator for the whole swarm.
Compile your project into a standalone executable. No node, no bun, no npm on the target machine. Your users download one file and run it.
Read, write, watch, and search your project. fs, fileManager, and grep give your agent full project awareness.
Branch info, status, diff, log. The container knows your repo. The agent knows your repo.
Express, WebSocket, IPC, MCP. REST and WebSocket clients. Build APIs and real-time systems from the same container.
Shell commands with proc.exec(). Sandboxed code execution in the VM. Docker, SSH, and RunPod for remote compute.
Every helper has reactive state and an event bus. The assistant can watch for changes and act autonomously across the entire system.
Every component carries introspection metadata — method signatures, options, events, state shape. luca describe and agents use the same data.
Assistants run anywhere — server, browser, RunPod GPU. They talk over WebSocket, IPC, or REST. Same container pattern on Node and in the browser via ESM.
The assistantManager is the observable hub. Assistants discover their tools from the container, talk to each other across transports, and run on any machine.
Orchestrate a fleet of agents, wire up infrastructure, compile it all to a single executable.
Discover, prototype, serve, and compile — all from your terminal. Your AI assistant uses the same commands.
No dependencies. No node_modules. Agents that talk to each other out of the box.