hermes-dreaming
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.
Release files for hermes-dreaming 0.3.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hermes_dreaming-0.3.2.tar.gz | 35.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hermes_dreaming-0.3.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 71.8 kB
Release files / hermes_dreaming-0.3.2.tar.gz
| Download URL | hermes_dreaming-0.3.2.tar.gz |
|---|---|
| Size | 35.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3b76058dfffa8a732a94d16eea1a7327d5abdf1e4253964d122e6403ecc4dcf9
|
|
BLAKE2b-256 checksum How to use checksums |
ce6b96618c85763e9eaed96d8ca0dd2de78ea03b9ce5bc170e6b35093e035e9c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 11, 2026.
Transparency logRelease files / hermes_dreaming-0.3.2-py3-none-any.whl
| Download URL | hermes_dreaming-0.3.2-py3-none-any.whl |
|---|---|
| Size | 36.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
67b3127a68f769e47554da1f76ebe4f37bae12617d11cdd25c38f0626bd312c5
|
|
BLAKE2b-256 checksum How to use checksums |
b8b29feb497ab466691b5b51bca8a3593b789f40db9d4acf3b48c5092ddb4133
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 11, 2026.
Transparency log