# memos-local-plugin — OpenClaw 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:
  # OpenClaw owns :18799. Hermes (if installed) runs its viewer on
  # :18800. Each agent serves its own panel from its own process —
  # there is no port sharing or read-only "peer" view.
  port: 18799

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

llm:
  provider: host          # host | local_only | openai_compatible | anthropic | gemini | bedrock
  apiKey: ""              # required except for provider=host | local_only
  model: ""               # blank = let the provider pick its default

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: ""             # e.g. http://10.0.0.12:18912  (required when enabled=true and role=client)
  teamToken: ""

telemetry:
  enabled: true           # anonymous usage events; opt-out any time

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