AI / Automation May 28, 2026

Hermes Agent + Ollama on Mac mini M4 2026: Local Install & Custom Endpoint Guide

VpsGona Engineering Team May 28, 2026 ~14 min read
Hermes Agent Ollama setup on Mac mini M4 2026

Hermes Agent from Nous Research adds layered memory and self-improving skills on top of tool-using agents. This guide shows how to run Hermes Agent with Ollama on a Mac mini M4 so inference stays on localhost:11434—no cloud API keys. Official sources: NousResearch/hermes-agent and Ollama. Related: OpenClaw + Ollama on Mac mini M4, Mac mini M4 LLM memory tiers, Migrating from Hermes to OpenClaw, SSH remote access.

Disclosure: VpsGona offers optional Mac mini M4 cloud rental. Hermes Agent is an independent open-source project by Nous Research; steps follow the official GitHub repository.

Why Hermes Agent + Ollama on Mac mini M4

Cloud agents reset context every session. Hermes keeps MEMORY.md, USER.md, and searchable session history so follow-up tasks reuse what you already taught it. Ollama exposes an OpenAI-compatible API on Apple Silicon; M4 Metal acceleration makes 7–14B models usable for interactive agent loops (often ~20–40 tokens/sec depending on model and context).

Quotable fact: Point Hermes at http://localhost:11434/v1 with a blank API key—Ollama’s default local install does not require authentication. That is the same endpoint pattern documented in Nous Research’s Ollama guide and community write-ups on pairing Hermes with local inference.

How Hermes talks to Ollama

  1. You launch hermes (CLI or a channel configured later).
  2. Config loads from ~/.hermes/config.yaml after hermes setup.
  3. Hermes sends chat completions to your custom base URL (Ollama).
  4. Ollama maps /v1/chat/completions to the pulled model tag.
  5. Tool calls (terminal, files, search) run on the Mac; memory files update under ~/.hermes/.
StoreRole
MEMORY.mdAgent notes (projects, environment)
USER.mdYour profile (timezone, style)
SQLite FTS5Searchable past sessions
SkillsReusable patterns from experience

Install reference: Ollama download.

Prerequisites

  • Mac mini M4 (or Apple Silicon Mac) with macOS 15+
  • 16 GB unified memory minimum for 7–14B models; 32 GB for 20B+ pulls (memory guide)
  • ~15–25 GB free disk per large model
  • Optional: SSH to a remote Mac—see SSH guide if you do not have local hardware

Step-by-step install (8 steps)

  1. Install Ollama:
    curl -fsSL https://ollama.com/install.sh | sh
    curl -s http://localhost:11434/api/tags
  2. Pull a model:
    ollama pull qwen2.5:14b
    # or: ollama pull llama3.2:8b
    ollama list
  3. Install Hermes:
    curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
    source ~/.zshrc
    hermes --version
  4. Run setup: hermes setupCustom OpenAI-compatible endpoint
  5. Endpoint values: Base URL http://localhost:11434/v1, API key empty, model = your Ollama tag (e.g. qwen2.5:14b)
  6. Migration prompt: answer n for fresh install or Y to import ~/.openclaw (OpenClaw migrate guide covers the OpenClaw-side story)
  7. Fix default Claude model: exit Hermes, run hermes model, select your local endpoint and model, restart hermes
  8. Smoke test: ask Hermes to confirm it is using the local Ollama tag; run ollama ps during a reply to verify load

Optional direct edit: ~/.hermes/config.yaml with base_url: http://localhost:11434/v1 and provider: custom.

Model picks for 16 GB vs 32 GB

Community demos often use 20B cloud-style models; on a 16 GB Mac mini M4, start smaller to avoid swap thrashing.

Ollama tagDisk16 GB RAMAgent fit
llama3.2:8b~5 GBLowFast chat, lighter tools
qwen2.5:14b~9 GBMediumStrong coding + tools
20B+ (e.g. gemma class)15–20 GB+High — use 32 GBBest quality if memory allows

Recommendation: 16 GB → qwen2.5:14b or llama3.2:8b. 32 GB → test larger pulls before enabling browser + vision together.

Troubleshooting

Connection refused on port 11434

Symptom: ECONNREFUSED 127.0.0.1:11434.
Fix: Run ollama serve, verify curl http://localhost:11434/api/tags, and ensure the base URL ends with /v1.

Status bar still shows Claude

Symptom: Replies feel cloud-hosted; tag shows claude-*.
Fix: hermes model → pick custom endpoint → same Ollama model name → restart hermes.

Hermes vs OpenClaw on the same Mac

Hermes emphasizes memory + learned skills for a personal companion workflow. OpenClaw emphasizes multi-agent orchestration and a large plugin ecosystem (OpenClaw + Ollama guide). They can coexist on different accounts or machines; you do not need to pick only one stack.

NeedHermes + OllamaOpenClaw + Ollama
Session memory searchBuilt-in FTS5 sessionsGateway memory plugins
Skill evolutionAgent-updated skillsHuman-maintained skills
Fleet / multi-agentLighter single-user focusStronger coordination

Frequently asked questions

Does Hermes require a separate npm install?

No—the official curl installer sets up Python via uv, Node for browser bridges, and the global hermes CLI. Use npm only when hacking on Hermes itself.

What Ollama URL should Hermes use?

http://localhost:11434/v1 with an empty API key. The /v1 suffix is required for OpenAI-compatible clients.

Why does the UI still show Claude?

Run hermes model after setup to bind the custom endpoint and Ollama tag, then restart hermes.

Which model for 16 GB Mac mini M4?

Start with qwen2.5:14b or llama3.2:8b. Avoid 20B+ pulls unless you have 32 GB unified memory.

How is this different from openclaw migrate?

openclaw migrate imports settings into OpenClaw. This guide runs Hermes Agent with Ollama as the primary stack.

Local agents on real macOS

Mac mini M4 fits Ollama + Hermes for private, tool-using workflows.