What is Hermes Agent?
Hermes Agent (by Nous Research) is a CLI-first AI agent available as a one-click app in the Knotie VPS App Catalog — mirroring the OpenClaw integration but with a lighter-weight transport. For the high-level overview, feature comparison, and use cases, see Hermes Agent overview. This page is the deep-dive setup guide that walks through the SSH chat transport, the deploy pipeline, the chat API, and configuration. Key properties:- Runs on your customer’s VPS, routed through the Knotie AI Gateway (partner earns margin on every AI call)
- No extra daemon or public port required — portal chat uses a secure SSH one-shot transport instead of nginx/TLS
- AI Gateway key is automatically minted during deploy — no human ever enters an API key
- Multi-turn memory preserved across chat sessions via Hermes’s built-in
memories/store and the--continueflag - Optional Telegram integration — wire a bot token during deploy to let customers chat via Telegram too
⚠️ Hermes Agent is currently in beta / catalog-deploy-only mode. Stage-1 reinstall from the VPS catalog is guarded; use the catalog deploy flow described below.
How portal chat works
- ✅ Smaller attack surface (no new public port on the VPS)
- ✅ Fewer moving parts (no daemon to manage)
- ⚠️ Higher first-token latency (~5–40 s, no streaming) — the agent process starts fresh per request
Prerequisites
| Requirement | Where to get it |
|---|---|
| Active VPS instance | Partner Portal → VPS Servers → My Instances |
| Partner Portal access | Required to trigger the catalog deploy |
| Telegram bot token (optional) | Create a bot via @BotFather on Telegram |
| Telegram chat ID (optional) | Use @userinfobot to look up the chat/group ID |
Deploying Hermes Agent
Step 1 — Open the App Catalog on your VPS
- In the Partner Portal, go to VPS Servers → My Instances
- Find the VPS you want to deploy on and click its card
- Click App Catalog (or Reinstall)
- Select Hermes Agent from the catalog
Step 2 — Fill in the deploy form
The pre-deploy form collects:| Field | Required | Description |
|---|---|---|
| Customer / Business name | ✅ Yes | Used as the agent’s display name and written into SOUL.md |
| Telegram bot token | No | Wire the agent to a Telegram bot for out-of-band messaging |
| Telegram chat ID | No | Required if you supply a bot token |
Step 3 — Wait for deploy to complete
After you click Deploy, the platform:- Mints a real Knotie AI Gateway key (
sk-…) with the partner’s entitled models - SSH-runs the two-stage deploy script on the VPS (returns
202immediately; runs in background) - The deploy script:
- Installs Hermes CLI (v0.15.1+) via cloud-init
- Wires Hermes’s
customOpenAI-compatible provider tohttps://api.knotie.ai/v1 - Writes the AI key directly into
config.yaml(undermodel.api_key) — not.env - Writes
SOUL.mdwith the customer/business name - Best-effort registers the Knotie MCP server
- Optionally wires Telegram if a bot token was supplied
- Runs
hermes doctor+ a one-shot smoke test to verify the setup - Writes the
/var/lib/hermes-agent/catalog-deploy-completemarker
- Updates the instance status:
deploying:hermes-agent→hermes-agent
409 agent_not_ready — this clears once the marker is written.
Chatting with Hermes Agent
- In the customer’s whitelabel portal, go to AI Chat
- In the agent selector, choose ⚡ Hermes Agent
- Type a message and send
--continue to resume the most recent Hermes conversation thread, so the agent remembers context.
Session behaviour
- Each VPS instance is single-customer. All browser tabs for that customer share the same Hermes conversation thread — not cross-tenant.
- To start a fresh conversation, have the customer reload the page or use a new browser session (a dedicated session-reset endpoint is a planned follow-up).
Chat API reference
The portal uses this internal route; you can also call it from custom integrations:200):
| Status | Code | Meaning |
|---|---|---|
401 | unauthorized | Customer not authenticated |
403 | forbidden | Instance belongs to a different customer |
404 | instance_not_found | VPS instance not found |
409 | agent_not_ready | Deploy script hasn’t finished yet (marker not written) |
422 | invalid_input | Message body missing or empty |
502 | agent_error | Hermes returned an error or empty reply |
503 | ssh_unavailable | Could not SSH into the VPS |
504 | agent_timeout | Hermes took longer than ~55 s to reply |
Telegram integration
If you supplied a Telegram bot token and chat ID during deploy, the install script registers the Hermes messaging gateway to forward messages from that Telegram conversation to the agent (and vice versa). This is separate from portal chat — both work in parallel:- Portal chat: browser → SSH → Hermes
- Telegram chat: Telegram → Hermes messaging gateway (running as a systemd service)
Configuration reference
These values are written to~/.hermes/config.yaml during deploy:
| Setting | Value set by deploy | Description |
|---|---|---|
model.provider | custom | Uses the custom OpenAI-compatible provider |
model.base_url | https://api.knotie.ai/v1 | Knotie AI Gateway endpoint |
model.api_key | Auto-minted sk-… key | Written directly into config (not .env) — required for Hermes 0.15.1+ |
model.default | auto (or primary model) | Resolves to the best available model |
Troubleshooting
Chat returns409 agent_not_ready
The deploy script hasn’t finished yet. Check whether the completion marker exists on the VPS:
hermes doctor reports an auth error, the API key in config.yaml may be incorrect. Re-deploy from the catalog to re-mint and reinject the key.
Verify the Knotie Gateway is wired correctly:
channelReady flag is set optimistically once the instance shows installedAppId=hermes-agent. If the deploy hasn’t fully completed, the chat button may appear active but return 409. Use the health endpoint to confirm:
- Email: support@knotie-ai.pro
- Discord: discord.gg/AQCdM68BTr
Related pages
- Hermes Agent overview — high-level summary, use cases, when to pick Hermes
- OpenClaw Partner Setup — HTTP-gateway-based agent (alternative to Hermes for synchronous streaming)
- VPS App Catalog — Overview of all VPS apps and packages
- VPS Terminal — Browser-based SSH access to customer VPS
- Auto-Install Experiences — sell Hermes as a self-serve subscription via Stripe