Hermes Agent Guide
Hermes Agent + GLM 5.3: Setup Through the z.ai Provider
GLM 5.3 reaches Hermes through a first-class provider, so setup is a key and a picker selection. The two things that trip people up are the provider being named after the vendor rather than the model, and the regional endpoint override that is easy to miss.
What you are configuring
Z.ai serves the GLM family, and Hermes reaches it through a built-in provider. Three identifiers matter and they deliberately do not match each other:
| Thing | Value |
|---|---|
| Provider id | zai |
| API key variable | GLM_API_KEY |
| Optional host override | GLM_BASE_URL |
| Documented base URL | https://api.z.ai/api/paas/v4 |
That mismatch between key name and provider name is the single most common source of confusion here. If you are grepping a config for "glm" and finding nothing, look for zai.
Setup
- Create an API key in your Z.ai account.
- Add it to the Hermes environment file.
- Select the provider and model through the picker.
# ~/.hermes/.env
GLM_API_KEY=your-key-herehermes model
# choose z.ai / GLM, then GLM 5.3If Hermes is not installed yet, start with the installation guide.
Regional endpoints
If you need a different host — most often a regional one — override it rather than reaching for a custom endpoint:
GLM_BASE_URL=https://api.z.ai/api/paas/v4Keeping the built-in provider means you keep its integration behaviour and only change where the requests go. A custom endpoint is the wrong tool for this particular job.
GLM 5.3 and GLM 5.3 Flash are different models
Worth stating plainly because the naming implies otherwise: Flash is not a lightweight variant of 5.3 but a separate model with its own training, and it is the one that spent time on public leaderboards anonymously as "ox-alpha" before Z.ai revealed it. Both are served by the same provider, so trying one against the other is a model selection in the picker, not a new key or config block.
Verifying
Send one small, non-sensitive prompt and confirm the layers separately:
- Hermes recognises the
zaiprovider. - The key is accepted.
- The model id you chose is available to your account.
- Tool calls come back well-formed — the property that decides whether a model is usable for agent work.
Troubleshooting
Authentication failures
- Confirm the variable is exactly
GLM_API_KEY. - Restart the gateway after editing its environment; a running process will not reread the file.
- Check for whitespace or quotes around the value.
- Confirm the key belongs to the account and region your base URL points at.
Model unavailable
- Re-check the live list in
hermes modelrather than reusing an id from an older post. - Confirm your account has access to the specific model rather than only the family.
- If you set
GLM_BASE_URL, confirm the model exists on that host too.
Security
- Use a dedicated key for the agent so it can be revoked independently.
- Keep it in
~/.hermes/.envand out of version control. - Never paste it into chat, a screenshot, or a support thread.
- Watch spend for the first few days — agent loops use more than interactive chat.
The same model on the other framework is covered in OpenClaw + GLM 5.3.
Hermes Agent + GLM 5.3 FAQ
How do I use GLM 5.3 with Hermes Agent?
Add GLM_API_KEY to ~/.hermes/.env and select the provider through hermes model. The provider id is zai — that is the detail worth remembering, because the key is named after GLM while the provider is named after Z.ai.
Why is the provider called zai and not glm?
Because Z.ai is the vendor and GLM is the model family. Hermes names providers after who serves the models, so the key (GLM_API_KEY) and the provider (zai) do not match. It is a small inconsistency that costs people time when they search config files for "glm" and find nothing.
Can I point it at a different Z.ai endpoint?
Yes. GLM_BASE_URL overrides the default host — the documented value is https://api.z.ai/api/paas/v4. This is how you target a regional endpoint without abandoning the built-in provider integration.
Is GLM 5.3 the same as GLM 5.3 Flash?
No — they are separate models, not a variant pair, and Flash was the model that ran anonymously as "ox-alpha" before its reveal. Both reach Hermes through the same zai provider, so switching between them is a model selection rather than a reconfiguration.