Skip to main content

Background memory consolidation plugin for Hermes

Project description

hermes-dreaming

Security scan OpenSSF Scorecard Socket Badge

A background memory consolidation plugin for Hermes, built around Hermes' small, always-prompt-visible memory model.

What it does

Hermes durable memory (MEMORY.md ≈2,200 chars, USER.md ≈1,375 chars) is scarce and injected into every session prompt. hermes-dreaming runs a periodic three-phase consolidation cycle:

  • Light — scans recent sessions for candidate facts/preferences
  • Deep — identifies patterns, contradictions, supersessions
  • REM — scores candidates and applies at most a few high-confidence memory operations (add, replace, remove)

A successful run may produce zero durable writes. The goal is highest future usefulness per character, not more memories.

Note: memory mutations take effect on the next session start (Hermes loads memory as a frozen snapshot at session init).

Install

pip install hermes-dreaming

Then enable in ~/.hermes/config.yaml:

plugins:
  enabled:
    - hermes-dreaming

Commands

/dreaming run       — full cycle (schedules + manual)
/dreaming review    — dry-run; proposes ops without mutating memory
/dreaming status    — last run, candidate counts, memory usage
/dreaming compact   — merge duplicates + remove obsolete; no new adds

CLI equivalents:

hermes dreaming run
hermes dreaming review
hermes dreaming status
hermes dreaming compact
hermes dreaming install-cron   # register nightly 03:00 cron job

State files

All runtime state lives in ~/.hermes/dreaming/:

~/.hermes/dreaming/
├── DREAMS.md           # human-readable audit diary
├── state.json          # last run metadata
├── candidates.jsonl    # staged Light-phase candidates
├── decisions.jsonl     # all Deep/REM decisions (including rejections)
├── promotions.jsonl    # applied memory operations (includes sidecar metadata)
├── runs/               # per-run JSON records
└── backups/            # timestamped MEMORY.md / USER.md snapshots

Configuration

dreaming:
  enabled: true
  schedule: "0 3 * * *"
  max_changes_per_run: 3

Design

See docs/implementation-brief.md for the full design brief.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hermes_dreaming-0.3.1.tar.gz (35.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hermes_dreaming-0.3.1-py3-none-any.whl (36.8 kB view details)

Uploaded Python 3

File details

Details for the file hermes_dreaming-0.3.1.tar.gz.

File metadata

  • Download URL: hermes_dreaming-0.3.1.tar.gz
  • Upload date:
  • Size: 35.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for hermes_dreaming-0.3.1.tar.gz
Algorithm Hash digest
SHA256 c04ecfc425634b8ea399fd0388867884e061bdd4a8f05c3306eac10da85eedbf
MD5 e24c648f59fd1a875aa594056d7935d7
BLAKE2b-256 0b51a230e1f7ee7975f97b6e604040e6f52edd6d0cac6731ff98c6229d79c665

See more details on using hashes here.

Provenance

The following attestation bundles were made for hermes_dreaming-0.3.1.tar.gz:

Publisher: publish.yml on alejandroiglesias/hermes-dreaming

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hermes_dreaming-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: hermes_dreaming-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 36.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for hermes_dreaming-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0f491e039415ddaf94a5342c179df8b36903baf90740efde13a735157297a357
MD5 80230fa055daf99fd9830bb1cb2b10ca
BLAKE2b-256 63056a886079b3d55aa3b1d94ea11b4a3a3c210eef0b01ec8046d8a48294ec14

See more details on using hashes here.

Provenance

The following attestation bundles were made for hermes_dreaming-0.3.1-py3-none-any.whl:

Publisher: publish.yml on alejandroiglesias/hermes-dreaming

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page