VPS Server Management
When to Use
- Use when the user asks to operate an authorized VPS or agent running on a remote host.
- Use when SSH, deployment, restart, status, or log inspection is needed with explicit permission.
Source of truth: library/infrastructure.md (read it for the latest — IPs/expirations change).
Servers (Hostinger VPS) — 3 total
| Hostname |
IP |
OS |
Purpose |
Expires |
| openclaw-server |
|
Ubuntu 24.04 (Dokploy) |
OpenClaw — personal instance |
|
| n8n-server |
|
Ubuntu 24.04 (n8n) |
All n8n workflow automations (primary) |
|
| hermes-server |
|
Ubuntu 24.04 |
Hermes Agent — Discord gateway (Vilnius, LT) |
|
SSH as root@<IP>.
Access levels (never share higher than needed)
- App login — e.g.
app.example.hstgr.cloud. Build/edit workflows, no server access. Safest to share.
- VPS SSH —
root@<IP>. Docker, files, system config. Trusted technical people only.
- Hostinger hPanel —
hpanel.hostinger.com. Billing, reboot, OS reinstall. Exposes SSH creds + browser terminal, so it grants server access too. The user only.
Managing a VPS via an agent
For multi-step or exploratory work, SSH into the box first and launch the agent ON the VPS (e.g. codex --yolo), then talk to that local-on-server agent — it has full filesystem/process context and avoids fragile SSH round-trips. For short command sequences (update, config change, restart), driving an existing SSH session directly (e.g. via a cmux pane) is fine.
When checking on a remote/on-box agent, send the user one concise status line each time: what it is doing and whether it is on track.
Claude Code cmux note: after Claude finishes, it may prefill a predicted next user message; that draft is Claude, not the user speaking.
Agents on servers
- OpenClaw → openclaw-server (managed via Dokploy).
- Hermes → hermes-server (Discord gateway). Setup/config docs in
library/hermes/.
- n8n → n8n-server.
Hermes ops (on hermes-server)
hermes --version # shows version + commits behind
hermes update # auto-snapshots, updates deps, rebuilds web UI, restarts gateway itself
hermes gateway status|restart
journalctl --user -u hermes-gateway --since '5 min ago' --no-pager # gateway logs (systemd USER service)
- Default model lives in
~/.hermes/config.yaml under model.provider + model.default — NOT in .env. Change via hermes model (interactive) or edit the yaml directly, then hermes gateway restart to propagate to gateways.
- npm
EBADENGINE warnings during update (deps want Node >=24, box runs v22) are non-blocking — do not "fix" them.
- Deeper docs (Discord/Slack/WhatsApp setup, file structure, vision config):
library/hermes/.
Limitations
- Adapted from
davidondrej/skills; verify local paths, tools, credentials, and agent features before acting.
- For commands, remote access, scheduling, browser automation, or file-changing workflows, get explicit user approval and confirm the target environment first.
1---2name: vps-server-management3description: "Manage authorized VPS hosts and server-side agents through cautious SSH and operations workflows."4category: operations5risk: critical6source: community7source_repo: davidondrej/skills8source_type: community9date_added: "2026-07-07"10author: davidondrej11tags: [vps, ssh, server-management]12tools: [claude, codex]13license: "MIT"14license_source: "https://github.com/davidondrej/skills/blob/main/LICENSE"15---1617# VPS Server Management1819## When to Use2021- Use when the user asks to operate an authorized VPS or agent running on a remote host.22- Use when SSH, deployment, restart, status, or log inspection is needed with explicit permission.2324Source of truth: `library/infrastructure.md` (read it for the latest — IPs/expirations change).2526## Servers (Hostinger VPS) — 3 total2728| Hostname | IP | OS | Purpose | Expires |29|---|---|---|---|---|30| openclaw-server | <IP> | Ubuntu 24.04 (Dokploy) | OpenClaw — personal instance | <expiry> |31| n8n-server | <IP> | Ubuntu 24.04 (n8n) | All n8n workflow automations (primary) | <expiry> |32| hermes-server | <IP> | Ubuntu 24.04 | Hermes Agent — Discord gateway (Vilnius, LT) | <expiry> |3334SSH as `root@<IP>`.3536## Access levels (never share higher than needed)37381. **App login** — e.g. `app.example.hstgr.cloud`. Build/edit workflows, no server access. Safest to share.392. **VPS SSH** — `root@<IP>`. Docker, files, system config. Trusted technical people only.403. **Hostinger hPanel** — `hpanel.hostinger.com`. Billing, reboot, OS reinstall. Exposes SSH creds + browser terminal, so it grants server access too. The user only.4142## Managing a VPS via an agent4344For multi-step or exploratory work, **SSH into the box first and launch the agent ON the VPS** (e.g. `codex --yolo`), then talk to that local-on-server agent — it has full filesystem/process context and avoids fragile SSH round-trips. For short command sequences (update, config change, restart), driving an existing SSH session directly (e.g. via a cmux pane) is fine.4546When checking on a remote/on-box agent, send the user one concise status line each time: what it is doing and whether it is on track.4748Claude Code cmux note: after Claude finishes, it may prefill a predicted next user message; that draft is Claude, not the user speaking.4950## Agents on servers5152- **OpenClaw** → openclaw-server (managed via Dokploy).53- **Hermes** → hermes-server (Discord gateway). Setup/config docs in `library/hermes/`.54- **n8n** → n8n-server.5556## Hermes ops (on hermes-server)5758```bash59hermes --version # shows version + commits behind60hermes update # auto-snapshots, updates deps, rebuilds web UI, restarts gateway itself61hermes gateway status|restart62journalctl --user -u hermes-gateway --since '5 min ago' --no-pager # gateway logs (systemd USER service)63```6465- **Default model** lives in `~/.hermes/config.yaml` under `model.provider` + `model.default` — NOT in `.env`. Change via `hermes model` (interactive) or edit the yaml directly, then `hermes gateway restart` to propagate to gateways.66- npm `EBADENGINE` warnings during update (deps want Node >=24, box runs v22) are non-blocking — do not "fix" them.67- Deeper docs (Discord/Slack/WhatsApp setup, file structure, vision config): `library/hermes/`.6869## Limitations7071- Adapted from `davidondrej/skills`; verify local paths, tools, credentials, and agent features before acting.72- For commands, remote access, scheduling, browser automation, or file-changing workflows, get explicit user approval and confirm the target environment first.