DB_SCHEME.md 1.6 KB

Hermes MCP DB Scheme

Hermes uses a compact SQLite schema with one job per table.

1. concerns

What Hermes currently cares about.

  • one row per account/market scope
  • source tracks where the concern came from (trader_inventory, hermes_config, manual)
  • status marks whether Hermes should actively watch it

2. cycles

One Hermes evaluation pass.

  • records the periodic polling loop
  • ties observations, derived state, narratives, decisions, and actions together

3. observations

Raw adapter outputs.

  • stored once per cycle, concern, and source
  • payload remains unparsed JSON
  • this is the fact layer, not the interpretation layer

4. states

Derived structured state.

  • compact signals like regime, liquidity, sentiment pressure, event risk, execution quality
  • one row per cycle and concern
  • intended for query and dashboard use

5. narratives

Hermes’ synthesis.

  • one row per cycle and concern
  • concise human-readable summary plus key drivers, risk flags, and uncertainties

6. decisions

Control intent.

  • what Hermes decided or recommends
  • can be observe, recommend, or act
  • stores target strategy and policy when relevant

7. actions

Outbound effect log.

  • what was sent to Trader
  • request/response are stored as JSON
  • keeps decision and execution separate

8. coverage_gaps

Gap discovery and recommendations.

  • missing strategy, market, or account coverage
  • keeps Hermes aware of blind spots without conflating them with decisions

Core flow

concern -> cycle -> observations -> state -> narrative -> decision -> action

Coverage gaps are attached to the same cycle and can be linked to a concern when the gap is specific.