Hermes Agent trên máy anh
Bản đồ hệ thống & hướng dẫn nâng cao

🕐 Verify 12/07/2026 📦 v0.18.0 · 2026.7.1 🔬 6 agent đọc source thật — không dựa docs online
v0.18.0CLI + app desktop
đang chạy
gpt-5.5provider openai-codex
(ChatGPT OAuth)
manualapprovals mặc định
(an toàn nhất)
3điểm SAI trong
hướng dẫn trước
2skill Hermes
đã TỰ tạo
0cron job ·
profile · messaging

1 · Sơ đồ kiến trúc — Hermes đang chạy thế nào trên máy này

Hermes.app (desktop) Electron · ĐANG CHẠY CLI — hermes chat ~/.local/bin/hermes TUI — hermes --tui Shift+Tab = YOLO phiên hermes serve (backend app tự quản) 127.0.0.1 : cổng ngẫu nhiên · loopback → không cần auth AGENT CORE (dùng chung) Model: gpt-5.5 · openai-codex ChatGPT OAuth · pool: anthropic/gemini/copilot Session app ↔ CLI ↔ TUI resume lẫn nhau Messaging gateway tiến trình RIÊNG (launchd) STOPPED · chưa cấu hình platform delegate_task (subagents) tối đa 3 song song · chạy nền hiện KẾ THỪA gpt-5.5 + budget ChatGPT của chat chính ~/.hermes — profile DEFAULT (mọi client đọc/ghi cùng chỗ này) config.yaml chưa có approvals: → manual mặc định .env (12 biến) Gemini key: PRESENT OpenRouter: MISSING skills/ (19) 72 bundled + 2 tự tạo (auto) memories/ RỖNG — chưa tích luỹ gì cron/ (0 job) ticker sống /blueprint để tạo SOUL.md còn nguyên bản stock tự spawn
Điểm mấu chốt: app desktop, CLI, TUI đều là "vỏ" của CÙNG một agent core + cùng thư mục ~/.hermes — chỉnh Settings trong app = sửa đúng file config.yaml/.env đó. Messaging gateway là tiến trình riêng, không dính backend app.

2 · Ba điểm SAI trong hướng dẫn trước (đã xác minh bằng source)

❌ 1. approvals.deny — blocklist tự thêm KHÔNG tồn tại

Grep toàn bộ repo v0.18.0: không có key này. Hàng rào vô điều kiện duy nhất là HARDLINE_PATTERNS hardcode trong source (12 mẫu thảm hoạ). Thứ config được là command_allowlist — chiều NGƯỢC LẠI (cho phép), và bị YOLO bypass.

Nguồn: tools/approval.py:284-401 · hermes_cli/config.py:2396-2416

❌ 2. hermes proxy KHÔNG chạy được trên login ChatGPT / Claude Pro

Adapter chỉ có đúng 2: nous (Nous Portal — default) và xai. Máy anh chưa login cả hai → lệnh này hiện vô dụng, sẽ báo "Not logged into Nous Portal" rồi thoát. Muốn endpoint OpenAI-compatible trên login ChatGPT hiện tại → dùng Hermes API server (serve AGENT kèm tools+memory sau API_SERVER_KEY, không phải passthrough model thô).

Nguồn: hermes_cli/proxy/adapters/__init__.py:14-19 · proxy/cli.py:47-52

❌ 3. vercel_sandbox không phải terminal backend

Giá trị hợp lệ của terminal.backend đúng 6: local · docker · singularity · modal · daytona · ssh. Giá trị khác → ValueError.

Nguồn: tools/terminal_tool.py:1516-1520

⚠️ Các điểm "đúng ý nhưng lệch cơ chế"

3 · Luồng phê duyệt lệnh — máy anh đang đi đường nào

Lệnh terminal ① HARDLINE floor — 12 mẫu thảm hoạ? rm -rf / · mkfs · dd vào ổ · fork bomb · shutdown… CHẶN TUYỆT ĐỐI --yolo / mode:off cũng KHÔNG vượt ② YOLO đang bật / mode: off? máy anh: KHÔNG (chưa từng bật) CHẠY LUÔN ⚠️ kể cả git reset --hard, curl|sh… ③ Khớp mẫu NGUY HIỂM / tirith? rm -rf, sudo, ghi vào config/.env, curl|sh… KHÔNG → chạy bình thường đa số lệnh đi đường này ④ approvals.mode của máy anh: MANUAL smart = LLM guard tự duyệt/chặn, phân vân mới hỏi HỎI ANH — CLI chờ 60s · app chờ 300s Im lặng = TỪ CHỐI (không phải đồng ý) 🪤 BẪY: chạy non-interactive (pipe/script) → TỰ DUYỆT chỉ kèm log — chỉ ① còn chặn KHỚP → CÓ → KHÔNG →
2 bẫy phải nhớ: Shift+click nút ⚡ trên app = ghi mode: off VĨNH VIỄN vào config.yaml (click thường mới là YOLO tạm per-session) · chạy pipe non-interactive thì manual mode không bảo vệ được.

4 · Snapshot đầy đủ máy anh (ground-truth 12/07/2026)

Thành phầnTrạng thái thật
CLI + app desktopv0.18.0 (2026.7.1) · app chạy từ ~/.hermes/hermes-agent/apps/desktop/release/mac-arm64/Hermes.app (không nằm /Applications)
Model chínhgpt-5.5 · provider openai-codex (ChatGPT OAuth) · pool sẵn: anthropic, gemini, copilot
API key .envGemini: PRESENT · OpenRouter/OpenAI/Anthropic API-key: MISSING · Nous Portal & xAI: chưa login
ApprovalsKhông có section → mặc định manual / 60s / cron deny (mức an toàn nhất)
Terminal backendlocal (sudo disabled) · Docker CLI v29.2.0 + Docker.app CÓ cài nhưng daemon đang tắt
CheckpointsCHƯA BẬT — chưa từng snapshot lần nào; /rollback sẽ trả lời "not enabled"
Skills19 thư mục = 17 stock (72 skill bundled) + 2 skill agent TỰ TẠO không cần duyệt (write_approval đang off)
CuratorEnabled mặc định nhưng chưa từng chạy (trigger: idle ≥2h + >7 ngày/lần); merge/consolidate mặc định OFF
Memory Hermes~/.hermes/memories/ RỖNG — chưa tích luỹ gì
Cron / Messaging / Profiles0 job · 0 platform (gateway stopped) · 0 profile
DelegationChưa cấu hình model riêng → subagent xài chung gpt-5.5 + budget ChatGPT với chat chính
Rác phát hiện2 process tail -f PM-CHANNEL (truong-hoc-online) sống từ 3/7 · sandboxes/singularity/ rỗng · dòng delegation.max_iterations: 50 = no-op

5 · Delegation — cách rẻ hoá subagent

Chat chính gpt-5.5 · reasoning medium budget ChatGPT Codex Subagent 1 HIỆN TẠI: kế thừa y hệt → Subagent 2 cùng model + CÙNG budget Subagent 3 (max 3 song song) mất khi /new hoặc thoát app SAU KHI CẤU HÌNH A: reasoning_effort: low (không cần key mới) B: openrouter + model rẻ (cần OPENROUTER_API_KEY) delegate_task
# ~/.hermes/config.yaml — Lựa chọn A: rẻ + nhanh ngay, không cần key mới
delegation:
  max_iterations: 50
  reasoning_effort: low        # chat chính vẫn medium

# Lựa chọn B: đổi hẳn model rẻ (thêm OPENROUTER_API_KEY vào ~/.hermes/.env trước)
delegation:
  model: "google/gemini-3-flash-preview"
  provider: "openrouter"

⚠️ Chỉ set model mà không set provider → vẫn đi backend Codex, model lạ có thể bị từ chối. Sửa xong phải mở session mới.

6 · Gói config "bật ngay" (đề xuất — anh quyết)

# thêm vào ~/.hermes/config.yaml — 3 khối độc lập, bật khối nào cũng được
approvals:
  mode: smart              # LLM guard tự duyệt lệnh an toàn — giảm mỏi tay duyệt, fail-safe về hỏi anh
  timeout: 60
  cron_mode: deny

checkpoints:
  enabled: true            # lưới an toàn trước rm/sed -i/git reset — trần 500MB, .env không bao giờ bị snapshot

skills:
  creation_nudge_interval: 15
  write_approval: true     # skill tự học phải qua anh duyệt — giống propose-not-autosave bên Claude Code

Sửa xong: session Hermes đang mở phải restart mới ăn config. Dọn nhà chờ anh xác nhận: kill 86360 91968 (2 watcher tail mồ côi từ 3/7).