kubectl command that does the same, and makes it only if you approve.


AI assistants: where they connect, how to connect each one, and what each cluster lets them change.
Desktop app only: for now. Assistants connect to the desktop app on your computer, not to Lumovi in your cluster.
How it works
Lumovi has no AI of its own, and needs no API key. The AI is your assistant’s, with your account there. Lumovi is a tool it uses: it speaks the Model Context Protocol (MCP), which assistants use to connect to tools, and gives them twelve tools: seven that read, four that ask for a change, and one that waits for your answer. The assistant decides when to call them, and Lumovi answers with what it would show you. Lumovi works for an assistant as it does for you:- Your clusters. Every context in your kubeconfig, as on the start screen.
- Your credentials. Lumovi reads and changes clusters with the credentials in your kubeconfig, so an assistant can’t see or do more than your account can. See Permissions.
- Your guard rails. Read-only clusters stay read-only, and each change waits for you, unless you let a cluster’s assistants make some changes without asking.
What assistants can do
They read. Your clusters, the kinds each one serves, lists of objects with their health, one object as YAML, events and a container’s logs. One tool,find_problems, sums up what’s failing in a cluster or namespace in one answer, which is where assistants usually start.
They ask. To apply a manifest, scale, restart or delete, each time with a reason. The cluster checks the change first, with a dry run, and then it waits in Lumovi for you to approve or reject it. Once you approve it, Lumovi makes it only if it still does what you saw. Each cluster can also take some of its assistants’ changes without asking, or none at all, but deletions always ask: see Changes they ask for.
What they can’t do:
- See a Secret’s values. They get its keys, and
(hidden by Lumovi)for each value. - Change a read-only cluster, or one whose Changes they ask for is set to Never.
- Go past your RBAC. A change your account can’t make fails at the dry run, before you’re asked.
- Delete without asking. Deletions always wait for you, and some ask you to type the name first.
- Anything else. They have only Lumovi’s tools: no shells, port forwards or Helm.
Turn it on
AI assistants are off until you turn them on. Open the AI assistants dialog:- Choose AI assistants, the sparkles at the bottom of the sidebar. It has a green dot while an assistant is connected.
- On the start screen, choose the same button at the bottom, next to the theme.
- Choose AI assistants… in the command palette (⌘K, or CtrlK on Windows and Linux).
- Choose View → AI Assistants…
- They read: Clusters’ objects, events and logs, and what’s failing; never Secrets’ values.
- They ask: Each change shows here, with the diff it makes, for you to approve or reject.
- Only on this computer: With a token of its own. Read-only clusters, and your own access (RBAC), always apply.
The port
Lumovi listens on port 47830 unless you choose another. To change it, type a port from 1024 to 65535 in Port, and choose Use, or press ↵. If another program already uses the port, the dialog says so, in red, and shows no way to connect until you choose another:Lumovi can’t use port 47830 (listen EADDRINUSE: …): choose another one.Changing the port lets every assistant go and withdraws every change still waiting. Assistants you set up with the old port need setting up again. Claude Desktop doesn’t: it finds the port by itself.
Connect an assistant
Under Connect an assistant, a tab for each assistant says how. What you copy has the token in it: the dialog shows only its first four characters, then…, and the copy buttons copy all of it. The assistant keeps the token in its own settings.
- Claude Code
- Claude Desktop
- Cursor
- VS Code
- Other
Run the command once, in a terminal. Copy command copies it, with the whole token:With
--scope user, Claude Code uses Lumovi in every project, not only the folder you run it in.The tab suggests letting Claude Code use Lumovi’s tools without asking you each time: Lumovi asks you before any change anyway.Connected now
Connected now lists the assistants connected at the moment, by name: Claude Code, Claude (Claude Desktop), Cursor, VS Code, Windsurf and Codex, and others by the name they give. Two of the same, like Claude Code in two terminals, show as Claude Code ×2. Until one connects, it says “None yet: assistants show here once they connect.” The sidebar’s button says so too: its green dot, and AI assistants (2 connected) when you point at it. An assistant leaves the list when it disconnects. One that hasn’t asked anything for six hours is let go: the next time it asks, Lumovi tells it to start a new session.A new token
Assistants send Lumovi’s token to connect. If a copy of it got out, make a new one: choose New token… at the bottom of the dialog, then Make a new token. Cancel keeps the one you have. The dialog says what that does: “Assistants connected with the token now disconnect: set them up again (Claude Desktop picks the new one up itself).” Every connected assistant is let go, every change still waiting is withdrawn, and the old token stops working. Set up Claude Code, Cursor, VS Code and the others again, from the dialog. Claude Desktop reads the new token by itself.Security
Lumovi lets assistants in only from this computer, and only with its token:- Only on this computer. Lumovi listens on
127.0.0.1, which other computers can’t reach. - Only with the token. Every request has to carry it, as
Authorization: Bearer <token>. It’s 43 random characters, made the first time you turn assistants on, and Lumovi compares it in constant time. A request without it gets “Lumovi needs its token: set this assistant up again from Lumovi.” - Not from web pages. A browser marks the requests a page makes with an
Originheader, and Lumovi refuses them: “Web pages may not connect to Lumovi.” A page that points a name of its own at your computer (DNS rebinding) sends that name as theHost, and is refused too: “Only this computer may connect.” Only requests addressed to127.0.0.1orlocalhost, at Lumovi’s port, get in. - Small messages. A message is at most 4 MB. A larger one gets “That’s more than Lumovi takes: 4 MB at most.” Only
/mcpanswers. - Kept where only you can read it. The token is in Lumovi’s
settings.json, with what each cluster lets assistants change. On macOS and Linux, Lumovi keeps that file readable by your account only. See Privacy and security.
Approving changes
What an assistant’s change shows you, and how to answer it.
Assistant tools
Every tool, its parameters, and what it needs.