Three ways to use the same product: one-line CLI, browser workspace, or self-host. After install, the UI and the agent loop match what you see on the hosted site.
Node.js 20 or newer. No API key needed for the free hosted tier.
npm install -g lolm-cli
That command only installs. npm will print something like added 2 packages and return you to the prompt — that means it worked. Then run the agent:
lolm status lolm code "write fizzbuzz to 20 in solution.py and run it" --save ./out lolm build "a snake game" -o snake.html
Or one-shot without a global install:
npx lolm-cli code "write fizzbuzz to 20 in solution.py and run it" --save ./out
| Command | What it does |
|---|---|
lolm code "…" | Agentic coding loop in a jail. --save ./dir writes files. |
lolm build "…" | Self-contained HTML/app. -o file.html. |
lolm ask "…" | Stream an answer with control decisions. |
lolm receipts | Recent sealed receipts from the public ledger. |
lolm status | API health + your daily run/visual remaining. |
lolm memory … | List / add / forget durable facts. |
Point at your own box:
lolm code "…" --base http://127.0.0.1:7866
Or set LOLM_BASE_URL.
Open the full product in the browser — chats, projects, memory, code jail, visual builder, inspector, receipts. No install required. Free daily quota.
/app.html
are the workspace UI. Self-host serves that same static UI from your process —
not a different “lite” mode.
Run on your machine. Daily hosted limits do not apply. Bring your own keys when you want frontier models.
git clone https://github.com/TheArtOfSound/LOLM.git cd LOLM python -m venv .venv && source .venv/bin/activate pip install -r requirements-agent.txt # serve demo + static site (see README / Makefile for your env) make nfet-smoke # offline smoke when configured
site/ as static (includes app.html workspace).local_ui/server_public_demo.py).lolm status --base http://127.0.0.1:<port>