From 4ea1708cdd8295ed34353ff5a9f1e07a01e72b3a Mon Sep 17 00:00:00 2001 From: domfelipe Date: Tue, 4 Aug 2026 20:29:31 -0300 Subject: [PATCH] Document VPS SSH entry before DomHubs one-liner (skill v1.3.0) Onboarding runs on the Linux VPS: Phase 0 + install help/README spell out ssh root@IP / ssh domhubs-vps, then curl setup.domhubs.com.br/hermes. --- README.md | 29 ++++++- install.sh | 29 ++++++- skill/hermes-client-onboarding/SKILL.md | 83 ++++++++++++++++--- .../references/troubleshooting.md | 13 +++ 4 files changed, 138 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 77ad02f..7954c39 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,24 @@ One-liner + skill conversacional para deixar o **Hermes Agent** pronto no client - Personalidade em `SOUL.md` - Setup guiado por LLM (Codex ou Hermes) -## One-liner (produção) — comando único +## One-liner (produção) — entrar na VPS + instalar + +O bootstrap roda **dentro da VPS Linux**, não no Mac do operador. + +### 1) Entrar na VPS + +```bash +ssh root@IP_DA_VPS +``` + +DomHubs ops (alias no Mac, após chave `~/.ssh/domhubs_vps`): + +```bash +ssh domhubs-vps +# → root@169.58.116.28 +``` + +### 2) One-liner (já dentro da VPS) ```bash curl -fsSL https://setup.domhubs.com.br/hermes | bash @@ -15,7 +32,7 @@ curl -fsSL https://setup.domhubs.com.br/hermes | bash Instala/atualiza Hermes + skill + launcher e **abre o onboarding** (condutor Hermes por padrão). -Variantes: +Variantes (ainda na VPS): ```bash # só instalar, sem abrir agente @@ -25,6 +42,14 @@ curl -fsSL https://setup.domhubs.com.br/hermes | bash -s -- --no-launch curl -fsSL https://setup.domhubs.com.br/hermes | bash -s -- --ask-conductor ``` +### 3) Voltar depois + +```bash +ssh root@IP_DA_VPS # ou: ssh domhubs-vps +hermes gateway status +hermes-client-onboarding # se precisar retomar o onboarding +``` + Espelho GitHub (fallback): ```bash diff --git a/install.sh b/install.sh index 52decf2..872c276 100755 --- a/install.sh +++ b/install.sh @@ -1,7 +1,16 @@ #!/usr/bin/env bash # DomHubs — Hermes Client Onboarding bootstrap -# One-liner: curl -fsSL https://setup.domhubs.com.br/hermes | bash -# Local: ./install.sh [--conductor codex|hermes|skip] [--no-launch] +# +# Run ON the client VPS (after SSH). Not on the operator laptop alone. +# +# Enter VPS: +# ssh root@IP_DA_VPS +# # DomHubs ops alias: ssh domhubs-vps (169.58.116.28, key ~/.ssh/domhubs_vps) +# +# Then one-liner (inside the VPS): +# curl -fsSL https://setup.domhubs.com.br/hermes | bash +# +# Local checkout: ./install.sh [--conductor codex|hermes|skip] [--no-launch] set -euo pipefail SKILL_NAME="hermes-client-onboarding" @@ -21,6 +30,13 @@ usage() { cat <<'EOF' Usage: install.sh [options] + Run this ON the Linux VPS after SSH: + ssh root@IP_DA_VPS + curl -fsSL https://setup.domhubs.com.br/hermes | bash + + DomHubs ops (Mac alias): + ssh domhubs-vps + --conductor codex|hermes|skip Who runs onboarding (default: hermes; use skip for install-only) --no-launch Install only; do not start the conductor --base URL Asset base for skill files (or HERMES_ONBOARD_BASE) @@ -278,11 +294,18 @@ launch_conductor() { # --------------------------------------------------------------------------- main() { log "DomHubs Hermes Client Onboarding" + log "Target: this machine (run via SSH on the client VPS)" + if [[ "$(uname -s 2>/dev/null || true)" == "Darwin" ]]; then + warn "You appear to be on macOS. Production onboarding expects Ubuntu/Debian VPS:" + warn " ssh root@IP_DA_VPS" + warn " curl -fsSL https://setup.domhubs.com.br/hermes | bash" + fi ensure_hermes install_skill if [[ "$NO_LAUNCH" -eq 1 ]]; then - log "Done (--no-launch). Start with (agent speaks first):" + log "Done (--no-launch). Re-enter VPS later with: ssh root@IP_DA_VPS (or ssh domhubs-vps)" + log "Start with (agent speaks first):" echo " hermes-client-onboarding" echo " # ou: hermes chat --tui -s ${SKILL_NAME} -q \"…\"" exit 0 diff --git a/skill/hermes-client-onboarding/SKILL.md b/skill/hermes-client-onboarding/SKILL.md index e6b93d5..c376c86 100644 --- a/skill/hermes-client-onboarding/SKILL.md +++ b/skill/hermes-client-onboarding/SKILL.md @@ -1,13 +1,13 @@ --- name: hermes-client-onboarding description: Use when setting up Hermes for a client, install Hermes + Telegram + DeepSeek, run a demo setup, or launch client onboarding. Conducts guided conversational onboarding on a clean Linux VM (deepseek-v4-flash, Telegram gateway, systemd, SOUL.md). -version: 1.2.0 +version: 1.3.0 author: DomHubs license: MIT platforms: [linux, macos] metadata: hermes: - tags: [onboarding, client, telegram, deepseek, gateway, demo] + tags: [onboarding, client, telegram, deepseek, gateway, demo, vps] related_skills: [] --- @@ -15,7 +15,7 @@ metadata: ## Overview -You are conducting a professional, step-by-step onboarding of Hermes Agent on a clean Ubuntu/Debian VM so a client can start using it immediately (primarily via Telegram). The goal is a working agent in minutes, with **native DeepSeek** (`DEEPSEEK_API_KEY`, provider `deepseek`) and model **`deepseek-v4-flash`** (V4 Flash 0731 family) as the default, Telegram as the primary channel, and the gateway running as a persistent service. +You are conducting a professional, step-by-step onboarding of Hermes Agent on a clean Ubuntu/Debian **VPS** so a client can start using it immediately (primarily via Telegram). The goal is a working agent in minutes, with **native DeepSeek** (`DEEPSEEK_API_KEY`, provider `deepseek`) and model **`deepseek-v4-flash`** (V4 Flash 0731 family) as the default, Telegram as the primary channel, and the gateway running as a persistent service. This skill is designed for live demos in front of the client and for commercial handoff. Be clear, structured, and efficient. Always confirm critical values before applying them. @@ -24,7 +24,7 @@ This skill is designed for live demos in front of the client and for commercial - User asks to set up Hermes for a client - Demo setup of Hermes + Telegram + DeepSeek - Launch of the DomHubs client onboarding flow -- Fresh VM that needs Hermes ready end-to-end +- Fresh VM/VPS that needs Hermes ready end-to-end Don't use for: day-to-day Hermes coding tasks after onboarding is done; multi-tenant fleet orchestration; non-Hermes agent installs. @@ -32,6 +32,7 @@ Don't use for: day-to-day Hermes coding tasks after onboarding is done; multi-te The onboarding is complete only when all of the following are true: +- Operator can **SSH into the VPS** and re-enter when needed - Hermes is installed and `hermes` command works - Model is set to `deepseek-v4-flash` with provider `deepseek` - `DEEPSEEK_API_KEY` is configured @@ -41,14 +42,63 @@ The onboarding is complete only when all of the following are true: - `hermes doctor` reports no critical errors - SOUL.md has been personalized (or the user explicitly skipped it) +## Phase 0 — Entrar na VPS (antes de tudo) + +Onboarding runs **inside** the Linux VPS, not on the operator’s laptop. First step is always SSH. + +**Generic (any client VM):** + +```bash +ssh root@IP_DA_VPS +# or: ssh USER@IP_DA_VPS +``` + +**DomHubs ops alias (operator Mac, after key is set):** + +```bash +ssh domhubs-vps +# Host: 169.58.116.28 User: root Key: ~/.ssh/domhubs_vps +``` + +**Then, already on the VPS, bootstrap + this skill (one-liner):** + +```bash +curl -fsSL https://setup.domhubs.com.br/hermes | bash +``` + +Variants on the VPS: + +```bash +# install only (no auto-launch) +curl -fsSL https://setup.domhubs.com.br/hermes | bash -s -- --no-launch + +# re-open onboarding later +hermes-client-onboarding +``` + +If the session drops mid-onboarding, reconnect with the same `ssh` and reattach tmux if used: + +```bash +ssh root@IP_DA_VPS # or: ssh domhubs-vps +tmux ls +tmux attach -t hermes-onboard- # if the launcher created one +# or restart onboarding: +hermes-client-onboarding +``` + +In Phase 6 handover, **always** leave the client/operator with the exact SSH command for *their* IP (do not invent IPs). + +**Done when:** shell is on the target Linux VPS (hostname/IP known) and you can run commands as the deploy user (usually `root`). + ## Pre-flight Checks (do these first) Run these checks silently or with minimal output before starting the dialogue: -1. Confirm you are on Linux (preferably Ubuntu 22.04/24.04 or Debian). On macOS, warn that gateway persistence differs (launchd) and demos still work. -2. Check if `hermes` is already in PATH. If yes, note the version with `hermes --version`. -3. Check available disk space and RAM (`df -h /` and `free -h`). Warn if RAM < 2 GB or free disk < 5 GB. -4. Verify internet connectivity (can reach `https://hermes-agent.nousresearch.com` and `https://api.deepseek.com`). +1. Confirm you are **already on the VPS via SSH** (Phase 0). If the user is still on a laptop UI only, give them the `ssh` command first — do not pretend Hermes can install on their phone. +2. Confirm you are on Linux (preferably Ubuntu 22.04/24.04 or Debian). On macOS, warn that gateway persistence differs (launchd) and production clients should be Ubuntu/Debian VMs. +3. Check if `hermes` is already in PATH. If yes, note the version with `hermes --version`. +4. Check available disk space and RAM (`df -h /` and `free -h`). Warn if RAM < 2 GB or free disk < 5 GB. +5. Verify internet connectivity (can reach `https://hermes-agent.nousresearch.com` and `https://api.deepseek.com`). If Hermes is missing, install it with: @@ -60,7 +110,7 @@ export PATH="$HOME/.local/bin:/usr/local/bin:$PATH" After install, confirm with `hermes --version` and `hermes doctor`. -**Done when:** OS/resources known, Hermes on PATH, version recorded. +**Done when:** SSH session on VPS confirmed, OS/resources known, Hermes on PATH, version recorded. ## Conversational Flow @@ -226,6 +276,10 @@ Final checklist to present to the user: Give the user the useful commands for later: ```bash +# Re-enter the VPS (fill real IP / use DomHubs alias) +ssh root@IP_DA_VPS +# ssh domhubs-vps + hermes gateway status hermes gateway logs hermes doctor @@ -233,7 +287,7 @@ hermes config get model.default hermes update ``` -**Done when:** checklist walked, test Telegram reply confirmed, useful commands delivered. +**Done when:** checklist walked, test Telegram reply confirmed, SSH re-entry command + useful commands delivered. ## Error Handling Guidelines @@ -267,7 +321,14 @@ hermes update ## Reference Commands (quick lookup) ```bash -# Install +# Enter VPS first +ssh root@IP_DA_VPS +# DomHubs ops: ssh domhubs-vps + +# DomHubs one-liner (on the VPS) +curl -fsSL https://setup.domhubs.com.br/hermes | bash + +# Install Hermes only curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash -s -- --skip-browser # Core config (or use the helper script) diff --git a/skill/hermes-client-onboarding/references/troubleshooting.md b/skill/hermes-client-onboarding/references/troubleshooting.md index bc48209..d7e83f7 100644 --- a/skill/hermes-client-onboarding/references/troubleshooting.md +++ b/skill/hermes-client-onboarding/references/troubleshooting.md @@ -1,5 +1,18 @@ # Troubleshooting — Hermes Client Onboarding +## Cannot reach the machine / “where do I run this?” + +Onboarding runs **on the VPS**. From the laptop: + +```bash +ssh root@IP_DA_VPS +# DomHubs ops: ssh domhubs-vps + +curl -fsSL https://setup.domhubs.com.br/hermes | bash +``` + +If SSH fails: check IP, user (`root` vs `ubuntu`), key (`-i ~/.ssh/…`), and provider firewall (port 22). + ## PATH / `hermes: command not found` ```bash