Hermes Agent on NVIDIA Jetson Orin Nano — Practical setup guide, config, and health-check script for running a self-hosted AI agent on edge hardware A developer successfully deployed Hermes Agent on an NVIDIA Jetson Orin Nano (8 GB) for self-hosted AI agent runtime, achieving a silent, low-power automation box running 24/7. The setup uses Ubuntu 22.04 aarch64 with JetPack 6.2, system Chromium for browser automation, and power mode switching via nvpmodel to balance performance and thermals. Key observations include 5 GB usable RAM for agent and browser, NVMe-backed swap for memory pressure, and remote API for LLM inference due to limited VRAM. Practical setup tips, performance observations, and gotchas from running a self-hosted AI agent runtime on a Jetson Orin Nano 8 GB in production-like conditions. The Jetson Orin Nano is an odd duck: ARM64, 7–8 GB RAM shared between CPU/GPU, no x86 emulation shortcuts, and a Linux kernel that's just different enough to trip you up. But it's also: Cheap to run ~15 W under load Silent fan-cooled, no coil whine Persistent NVMe boot, can run 24/7 Surprisingly capable for an edge device running a full agent stack If you want a dedicated automation box that sits on a shelf and runs Hermes Agent around the clock, this is a solid choice. | Item | Value | |---|---| SoC | NVIDIA Orin Nano 8 GB unified memory | CPU | 6× Cortex-A78AE @ up to 1.5 GHz | RAM | 7.4 GB shared GPU/CPU via unified memory | Storage | NVMe SSD boot + agent data | OS | Ubuntu 22.04 aarch64 JetPack 6.2 / R36 | Kernel | 5.15.185-tegra | Agent | Hermes Agent v2026.5.16 | Power mode | MAXN SUPER default | Hermes Agent needs Chromium for browser automation and a few Python extras. The JetPack repos have everything: Browser runtime for Playwright-based tools sudo apt install chromium-browser System deps for Playwright sudo apt install libgstreamer1.0-0 libgstreamer-plugins-base1.0-0 \ gstreamer1.0-plugins-good gstreamer1.0-plugins-bad \ libva-drm2 Hermes Agent's Python deps want numpy, so get the accelerated build sudo apt install python3-numpy Gotcha: Don't install python3-pip 's Chromium via playwright install — it downloads x86 binaries that won't run. Use the system chromium-browser and point Playwright at it with PLAYWRIGHT BROWSERS PATH=/usr/bin chromium-browser . The Orin Nano has several power modes exposed via nvpmodel . The default is MAXN SUPER all 6 cores, max clocks , but you can trade performance for thermals: List available modes sudo nvpmodel -q Modes typical on Orin Nano 8 GB: MAXN SUPER — 6 cores, full clocks, ~15 W MAXN — 6 cores, moderate clocks, ~10 W 8W 6CORE — 6 cores, capped at 8 W 8W 4CORE — 4 cores, capped at 8 W 5W 2CORE — 2 cores, capped at 5 W good for overnight idle sudo nvpmodel -m MODE ID For an agent running batch jobs overnight, 8W 4CORE saves power without seriously hurting response time. Switch to MAXN SUPER during interactive sessions. Pro tip: Add sudo nvpmodel -m 1 to your cron agent's startup script so the box drops to low power between scheduled runs. With 7.4 GB total and ~2 GB eaten by the OS, you have about 5 GB for the agent + browser + tools. This fits comfortably for: - Hermes Agent runtime ~200 MB RSS - Chromium with 2–3 tabs ~800 MB RSS - Python tool processes ~100–300 MB each - Local inference? Not really — LLMs need more VRAM. Hermes Agent uses a remote API. Enable swap if you haven't: sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab The NVMe-backed swap makes it usable not SD-card slow , but avoid depending on it for hot paths. Hermes Agent has a built-in cron system. Here's the pattern we use for scheduled technical content: Example: ~/.hermes/config.yaml snippet cron: jobs: - expression: "0 6 " task: "morning briefing.md" delivery: platform: telegram timeout minutes: 30 - expression: "30 /4 " task: "web monitor.md" delivery: platform: telegram timeout minutes: 15 The agent's cron scheduler runs as a background daemon hermes cron start . Check job status with: hermes cron list The Orin Nano's GPU isn't great for WebGL/Canvas-heavy pages — screenshots work fine, but don't expect smooth 60 FPS page renders. That's fine for: - ✅ Taking page screenshots for QA/briefing - ✅ Filling forms and clicking buttons - ✅ Extracting text content and DOM state - ✅ Login flows with cookies stored locally - ❌ Video-heavy sites at full resolution - ❌ CAPTCHA-reliant flows you'll get flagged anyway on headless Use --disable-gpu and --disable-software-rasterizer flags in Playwright to avoid GPU-related crashes: browser = await playwright.chromium.launch headless=True, args= "--disable-gpu", "--disable-software-rasterizer", "--no-sandbox", | Path | Use | Recommended | |---|---|---| / | OS + snaps | 32 GB | /home | Agent data, models, repos | ≥ 128 GB | ~/.hermes/ | Hermes Agent home config, logs, sessions | Auto | ~/.hermes/logs/ | Agent logs auto-rotate | Monitor size | ~/.hermes/sandboxes/ | Ephemeral sandbox directories | On tmpfs if RAM permits | Move the sandbox to tmpfs if you have spare RAM: /etc/fstab entry tmpfs /home/clawbox/.hermes/sandboxes tmpfs defaults,noatime,nosuid,size=512M 0 0 This speeds up ephemeral file ops and reduces NVMe wear. The built-in Realtek WiFi RTL8822CE works but is mediocre at range. For a 24/7 agent: Use Ethernet if at all possible avoid driver quirks and reconnects WiFi 5 GHz if Ethernet isn't available the 2.4 GHz band has more interference - Add a wlan0 reconnect cron if using WiFi: /etc/cron.d/wifi-watchdog root ping -c1 -W2 8.8.8.8 /dev/null || iwconfig wlan0 power off Hermes Agent runs fine on Orin Nano — the constraints are memory and thermal, not CPU. The 6 Cortex-A78AE cores handle model API calls, tool execution, and file operations with room to spare. The GPU is a non-factor for this use case unless you're doing on-device inference which you probably shouldn't on 8 GB anyway . The biggest bottleneck is the agent's API round-trip , not the hardware. Running a local LLM on this box is impractical — the unified memory is too small. But as a remote-API agent runner, it's excellent. Daily operation is dead simple: the box sits on a shelf, boots Ubuntu, launches Hermes Agent's cron daemon, and executes scheduled tasks. We SSH in maybe once a week for maintenance. ClawBox https://clawbox.tech/ — A turnkey self-hosted AI agent appliance based on this exact Jetson Orin Nano + Hermes Agent stack, in a compact enclosure ready to ship to your desk. Hermes Agent https://hermes-agent.nousresearch.com/ — The open-source AI agent runtime with MCP, browser tools, kanban, cron, and gateway integrations.