Docs / Hermes

Hermes

One command to install, one to log in.

Hermes logo

Alpha: The Hermes plugin is under active development and you may encounter bugs. It currently installs via the Hermes plugin CLI — no additional setup is needed beyond authentication.

Install

  1. 1

    Install the plugin

    Run the following command to install and enable the Zest plugin for Hermes.

    hermes plugins install https://github.com/Winding-Labs/zest-hermes --enable
  2. 2

    Authenticate with Zest

    Inside any Hermes session, run the login command. It will open a browser window for authentication.

    /zest_login
  3. 3

    Start coding

    The plugin runs in the background and automatically tracks your Hermes sessions. No additional configuration needed.

Check it works

Inside a Hermes session, run the status command. It shows the account you are signed in as, your workspace, what synced in the last hour, what is still pending, whether the background daemon is running, and the plugin version, with the update command when a newer one is out.

/zest_status

What it records

  • Hermes sessions from the moment the plugin starts: your messages, the agent's replies and the tools it called.
  • Each session's title, start time and duration, its model and token counts, and the cost Hermes reports for API-billed sessions.
  • Data queues in ~/.hermes-zest/queue/, and a background daemon syncs it once you are logged in.

What it never sends

  • Sessions from before the plugin was installed. It never reads your Hermes history.
  • API keys, tokens and other secrets, redacted on your machine before sync. If redaction cannot start, the daemon stops rather than upload unredacted data.
  • Sessions you exclude with /zest_ignore, and everything while /zest_disable keeps sync off.

Troubleshooting

The plugin does not load

Run hermes plugins list to check that zest-hermes is installed and enabled. If it is disabled, enable it:

hermes plugins enable zest-hermes

Signed in to the wrong account

/zest_status shows which account is signed in. Run /zest_logout, then /zest_login. Sessions queued under another account sync only after you sign back in as that account.

A session has not synced

A session syncs once it has at least 3 messages, and /zest_status counts the ones still waiting. /zest_sync uploads the queue now.