Hermes3D is a free, open-source 3D virtual office for AI agents that you run on your own machine, and the repo is github.com/iamlukethedev/Hermes3D.
It's MIT licensed, it costs nothing, and it's an unofficial community project built by LukeTheDev, so it is not made by Nous Research.
You get it running with five commands, which are git clone https://github.com/iamlukethedev/Hermes3D hermes3d, cd hermes3d, npm install, cp .env.example .env and npm run dev.
Then you open http://localhost:3000 in your browser and connect it to a gateway.
I need to be upfront about one thing before we go any further.
I have not tested Hermes3D myself yet, so this is a docs-based guide built from the repo's README, its TUTORIAL.md and its docs folder, which I read on 14 October 2026.
Everything below tells you what the docs say, and I'll flag clearly where my own hands-on experience with similar Hermes tools comes in.
That video is my walkthrough of Hermes Pixel Office, which is a different visual office for Hermes agents, and I've included it because I don't have a Hermes3D video yet.
What Hermes3D Is, In Plain English
Hermes3D is a screen that turns your AI agents into characters in an office you can walk around.
The README describes it as a "3D virtual office for AI agents" that runs on your own infrastructure.
Most agent tools show you logs, terminal output and dashboards.
Hermes3D shows you desks, rooms and little workers instead, so you can see who is busy, who is waiting and who is stuck.
The README says the gateway is only the control plane, and the office itself is the product.
There's one thing in the repo that could confuse you.
The short "About" line on GitHub calls it an open-source 3D engine for games and simulations.
I think that line is misleading, because the README, the tutorial and the vision file all describe a 3D office for agents and not a game engine.
So if you came here looking for a game engine, this isn't one.
The Hermes3D Facts I Checked On The Repo
These are the facts from the GitHub repo and its README on 14 October 2026.
| Item | Detail |
|---|---|
| Official repo | The repo is github.com/iamlukethedev/Hermes3D. |
| Maker | It's built and maintained by LukeTheDev, who is @iamlukethedev on X. |
| Official or not | It's an unofficial community project, and it is not made by Nous Research. |
| Cost and licence | It's free and open source under the MIT licence. |
| Language | It's written in TypeScript. |
| Created | The repo was created on 17 August 2026. |
| Releases | There is one release, v1.0.0, from 20 August 2026. |
| Last push | The last push I could see was on 29 August 2026. |
| Stars and forks | It had 570+ stars and 120+ forks when I checked. |
| Requirements | The README recommends Node.js 20 or newer and npm 10 or newer. |
| Stack | It uses Next.js, React, Three.js with React Three Fiber and Drei for 3D, and Phaser for the 2D office. |
The same developer also makes Herald OS, which I have used and covered in my Herald OS guide.
🔥 Want my exact Hermes3D Setup setup, step by step? Inside the AI Profit Boardroom you get step-by-step video trainings, my installable Agent OS and four coaching calls a week with 3,400+ members building real automations. → Join the AI Profit Boardroom
What You Need Before You Start
You need Node.js 20 or newer and npm 10 or newer, according to the README.
You can check both by typing node --version and npm --version in your terminal.
You also need git, because the install starts with a clone.
Here's the part most people miss.
Hermes3D does not install Hermes for you.
It's only the visual layer, so it needs something to connect to.
That something can be one of four things.
| Backend | What it is | When I'd pick it |
|---|---|---|
| Demo gateway | It's a built-in mock gateway with fake agents. | I'd start here, because it needs no agent at all. |
| Hermes through the adapter | The bundled adapter talks to the Hermes HTTP API on your machine. | I'd use this once Hermes is already running. |
| Hermes Agent (direct) | Hermes3D talks straight to a hermes serve backend with no adapter process. |
I'd use this for a remote Hermes box over Tailscale. |
| Custom runtime | It's a direct HTTP seam for your own orchestrator. | I'd leave this to developers. |
If you don't have Hermes yet, my one-click Hermes Agent setup guide gets you there first.
Hermes3D Quick Start: The Five Commands
These are the commands from the README, with the repo URL filled in.
git clone https://github.com/iamlukethedev/Hermes3D hermes3d
cd hermes3d
npm install
cp .env.example .env
npm run dev
The first command downloads the code into a folder called hermes3d.
The second command moves you into that folder.
The third command installs the packages the app needs.
The fourth command copies the example settings file so you have your own .env to edit.
The fifth command starts the Studio dev server.
Then you open http://localhost:3000 and set the gateway URL and token on the connect screen.
Studio is the name the docs use for the web app and its small server.
Step 1: Try The Hermes3D Demo First
I'd always run the demo before I connect a real agent.
It proves the app works on your machine before you add any moving parts.
You run these two commands in two separate terminal windows.
npm run demo-gateway
npm run dev
Then you open http://localhost:3000 and connect Studio to this address.
ws://localhost:18789
On the connect screen, you choose Demo backend and click connect.
The README says the demo starts a mock gateway with demo agents, streaming chat, session previews and office presence.
That's enough to walk around the office and decide whether you like the idea.
If your laptop struggles with the 3D view, the README says you can switch to a 2D pixel office.
You do that in Settings under Office renderer, or with the 2D button in the office toolbar.
Step 2: Connect Hermes3D To Hermes With The Adapter
This is the default path in the README.
The chain looks like this, according to the tutorial.
Browser -> Hermes3D Studio -> gateway adapter (ws) -> Hermes HTTP API
The adapter expects the Hermes HTTP API at http://localhost:8642 by default.
The official Hermes docs say that API server is off until you enable it and give it a key in your Hermes settings, and then you start the gateway.
Once the API answers, you set the Hermes values in the Hermes3D .env file.
HERMES_API_URL=http://localhost:8642
HERMES_API_KEY=
HERMES_ADAPTER_PORT=18789
HERMES_MODEL=hermes
HERMES_AGENT_NAME=Hermes
You put your own Hermes API key in HERMES_API_KEY, and you never commit that file to git.
Then you run the adapter and Studio in two terminals.
npm run hermes-adapter
npm run dev
You open http://localhost:3000, connect to ws://localhost:18789 and choose Hermes backend.
The docs say Studio remembers that choice and shows Hermes as the active backend once the adapter answers.
The tutorial suggests a quick health check before you blame the office.
curl -sS http://localhost:8642/health
The demo gateway and the Hermes adapter both default to port 18789, so the docs say you should only run one at a time.
🔥 Want my full Hermes and Agent OS setup, step by step? Inside the AI Profit Boardroom, I've got Hermes Agent training, my installable Agent OS and four coaching calls a week. You'll be setting up agents alongside 3,400+ members who are doing the same thing. → Get access here
Step 3: The Direct Hermes Agent Path
The docs describe a second, shorter path for a hermes-agent backend.
In this path, Studio speaks to the Hermes backend itself, and no adapter process runs anywhere.
The direct-path guide walks through four jobs on the Hermes machine.
- You pin a session token under a dedicated name, which the guide calls
HERMES3D_OFFICE_TOKEN, in your Hermes.envfile. - You start the backend on loopback with
hermes serve --host 127.0.0.1 --port 9120 --skip-build, passing that token in. - You publish it on your private network with Tailscale Serve.
- You keep it running with a service, so a reboot doesn't take the office offline.
The guide warns against pinning the dashboard's own session token variable, because it says that breaks the Hermes desktop app.
On the connect screen, you then pick Hermes Agent (direct) as the backend type.
I checked hermes serve --help on my own machine, and it does describe a headless backend server with those host, port and skip-build flags.
I have not run this path with Hermes3D, so follow the guide line by line.
The Port 9119 Trap
The tutorial calls this the most common wrong turn.
Port 9119 is the port the Hermes dashboard prints when it starts.
With the adapter path, Hermes3D cannot connect to it.
The tutorial says that port speaks a different protocol, so no username, password or token will make it work.
You point Hermes3D at the adapter on port 18789 instead.
The repo also has a diagnostics command, which is npm run doctor, and the tutorial says it flags this mistake.
Step 4: Reach Hermes3D From Another Machine
The docs cover three remote setups.
| Setup | What the docs say to do |
|---|---|
| Gateway remote, Studio local | You expose the gateway with tailscale serve, and you use the wss:// address in Studio. |
| SSH instead of Tailscale | You run ssh -L 18789:127.0.0.1:18789 user@<gateway-host>, and you use ws://localhost:18789. |
| Studio on a LAN or tailnet | You start Studio with HOST=0.0.0.0, and you set STUDIO_ACCESS_TOKEN first. |
The rule the docs repeat is simple.
You set STUDIO_ACCESS_TOKEN before Studio is reachable from anything other than localhost.
In production you also set UPSTREAM_ALLOWLIST, which restricts the gateway hosts Studio is allowed to proxy to.
The tutorial says to prefer Tailscale Serve or an SSH tunnel over exposing raw gateway ports to the internet.
🚀 Ready to put Hermes3D Setup to work in your business? Inside the AI Profit Boardroom you get step-by-step video trainings, my installable Agent OS and four coaching calls a week with 3,400+ members building real automations. → Join the AI Profit Boardroom
What You Can Do Inside Hermes3D Once It's Running
The README lists these features, and I haven't tested them.
| Feature | What the README says it does |
|---|---|
| 3D office | You watch your agents work in real time in a shared 3D office with desks, rooms and animations. |
| 2D pixel office | You get a Gather-style pixel view of the same live agents for low-power machines. |
| Fleet and chat | You manage agents and chat with them, with updates streamed from the gateway. |
| Approvals | You handle approvals from the same place as chat and settings. |
| Standups | You run standups with agents connected to GitHub and Jira. |
| Pull requests | You review pull requests from inside the office. |
| QA and logs | You monitor QA pipelines and logs without leaving the workspace. |
| The gym | You train agents in the gym to develop new skills. |
| The janitor | You reset sessions and clean context with the janitor system. |
| Office builder | You edit and publish office layouts at /office/builder. |
| Voice replies | You can add ElevenLabs keys to enable voice replies. |
| SOUNDHERMES | You get a Spotify jukebox inside the office. |
The repo's code also contains a kanban screen, although the README doesn't document it.
The adapter docs say the main Hermes agent can act as an orchestrator, with tools to spawn a sub-agent, delegate a task and list the team.
Sub-agents then appear in the office as separate characters.
Hermes3D Troubleshooting From The Docs
The README says that if the page loads but Connect fails, the problem is usually between Studio and the gateway.
| Symptom | What the docs say it usually means |
|---|---|
EPROTO or "wrong version number" |
You used wss:// against an endpoint that isn't using TLS. |
INVALID_REQUEST mentioning protocol versions |
The gateway is too old for the Hermes3D protocol, so you run the bundled adapter or the demo gateway. |
401 Studio access token required |
STUDIO_ACCESS_TOKEN is on and your browser is missing the access cookie. |
| Connected, but no agents appear | The adapter can't reach the Hermes API, so you check the adapter logs and the API key. |
| Nothing works over Tailscale | Both devices need approving in your tailnet, and you check tailscale serve status. |
I'd run npm run doctor first, because the tutorial says it gives a grouped diagnostics report.
The Honest Limits Of Hermes3D
The README is open about what isn't finished, and I respect that.
- The
/officeview and the/office/buildereditor are still separate stacks. - The gateway URL and token are loaded into browser memory at runtime, so the README says to treat the browser as part of your trust boundary.
- Voice transcription isn't bundled, and that endpoint returns a "not implemented" error.
- Spotify sign-in for SOUNDHERMES only stores an access token, so you may need to sign in again when it expires.
- The multi-agent feature for linking two offices is labelled a beta.
There are two limits the README doesn't list, and I think you should know them.
The project has one release and no pushes since late August 2026, so check the repo for activity before you rely on it.
And I haven't tested it, so I can't tell you how stable it is on a real machine.
From my own experience, a visual office like this is a window onto your agents and not a replacement for their safety rules.
That's the lesson I took from Hermes Pixel Office, and I'd apply it here too.
Hermes3D vs The Other Hermes Screens I've Used
I've used several Hermes front-ends on my own machine, and Hermes3D sits in the "watch your agents" group.
| Tool | What it is | My hands-on status |
|---|---|---|
| Hermes3D | It's a 3D office with a 2D mode, built by LukeTheDev. | I've read the docs, and I have not tested it. |
| Hermes Pixel Office | It's a pixel office plugin by Teknium. | I've used it and made a video on it. |
| Herald OS | It's a desktop OS-style front-end from the same developer as Hermes3D. | I've used it, and it's an alpha. |
| Hermes Desktop | It's the official app from Nous Research. | I've used it, and it's my safest pick. |
My full ranking is in the best Hermes Agent UI list.
If you want every dashboard option sorted by what it shows you, read my Hermes Agent dashboards roundup.
If you only want my top pick, the best UI for Hermes Agent names it in the first line.
If you'd like help working out where AI agents fit in your business, you can book a free SEO strategy session and we'll map it out together. If you're already experienced and want to work at a higher level with other operators, have a look at the SEO Elite Circle.
Who Should Set Up Hermes3D?
You should set it up if you already run Hermes and you want to see your agents instead of reading logs.
You should try the demo if you're curious and you have ten minutes.
You should wait if you're brand new to agents, because you'll get more from getting Hermes itself working first.
You should also wait if you need something that's actively maintained, until the repo shows fresh activity.
🔥 Want to see how I run a whole crew of agents from one screen? The AI Profit Boardroom includes my installable Agent OS, the Hermes walkthroughs and four coaching calls a week where you can ask about your own setup. → Join the AI Profit Boardroom
Related Reading
- The best Hermes Agent UI list ranks nine front-ends I've used.
- My Herald OS guide covers the other project from the same developer.
- How to set up Hermes Agent in one click gets Hermes running before you add an office.
- My Hermes Agent dashboards roundup sorts every dashboard by what it shows.
Also On Our Network
- 🌐 How a business could actually use Hermes3D
- 🌐 Every Hermes3D feature, with my docs-based verdict
- 🌐 The Hermes3D quick start and where it fits in an Agent OS
- 🌐 The models to run behind Hermes3D, with real bench scores
FAQ: Hermes3D Setup
What is Hermes3D?
Hermes3D is a free, open-source 3D virtual office for AI agents that you run on your own infrastructure.
Agents appear as workers in a live office, and you can chat with them, approve actions and watch what they're doing.
It's MIT licensed and built by LukeTheDev.
How do I install Hermes3D?
You clone the repo, run npm install, copy .env.example to .env and run npm run dev.
Then you open http://localhost:3000 and set the gateway URL and token.
The README recommends Node.js 20 or newer and npm 10 or newer.
Is Hermes3D made by Nous Research?
No, it isn't.
The README calls it an unofficial, independent, community-driven frontend that isn't affiliated with the teams behind the backends it connects to.
Can I try Hermes3D without installing Hermes?
Yes, you can.
You run npm run demo-gateway and npm run dev, connect to ws://localhost:18789 and choose Demo backend.
Why does Hermes3D not connect to port 9119?
Port 9119 belongs to the Hermes dashboard, and the tutorial says the adapter path speaks a different protocol.
You point Hermes3D at the bundled adapter on ws://localhost:18789 instead.
Is Hermes3D still maintained?
The repo has one release, v1.0.0 from 20 August 2026, and the last push I could see was on 29 August 2026.
You should check the repo for recent activity before you rely on it.
📺 Video notes + links to the tools 👉
🎥 Learn how I make these videos 👉
🆓 Get a FREE AI Course + Community + 1,000 AI Agents 👉
About Julian
I'm Julian Goldie, an SEO entrepreneur, author and founder of the AI Profit Boardroom, which has 3,400+ members.
I help business owners scale with AI agents, automation and SEO.
- I've built a 7-figure SEO and link-building agency, Goldie Agency, with 70+ people in Bangkok.
- I've grown a YouTube channel to 400,000+ subscribers.
- I wrote the book "Link Building Mastery", which covers nine link building strategies.
- I run GoldieBench, where I score AI models on real one-shot builds.
→ Get my best AI training inside the AI Profit Boardroom
Run the demo first, connect the adapter second and check the repo for activity before you depend on it, and you'll get an honest first look at Hermes3D.











