November 12, 2026

Omarchy 4.6 will let you share a local AI model across your tailnet

0

Run a model on one Omarchy box, use it from another over Tailscale. The engine work is already tagged, and the agents panel side is coming in the next version.

Omarchy Agents panel in the top bar showing a connected Qwen3.8 27B model on host dhh-n1x, with 53 TPS, 898 prefill TPS and 128K context

Image: DHH (X)

“Omarchy 4.6 is not just leaning into local AI, but will let you share any model running on any Omarchy machine on your tailnet with another. Get a DGX Spark, then run inference from your XPS13 netbook. Sharing is caring,” DHH wrote on X on November 11, 2026. His screenshot shows the agents panel with Qwen3.8 27B listed under a host called dhh-n1x, a Disconnect button, and “Dense · 53 TPS · 898 Prefill TPS · 128K Context” underneath.

The plumbing is in omarchy-local-ai, the engine behind the local model recipes we covered on November 10, 2026. Pull request #7, merged by DHH on November 10, adds share <recipe>. It puts the model’s loopback endpoint behind tailscale serve at /local-ai/<recipe>, “tailnet only, Tailscale TLS”, and publishes a key-free /local-ai/models.json listing of what’s shared. The container, port and key check don’t change. In other words, Tailscale is the transport.

Seeing a model is free, but using one takes the host’s key. pair <host> fetches it over SSH, which the PR calls “the only way a key leaves a machine”, and stores it in mode 0600. #22 made pairing work one model at a time, with pair <host> <recipe> and forget <host>/<recipe>. A network command surveys online Linux peers from the local tailscaled, and machines that are away keep their models marked offline or unreachable with a last-seen time.

In the agents panel, network models get a line next to your local ones, and local models get a share toggle. A shared model runs on its own machine’s terms: Omarchy #18458 replaced start and stop on a paired machine’s model with Disconnect, and engine PR #28 removed remote start and stop entirely. So you use a model its host is already running and sharing, and you can’t power one up from across the room.

You can also see how many machines are using your model. #23, merged on November 11, 2026, routes shared models through a share proxy on 127.0.0.1:11430, run as its own user service, that counts each machine whose request the model accepted, for five minutes after its last one. It counts machines, not Tailscale logins, because “on a personal tailnet every machine is the same login.” According to the PR, it was verified live on a GB10 with Qwen3.8 27B: a streamed completion came back chunk by chunk, and a wrong key got a 401 and wasn’t counted.

The panel turned that count into icons the same day. Omarchy #18511 swaps the “Share” label for the Tailscale mark, dim while a model is private and lit while shared, and moves the count into the tooltip: “Shared with 1 user · stop sharing”. A network model you haven’t connected to yet gets the play glyph instead of “Use”. The PR notes that the share button and the user-count tooltip weren’t checked on a real local model yet.

Coding agents can see shared models too. The engine’s 0.6.3 release notes describe a pi extension that lists every model set up locally and every paired machine’s, under an omarchy-local provider, or omarchy-local-<host> for a paired machine. The same release adds overlay qwen, which opens Qwen Code on a local or paired model.

Engine 0.6.0, which includes tailnet sharing, can also run a model across two DGX Sparks cabled through their ConnectX-7 ports, with GLM-5.3 Flash as the first recipe. “We have frontier at home,” DHH posted a few hours after his first post, describing GLM-5.3 Flash “running on a pair of Sparks with Omarchy being accessed remotely via Tailscale from a MacBook Neo.”

Engine releases 0.6.0 through 0.6.3 were all tagged on November 11, 2026, but the panel work was merged into Omarchy after 4.5.0, so it’s coming in the next version. DHH calls that 4.6 and hasn’t given a date. One limit is already written down: #7 notes that the engine’s units are tied to the graphical session, so a headless sharing host “needs work”.

Source: https://x.com/dhh/status/2120535700491891109

Leave a Reply

Your email address will not be published. Required fields are marked *