Lampson

Every day

Workspaces

Every folder you open with Lampson becomes a workspace: its own sessions, memory, scheduled tasks, plugins and servers. You can have several open at once and switch between them without stopping anything.

cd ~/code/shop && lampson            # registers ~/code/shop (first time) and opens the terminal on it
cd ~/code/blog && lampson --web      # a second workspace, in the browser

The hub§

http://127.0.0.1:8080 is the hub: the workspaces screen. Open one, create one (a folder picker on your desktop; a server-side browser on a VPS), turn them on and off, set how long an idle one stays alive.

Each workspace runs in its own process behind the hub; a hub restart never kills them. Every 15 seconds the hub starts what should be running and stops what has been idle (⚙ → hours of inactivity; 0 = never; a workspace with scheduled tasks stays up).

lampson --hub start|stop|status|logs|restart
lampson --install      # keep the hub alive across logins (Windows: Scheduled Task · Linux: systemd --user)

Where things live§

Nothing is written into your project. Lampson keeps its own state in ~/lampson:

pathwhat
~/lampson/.lampson/config.jsonprovider, model, keys, preferences
~/lampson/.lampson/ws/<name>/one folder per workspace: sessions, traces, schedules, process logs
~/lampson/memory/<name>/the agent's notes about that project
~/lampson/plugins/global plugins

Inside your project, only what you choose to commit: .lampson/plugins/, .lampson/mcp.json, .lampson/lsp.json, skills/, AGENTS.md.

Why a process per project§

A tool's file access in Synsema is a literal folder name declared in the code. A workspace is therefore a small folder with a link named workspace that points at your project; its process only ever sees that folder. That is what makes "it can only touch this project" true rather than hopeful.

View as Markdown