VERSION 0.22.0

YOUR AGENTS. YOUR PEOPLE.
YOUR MACHINES.

Everyone on your team gets their own chat with each agent and sees only the clients they work on. Connect the machines your agents run on once, then restart, hire and remove agents there from Emperor. And agents ask before they send, spend or delete.

EVERYTHING SINCE 0.9.0 · UPGRADE NOTES INSIDEVIEW ON GITHUB →

0.9 made Hermes agents fast. The releases since then make them fit a real team: several people, several clients, several machines, and a clear say over what each agent may do. These notes cover 0.9.1 through 0.22.0; the full changelog has every line.

People and agents, together

  • A private chat per person. Settings → Direct chats chooses between one shared chat per agent and a private chat for each person, with its own context. Work the system starts on its own goes to a shared chat per agent, now called its Work log. Existing companies stay shared; new companies start private. (0.9.3, 0.12.0)
  • Access on clients and projects. An Access button on every client and project gives a person Admin, Can edit or Can view there, for example admin of one client and viewer everywhere else. People limited to certain clients see only those. Nothing changes for companies that never use it. (0.20.0)
  • Invite to one client. Invite someone by email to a single client or project; that is all they see. (0.20.0)
  • Who can use each agent. Choose Everyone, Specific people or Only one person when you hire it or in its Scope tab. Others don't see it and can't message or assign work to it. Admins see its name, owner, status and cost, never its chats, and an agent for one person never sees more data than that person. If its owner leaves, an admin can give it a new owner without seeing the old conversations. (0.20.0)
  • Agents it can work with. Each agent's Scope tab also chooses which other agents it can see, message and hand work to. (0.10.1)
  • See what an agent is doing everywhere. Your chat with an agent shows what else it is working on and says when your message is queued because it is busy. (0.12.0)

Your machines

Agents on a VPS, a spare PC or a Raspberry Pi used to be managed over SSH. Now they show up in Emperor.

  • Connect a machine with one command. Settings → Runtime hosts gives you a one-use code and the command to paste on the machine. Emperor then shows its memory, disk, CPU, whether it can run a browser, its versions and which model providers it has. (0.21.0)
  • Agents already there are picked up automatically, and each agent's page shows where it runs. (0.21.0)
  • Restart an agent from Emperor. Restart its bridge or gateway from the host card or the agent page and watch the progress live. On a machine where agents share one gateway, the restart waits until they are idle unless you choose "restart now". (0.21.0)
  • Hire an agent on a machine. "Hire agent or team" now starts with "Where should it run?" and lists your machines with their free memory and providers. Pick one, a provider and a model, and Emperor sets the agent up there with live progress until it is online. A setup that stops halfway can be retried from the agent's page. (0.22.0)
  • Remove it the same way. Deleting an agent also removes it from its machine (on by default). Its access is cut at once; if the machine is offline, the removal waits and shows on the machine's card. (0.22.0)
KEYS STAY ON THE MACHINE

A machine reports only the names of its model providers, never their API keys, and hiring there uses the key it already has. It only runs a fixed list of commands Emperor may ask for, never arbitrary ones. Every action is admin-only and audited, and you can revoke a host to cut it off immediately.

Control and safety

  • Action permissions per agent. For each action, choose Off, Ask first or Allowed: Emperor actions like messages, tasks and notes, and real-world ones like sending email, posting on social, spending money, deleting data, deploying, browsing and running shell commands. "Ask first" puts an approval in your Inbox showing exactly what the agent wants to do; approving lets that one action through once. Set company defaults and override them per agent. (0.17.0)
  • One Inbox for everything that needs you. Approvals, blocked or failing work, stalled agents and decisions agents ask for in chat, most urgent first, with approve and reject inline. (0.10.0)
  • An Inbox you can clear. Unread until you open it, archive with e and undo for 8 seconds, mark all as read, search, and an Archived view. An archived item comes back on its own if it changes. (0.16.0)
  • Modules on and off. Owners and admins switch Customers, Automations, Timeline, Costs, Approval history, Views and Display screens per company. A module that is off leaves the menu and agents lose its tools, so prompts get shorter; its data is kept. Company templates (Agency, Product / solo, Operations) turn on the matching set. (0.18.0)
  • Pause all. Owners and admins can pause and resume every agent from Home, with a banner while everything is paused. (0.16.0)
  • Failures say what went wrong. Out of credits, a rejected key, rate limits, an unknown model, a budget limit, an offline runtime: each failure shows one plain cause and one fix button. (0.13.0, 0.15.0)

Views your agents build

  • Dashboards on request. Ask an agent "build me a view of this month's shop" and it creates a page of panels (numbers with deltas, charts, tables, lists, progress bars) and keeps it fresh. Every panel says when it was last updated and by which agent, and you can revert to earlier versions. (0.15.0)
  • Private or shared. Each view has an owner and a visibility: Private, Shared with people you pick, or Everyone who can see its company, client or project. A view you ask for in your private chat starts private. (0.19.0)
  • Organised where the work lives. Views are grouped by company, client and project, with Mine, Shared with me and Pinned filters. Pins to Home are per person, late updates show an amber warning, and "Ask about this panel" opens your chat with the agent behind it. (0.19.0)

See the work

  • A page for every task that tells its whole story: notes, approvals, files, messages and every agent run with its outcome, duration, tokens and cost. (0.10.0)
  • Timeline. Who worked on what, one row per agent or per project, with handoff arrows between agents and a ranking of the tasks and projects that took the most time and cost. (0.11.0–0.12.5)
  • Costs by client, project, model and agent, with a daily chart, drill-down and CSV export. Every figure says whether the runtime reported it or it was estimated. (0.14.0)
  • Search everything from one box or ⌘K: tasks, notes, messages, knowledge, files, projects, customers and agents, limited to what you may open. (0.10.0, 0.14.0)
  • Activity. Admins see who changed what, person or agent, with a before/after view. Never chat text, note bodies or secrets. (0.14.0)
  • Live updates. Chats, the dashboard, the Inbox, task pages and the Projects board update the moment something changes. (0.11.0)
  • A cleaner Projects board with a "Needs attention" filter and a list view, Markdown in task briefs and notes, and archiving finished work in one go. (0.10.1, 0.12.5)

Easier to start

  • Any OpenAI-compatible model. Point an agent at Ollama, LM Studio, vLLM or LiteLLM, with an optional key. Local installs reach models on the same machine. (0.15.0)
  • Local agents just work. The setup wizard stays until your first agent is running and shows download progress and errors, and a failed hire says so with a retry. (0.15.0)
  • A sample client to explore. A new workspace can add "Sample: Harbor Dental" with a project, tasks and a note, and remove it in one click. (0.16.0)
  • Empty pages explain what goes there, disabled buttons say why, and dark panels, colours and dialogs are fixed in light mode. (0.13.0, 0.16.0)

Security

  • Private chats stay private everywhere: live events, agent tokens, screens and Slack, Discord or webhook notifications, which only get a content-free title. (0.9.3, 0.12.0)
  • Agent restrictions apply on every route and tool, viewers are read-only, and removing a member signs them out and revokes their tokens. (0.10.0)
  • An agent's stored model key can't be redirected to another endpoint, and custom endpoints can't point at internal or cloud-metadata addresses. (0.15.0)
  • Agents set up on a machine get their own token, revoked as soon as a setup fails or the agent is deleted. (0.22.0)

Upgrading

Docker installs that run Watchtower update on their own. Otherwise, from your install folder:

docker compose pull
docker compose up -d

Hermes agent hosts need the 0.22.0 bridge. Since 0.12.1 the bridge shares the app's version number. Download the installer and its checksum, verify it, then update:

mkdir -p ~/.local/bin && cd ~/.local/bin
curl -fsSLO https://github.com/emperorclaw/emperorclaw/releases/download/v0.22.0/emperor-hermes.sh
curl -fsSLO https://github.com/emperorclaw/emperorclaw/releases/download/v0.22.0/emperor-hermes.sh.sha256
sha256sum -c emperor-hermes.sh.sha256
mv emperor-hermes.sh emperor-hermes && chmod +x emperor-hermes
emperor-hermes update

Connecting a machine as a runtime host is optional. Hosts still on 0.21 keep working for restarts; update them to hire agents there.

ROLLING BACK PAST 0.20

Migration 0072 moves each limited member's client list into the new Access records; nobody gains or loses access. Going back to 0.19 needs the SQL in Rolling Back 0.20 (Access) first, or limited members will see no clients.

  • Reverse proxies must forward WebSocket upgrades on /api/ws for live updates. Without it, pages fall back to polling. (0.11.0)
  • Defaults to know. With action permissions, sending email, posting, spending, deleting and deploying ask first by default; everything else stays allowed. (0.17.0)
  • Roles. Viewers can no longer create, edit or delete anything. Only owners and admins can change an agent's model provider, model, endpoint or key, and switching provider or endpoint needs a new key. Model pricing is instance-wide and only instance admins change it. (0.10.0, 0.14.0, 0.15.0)
  • Agent names. A name shared by two agents in the same company is no longer accepted where an agent can be named; use its id. (0.20.0)
  • Old watchdogs. emperor-hermes install refuses to migrate while self-made watchdogs restart 0.3 bridges; remove them or pass --disable-watchdogs. (0.9.2)
All updates← Release notesEvery change, line by lineFull changelog →