Hermes Agent Local and Cloud



Running Hermes Agent locally works well, however you need to disable most of the skills, tools and MCP's to ensure you do not waste memory.

Further you do not want the Ollama server running with a loaded model when you are not using it.

Best way I have found to balance this effectively is using the Hermes Profiles with Hooks.

I'm going to assume you already have Ollama and Hermes Agent installed and basically working.

sudo systemctl stop ollama.service
sudo systemctl disable ollama.service
You need to disable the Ollama service to not load at boot time.
hermes profile create local-lite
hermes profile use local-lite

nano ~/.hermes/profiles/local-lite/config.yaml
Update the local profile config.yaml file.
model: "ollama/qwen3:14b"
hooks:
  on_session_start:
    - command: "python3 /home/username/.hermes/profiles/local-lite/scripts/start_ollama.py"
hooks_auto_accept: true
nano ~/.hermes/profiles/local-lite/scripts/start_ollama.py
import subprocess
import time
import urllib.request

def main():
    try:
        urllib.request.urlopen("http://localhost:11434/api/tags", timeout=1)
        print(" [Hook] Ollama is already active.")
        return
    except Exception:
        pass

    print(" [Hook] Starting Ollama background server...")
    subprocess.Popen(
        ["ollama", "serve", "qwen3:14b"],
        stdout=subprocess.DEVNULL,
        stderr=subprocess.DEVNULL,
        start_new_session=True
    )

    for _ in range(10):
        try:
            urllib.request.urlopen("http://localhost:11434/api/tags", timeout=1)
            print(" [Hook] Ollama ready!")
            return
        except Exception:
            time.sleep(0.5)

if __name__ == "__main__":
    main()

Popular Posts