layered-soul/docs/CONNECT-HERMES-SOUL.md

62 lines
2.1 KiB
Markdown
Raw Normal View History

# Connecting private `hermes-soul` to Layered Soul
`hermes-soul` and `layered-soul` have different jobs.
| Repo | Visibility | Purpose |
| -------------- | ----------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `hermes-soul` | private | Hermes-native runtime backup from Debby Linux: sessions, sanitized config, scripts, cron, memories, skills. |
| `layered-soul` | public/template or curated instance | Harness-agnostic identity and reviewed context with no secrets or raw sessions. |
Do not mirror `hermes-soul` into `layered-soul`. Use a review/export workflow.
## Recommended workflow
1. Back up Hermes normally into the private `hermes-soul` repo.
2. Run the planner from this repo:
```sh
python3 scripts/layered_soul.py plan-private-source \
examples/private-sources/hermes-soul.example.json \
--source-root ~/hermes-soul
```
3. Review the candidate memory and skill files locally.
4. Write sanitized summaries into this repo:
```text
USER.md
memories/curated/hermes-memory-summary.md
skills/<selected-skill>/SKILL.md
```
5. Validate before committing:
```sh
python3 scripts/layered_soul.py validate .
```
## What may move across
- Reviewed user context from `memories/USER.md`.
- Reviewed memory summaries from `memories/MEMORY.md`.
- Selected `skills/**/SKILL.md` (with their `references/`) that are safe and useful across harnesses.
- Converted cron/task ideas after they are rewritten as explicit Ops manifests.
## What must stay private
- Raw `sessions/` chat logs.
- `config.yaml` and platform runtime config.
- `channel_directory.json`.
- Tokens, API keys, auth files, browser profiles, lock files, caches, bytecode.
## Example source config
See:
```text
examples/private-sources/hermes-soul.example.json
```
The config is safe to publish because it describes the boundary, not the private
content.