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.2.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.2-py3-none-any.whl (36.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hermes_dreaming-0.3.2.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.2.tar.gz
Algorithm Hash digest
SHA256 3b76058dfffa8a732a94d16eea1a7327d5abdf1e4253964d122e6403ecc4dcf9
MD5 ac16cd21da778e56d82239d69c43892d
BLAKE2b-256 ce6b96618c85763e9eaed96d8ca0dd2de78ea03b9ce5bc170e6b35093e035e9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for hermes_dreaming-0.3.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: hermes_dreaming-0.3.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 67b3127a68f769e47554da1f76ebe4f37bae12617d11cdd25c38f0626bd312c5
MD5 4470c72959de5ee3b20a5e0925f29492
BLAKE2b-256 b8b29feb497ab466691b5b51bca8a3593b789f40db9d4acf3b48c5092ddb4133

See more details on using hashes here.

Provenance

The following attestation bundles were made for hermes_dreaming-0.3.2-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