Hermes Agent selbst mit ins Compose: alles auf einer Maschine
Stefan-Entscheidung: Hermes Agent (Nous Research) laeuft auf derselben
Maschine wie der Claude-Max-Proxy, nicht mehr remote. Ergaenzt:
- hermes-agent + hermes-agent-dashboard Services (offizielle Definition,
gebaut aus separat geklontem hermes-agent-src/), network_mode: host
- hermes-agent-config/config.yaml.example: seedet Hermes' model:-Block
automatisch auf provider: custom -> unser hermes-gateway, per ${VAR}-
Expansion aus .env (kein manuelles Config-Editieren mehr)
- hermes-gateway bindet jetzt nur noch auf 127.0.0.1 statt 0.0.0.0, da
Hermes lokal mitlaeuft und kein Remote-Zugriff mehr noetig ist
- .gitignore fuer hermes-agent-src/, hermes-data/, .env (Secrets/Sourcecode
gehoeren nicht ins Repo)
- README auf Single-Machine-Architektur aktualisiert, inkl. Setup-Schritten
und Einordnung des optionalen API_SERVER (fuer spaeteren mobilen Client,
andere Richtung als unser Proxy)
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
# Hermes Agent Model-Config — zeigt auf UNSEREN Claude-Max-Proxy statt auf
|
||||
# OpenRouter/Nous Portal/direkte Provider-Keys.
|
||||
#
|
||||
# WICHTIG: das ist NICHT die volle ~/.hermes/config.yaml (die hat noch
|
||||
# hunderte weitere optionale Blöcke — terminal, toolsets, memory, etc., siehe
|
||||
# hermes-agent-src/cli-config.yaml.example fürs Referenz-Full-File). Diese
|
||||
# Datei hier enthält bewusst NUR den model:-Block. Hermes seedet beim ersten
|
||||
# Container-Start automatisch alle fehlenden Felder aus seinen eingebauten
|
||||
# Defaults (Stage2-Hook: seed_one() kopiert cli-config.yaml.example NUR wenn
|
||||
# config.yaml noch nicht existiert — diese Datei hier gewinnt also, wird
|
||||
# NICHT überschrieben, solange sie schon liegt).
|
||||
#
|
||||
# ${HERMES_GATEWAY_PORT} / ${HERMES_GATEWAY_TOKEN} werden von Hermes selbst
|
||||
# beim Config-Laden aus den Container-Env-Vars expandiert (nicht von Docker
|
||||
# Compose) — die kommen im hermes-agent-Service aus .env durch. Deshalb hier
|
||||
# NICHT hardcoden, auch nicht "zum Testen".
|
||||
model:
|
||||
# sonnet/opus/haiku werden vom Proxy-Adapter (proxy-patches/openai-to-cli.js,
|
||||
# MODEL_MAP) auf die claude --model Flags gemappt. Unbekannte Namen fallen
|
||||
# dort automatisch auf "opus" zurück.
|
||||
default: "sonnet"
|
||||
|
||||
# "custom" = jeder OpenAI-kompatible Endpoint, der nicht einer der
|
||||
# named Provider (openrouter/nous/anthropic/...) ist — genau unser Fall.
|
||||
provider: "custom"
|
||||
|
||||
# localhost, weil Hermes Agent laut Stefan auf DERSELBEN Maschine läuft wie
|
||||
# unser hermes-gateway (network_mode: host im hermes-agent-Service).
|
||||
base_url: "http://localhost:${HERMES_GATEWAY_PORT}/v1"
|
||||
|
||||
# Gateway prüft das als "Authorization: Bearer <api_key>" — der OpenAI SDK
|
||||
# (den Hermes intern nutzt) setzt den Header automatisch aus diesem Feld.
|
||||
api_key: "${HERMES_GATEWAY_TOKEN}"
|
||||
Reference in New Issue
Block a user