# memos-local-plugin — Hermes runtime configuration
#
# Keep this file short. Most plugin behavior is controlled by sensible
# defaults baked into the code; only the fields below are likely to change
# per user. If you need to tune an advanced option (algorithm thresholds,
# log rotation, retrieval budgets, etc.) see docs/CONFIG-ADVANCED.md in
# the source repo; any field there can be added here and will take effect.
#
# Sensitive fields (apiKey, teamToken) live HERE — there is no
# .env file. install.sh sets this file's mode to 600.

version: 1

viewer:
  # Hermes owns :18800. OpenClaw (if installed) runs its viewer on
  # :18799. Each agent serves its own panel from its own process —
  # there is no port sharing or read-only "peer" view.
  port: 18800

embedding:
  provider: local         # local | openai_compatible | gemini | cohere | voyage | mistral
  apiKey: ""
  maxInputTokens: 1024    # conservative per-input limit; 0 disables client-side chunking
  batchSize: 32           # maximum texts sent in one embedding-provider request

llm:
  # Hermes has no "host LLM", so pick a real provider.
  provider: openai_compatible
  apiKey: ""              # REQUIRED — fill in before running
  model: ""               # blank = provider default (e.g. gpt-4o-mini for openai_compatible)

storage:
  ftsTokenizer: trigram    # trigram | cjk; cjk improves short Chinese keyword recall

algorithm:
  lightweightMemory:
    enabled: true          # true = low-cost summaries only; false = memory self-evolution with tasks/experiences/world models/skills

hub:
  enabled: false
  address: ""
  teamToken: ""

telemetry:
  enabled: true

logging:
  level: info             # trace | debug | info | warn | error | fatal
  detailedView: false     # show advanced log filters / chain view in the viewer
