Keeping it honest
The LampBoard helper
A small Claude Code plugin that tells the panel what only the session knows, lets you answer from the panel, and what it does not do.
The connection says what a session is doing. It cannot say how full its context really is, what it has cost, which tool it has been sitting on for twenty minutes, or what the account's rate-limit windows look like from inside. Claude Code's plugins of function hooks, from version 2.1.287, can. The LampBoard helper is one of those: register.js, and since 1.2 lamps.js for the pane below, installed into Claude Code. The command that manages it is still called lampboard mod.
What it sends, and where
To one address: 127.0.0.1, on the port the panel wrote, with the panel's token. Only after that port has answered as LampBoard, so a project's settings cannot point it at somebody else's.
- the context as Claude Code counts it, the session's cost, the rate-limit windows;
- where the session draws (terminal, editor) and why it ended;
- which tool is running and since when, with the first line of its shell command or its file path; the panel masks what looks like a secret.
It never runs a tool or writes a file itself. What it can change, you chose in the panel, or it only asks you first:
- an edit to a file another live session wrote in the last two hours becomes a question to you, with a line saying who and when;
- while you are away, a command that would delete recursively, force-push, discard changes or run as root waits for you, while the Safety catch while I'm away is on;
- a session you lowered from the panel runs its next turns on the lower model, until the window resets;
- with Answer permission prompts and questions on, a permission or a question opens under its row in the panel, and goes back to the session's own dialog unanswered;
- a quick question or a handoff is answered from the session's conversation, read again from cache, with no turn added;
- the project rules you added reach every session in that repository with its next prompt.
When the panel is not there it does nothing and says nothing: a session never waits on a dashboard.
The colours still come from the connection. The helper adds figures, never a second opinion about a state.
Installing it
Install the LampBoard helper, in Settings › Claude Code & Codex, the button on the welcome window's fifth screen, or lampboard mod install. The panel installs it through Claude Code's own claude plugin commands, from a copy it carries, and shows what Claude Code reads in it — the events it listens to and the calls it makes — under Ask Claude Code what it does. A new version of the panel brings the helper's new version with it at the next launch. A Turn on… in What LampBoard can do installs it first when the capability is the helper's.
lampboard mod uninstall takes it out, and so does Disconnect…, which takes it out with the connection.
What you see because of it
- The ring's figure is the one the session counted, not an estimate from the transcript.
- The card says what the session has cost.
- A yellow row that has sat on one tool for a quarter of an hour shows
⌛and how long; see the six lamps. - The usage strip draws the windows the sessions report, before it asks anything of its own; see usage left.
- A permission or a question can be answered under its row; see what it asks for.
@name ?questionin the bar asks a session a quick question without interrupting it./lampmaster, in every session; see LampMaster.- Claude Code's look (helper 1.15.0): where Settings says so, by default in the live view, the conversation drawn like Claude Code's VS Code panel: framed prompts, one line per tool call, framed diffs, checklists, the model and the context under the prompt. Anything else stays Claude Code's own drawing.
/lamps(helper 1.14.0), a pane beside the conversation with every session the panel shows, the ones that want something first, each in its colour and its state's word. A digit or a click brings that session forward, as a click on its lamp would. It opens only when you ask, refreshes every three seconds while open and asks nothing once closed. It needs Claude Code's full-screen layout, which a background session and the live view always use.- Before a session edits a file another live session wrote in the last two hours, the edit becomes a question, and a line names the file, the other session and when. Nothing is denied: you decide.
- While you are away, a destructive command waits for you; see being told when you are away.
- A session lowered one model until the window resets has it applied before each turn; see usage left.
- One line above the prompt of the other sessions says what waits elsewhere, in the terminal and the Claude app: Show what waits elsewhere above each prompt, in Settings.
- A lamp drawn hollow is a local Claude Code session the helper does not speak for, while others have it.
Each of its commands is registered on its own: another plugin that already holds one of the names (claude-mem has a handoff) costs only that one, not the ones after it.
Every question the helper asks the panel is proven with a key only the two of them hold, and only a signed answer is believed.